mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-28 21:33:52 +00:00
kselftest/arm64: Verify HWCAP2_SVE_B16B16
Validate that SVE B16B16 support is reported correctly and consistently to userspace. Signed-off-by: Mark Brown <broonie@kernel.org> Link: https://lore.kernel.org/r/20230915-arm64-zfr-b16b16-el0-v1-2-f9aba807bdb5@kernel.org Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
This commit is contained in:
parent
5d5b4e8c2d
commit
3accaef1f6
1 changed files with 13 additions and 0 deletions
|
@ -226,6 +226,12 @@ static void sveaes_sigill(void)
|
|||
asm volatile(".inst 0x4522e400" : : : "z0");
|
||||
}
|
||||
|
||||
static void sveb16b16_sigill(void)
|
||||
{
|
||||
/* BFADD ZA.H[W0, 0], {Z0.H-Z1.H} */
|
||||
asm volatile(".inst 0xC1E41C00" : : : );
|
||||
}
|
||||
|
||||
static void svepmull_sigill(void)
|
||||
{
|
||||
/* PMULLB Z0.Q, Z0.D, Z0.D */
|
||||
|
@ -493,6 +499,13 @@ static const struct hwcap_data {
|
|||
.cpuinfo = "sveaes",
|
||||
.sigill_fn = sveaes_sigill,
|
||||
},
|
||||
{
|
||||
.name = "SVE2 B16B16",
|
||||
.at_hwcap = AT_HWCAP2,
|
||||
.hwcap_bit = HWCAP2_SVE_B16B16,
|
||||
.cpuinfo = "sveb16b16",
|
||||
.sigill_fn = sveb16b16_sigill,
|
||||
},
|
||||
{
|
||||
.name = "SVE2 PMULL",
|
||||
.at_hwcap = AT_HWCAP2,
|
||||
|
|
Loading…
Reference in a new issue