From d5854b6f49ff7de60483885cc9a8535c86faa4d0 Mon Sep 17 00:00:00 2001 From: Yanfeng Liu Date: Wed, 10 Jul 2024 16:47:31 +0800 Subject: [PATCH] riscv/nsbi: halt upon sbi_mexception This avoids endless restart if NuttSBI fails to enter S-mode. Signed-off-by: Yanfeng Liu --- arch/risc-v/src/nuttsbi/sbi_mexception.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/arch/risc-v/src/nuttsbi/sbi_mexception.c b/arch/risc-v/src/nuttsbi/sbi_mexception.c index d3d716329a920..f1d64e5172c0e 100644 --- a/arch/risc-v/src/nuttsbi/sbi_mexception.c +++ b/arch/risc-v/src/nuttsbi/sbi_mexception.c @@ -24,6 +24,7 @@ #include +#include #include /**************************************************************************** @@ -32,7 +33,10 @@ void sbi_mexception(uintreg_t mcause, uintreg_t *mepc, uintreg_t tval) { - UNUSED(mcause); - UNUSED(mepc); - UNUSED(tval); + sinfo("cauz=%"PRIxREG" epc=%p tval=0x%"PRIxREG"\n", mcause, mepc, tval); + + while (1) + { + __asm__ __volatile__("wfi"); + } }