diff --git a/arch/risc-v/src/common/riscv_mtimer.c b/arch/risc-v/src/common/riscv_mtimer.c index 112919e4ba4..27ce9e4e411 100644 --- a/arch/risc-v/src/common/riscv_mtimer.c +++ b/arch/risc-v/src/common/riscv_mtimer.c @@ -25,6 +25,8 @@ #include #include +#include + #include "riscv_mtimer.h" #include "riscv_internal.h" @@ -107,6 +109,10 @@ static void riscv_mtimer_set_mtimecmp(struct riscv_mtimer_lowerhalf_s *priv, putreg32(value, priv->mtimecmp); putreg32(value >> 32, priv->mtimecmp + 4); #endif + + /* Make sure it sticks */ + + __DMB(); } /****************************************************************************