Commit edc96a2b authored by Andy Chiu's avatar Andy Chiu Committed by Palmer Dabbelt

selftest: run vector prctl test for ZVE32X

The minimal requirement for running Vector subextension on Linux is
ZVE32X. So change the test accordingly to run prctl as long as it find
it.
Signed-off-by: default avatarAndy Chiu <andy.chiu@sifive.com>
Link: https://lore.kernel.org/r/20240510-zve-detection-v5-8-0711bdd26c12@sifive.comSigned-off-by: default avatarPalmer Dabbelt <palmer@rivosinc.com>
parent ac295b67
...@@ -88,16 +88,16 @@ int main(void) ...@@ -88,16 +88,16 @@ int main(void)
return -2; return -2;
} }
if (!(pair.value & RISCV_HWPROBE_IMA_V)) { if (!(pair.value & RISCV_HWPROBE_EXT_ZVE32X)) {
rc = prctl(PR_RISCV_V_GET_CONTROL); rc = prctl(PR_RISCV_V_GET_CONTROL);
if (rc != -1 || errno != EINVAL) { if (rc != -1 || errno != EINVAL) {
ksft_test_result_fail("GET_CONTROL should fail on kernel/hw without V\n"); ksft_test_result_fail("GET_CONTROL should fail on kernel/hw without ZVE32X\n");
return -3; return -3;
} }
rc = prctl(PR_RISCV_V_SET_CONTROL, PR_RISCV_V_VSTATE_CTRL_ON); rc = prctl(PR_RISCV_V_SET_CONTROL, PR_RISCV_V_VSTATE_CTRL_ON);
if (rc != -1 || errno != EINVAL) { if (rc != -1 || errno != EINVAL) {
ksft_test_result_fail("GET_CONTROL should fail on kernel/hw without V\n"); ksft_test_result_fail("SET_CONTROL should fail on kernel/hw without ZVE32X\n");
return -4; return -4;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment