projects
/
linux-2.6-microblaze.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
5d5b4e8
)
kselftest/arm64: Verify HWCAP2_SVE_B16B16
author
Mark Brown
<broonie@kernel.org>
Fri, 15 Sep 2023 12:18:07 +0000
(13:18 +0100)
committer
Catalin Marinas
<catalin.marinas@arm.com>
Fri, 29 Sep 2023 14:56:17 +0000
(15:56 +0100)
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>
tools/testing/selftests/arm64/abi/hwcap.c
patch
|
blob
|
history
diff --git
a/tools/testing/selftests/arm64/abi/hwcap.c
b/tools/testing/selftests/arm64/abi/hwcap.c
index
e3d2628
..
d8a1442
100644
(file)
--- a/
tools/testing/selftests/arm64/abi/hwcap.c
+++ b/
tools/testing/selftests/arm64/abi/hwcap.c
@@
-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,