diff --git a/arch/risc-v/src/common/riscv_cpustart.c b/arch/risc-v/src/common/riscv_cpustart.c index d7763c01d90..1b96d4ff4e2 100644 --- a/arch/risc-v/src/common/riscv_cpustart.c +++ b/arch/risc-v/src/common/riscv_cpustart.c @@ -81,7 +81,7 @@ void riscv_cpu_boot(int cpu) { asm("WFI"); } - while (READ_CSR(CSR_IP) != IP_SIP); + while (!(READ_CSR(CSR_IP) & IP_SIP)); #ifdef CONFIG_RISCV_PERCPU_SCRATCH /* Initialize the per CPU areas */