@samitouri / QOSamiQemu / commits / 701eb2ac98

tests/functional/hexagon: enable more arch_tests cases

Add more tests from hexagon-arch-tests, enabled by QTimer device. These exercise cache maintenance ops, l2vic, thread start/stop, tlb/mmu operations, and user-mode transitions. Reviewed-by: Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com> Link: https://lore.kernel.org/qemu-devel/20260806042723.3785369-19-brian.cain@oss.qualcomm.com Signed-off-by: Brian Cain <brian.cain@oss.qualcomm.com>

Brian Cain committed Aug 5, 2026 at 21:27 UTC 701eb2ac98ba543a3a458a7fcaf8cc0f5e469ed4
1 file changed +32
tests/functional/hexagon/test_arch_tests.py
+32
@@ -58,6 +58,38 @@ class ArchTestsUart(QemuSystemTest):
58 """
59 self.run_uart_test("test_int_steering")
60
61 + def test_cache(self) -> None:
62 + """Tests cache operations: dckill/ickill, l2kill, dczeroa,
63 + dccleaninva, cache disable/enable, barriers, and dcinva/dccleana.
64 + """
65 + self.run_uart_test("test_cache")
66 +
67 + def test_l2vic(self) -> None:
68 + """Tests the L2VIC interrupt controller: enable readback,
69 + interrupt type readback, VID capture, and the fast interface.
70 + """
71 + self.run_uart_test("test_l2vic")
72 +
73 + def test_threads(self) -> None:
74 + """Tests hardware thread management: start/stop, MODECTL state,
75 + per-thread HTID, shared memory, wait/resume, STID priority, and
76 + SCHEDCFG/BESTWAIT readback.
77 + """
78 + self.run_uart_test("test_threads")
79 +
80 + def test_tlb_mmu(self) -> None:
81 + """Tests TLB/MMU operations: write/read/probe/invalidate,
82 + global entries, multiple entries, overwrite, ASID matching,
83 + and permission checks.
84 + """
85 + self.run_uart_test("test_tlb_mmu")
86 +
87 + def test_user_mode(self) -> None:
88 + """Tests user mode / privilege transitions: supervisor mode,
89 + SSR UM/IE/XE/CE/PE bits, and the trap0 user-mode exit handler.
90 + """
91 + self.run_uart_test("test_user_mode")
92 +
93
94 if __name__ == "__main__":
95 QemuSystemTest.main()