diff --git a/arch/risc-v/src/qemu-rv/qemu_rv_timerisr.c b/arch/risc-v/src/qemu-rv/qemu_rv_timerisr.c index 1492de5a3b4..92363ee7bad 100644 --- a/arch/risc-v/src/qemu-rv/qemu_rv_timerisr.c +++ b/arch/risc-v/src/qemu-rv/qemu_rv_timerisr.c @@ -31,6 +31,7 @@ #include #include +#include #include #include #include @@ -198,9 +199,12 @@ void qemu_rv_mtimer_interrupt(void) g_mtimer_cnt++; g_stimer_pending = true; - /* Post Supervisor Software Interrupt */ + if (OSINIT_HW_READY()) + { + /* Post Supervisor Software Interrupt */ - SET_CSR(sip, SIP_SSIP); + SET_CSR(sip, SIP_SSIP); + } } #endif /* CONFIG_BUILD_KERNEL */