diff options
-rwxr-xr-x | debug/gdbserver.py | 6 | ||||
-rw-r--r-- | debug/testlib.py | 7 |
2 files changed, 13 insertions, 0 deletions
diff --git a/debug/gdbserver.py b/debug/gdbserver.py index 23515a3..3a6f932 100755 --- a/debug/gdbserver.py +++ b/debug/gdbserver.py @@ -1039,8 +1039,10 @@ class InterruptTest(GdbSingleHartTest): local = self.gdb.p("local") if interrupt_count > 1000 and \ local > 1000: + self.disable_timer() return + self.disable_timer() assertGreater(interrupt_count, 1000) assertGreater(local, 1000) @@ -1191,6 +1193,8 @@ class MulticoreRunAllHaltOne(GdbTest): time.sleep(1) self.gdb.p("buf", fmt="") + self.disable_timer(interrupt=True) + class MulticoreRtosSwitchActiveHartTest(GdbTest): compile_args = ("programs/multicore.c", "-DMULTICORE") @@ -1220,6 +1224,8 @@ class MulticoreRtosSwitchActiveHartTest(GdbTest): assertIn("set_trap_handler", output) assertNotIn("received signal SIGTRAP", output) + self.disable_timer() + class SmpSimultaneousRunHalt(GdbTest): compile_args = ("programs/run_halt_timing.S", "-DMULTICORE") diff --git a/debug/testlib.py b/debug/testlib.py index 5303f84..f36965f 100644 --- a/debug/testlib.py +++ b/debug/testlib.py @@ -1448,6 +1448,13 @@ class GdbTest(BaseTest): # PMP registers are optional pass + def disable_timer(self, interrupt=False): + for hart in self.target.harts: + self.gdb.select_hart(hart) + if interrupt: + self.gdb.interrupt() + self.gdb.p("$mie=$mie & ~0x80") + def exit(self, expected_result=10): self.gdb.command("delete") self.gdb.b("_exit") |