From ec191d05b6b7101021341a8938e61ba5a2443fc3 Mon Sep 17 00:00:00 2001 From: ligd Date: Mon, 19 Dec 2022 17:42:39 +0800 Subject: [PATCH] sim/looper: close interrupt when looper run Signed-off-by: ligd --- arch/sim/src/sim/sim_initialize.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/arch/sim/src/sim/sim_initialize.c b/arch/sim/src/sim/sim_initialize.c index 1eb23e5879..5b6a267ff4 100644 --- a/arch/sim/src/sim/sim_initialize.c +++ b/arch/sim/src/sim/sim_initialize.c @@ -162,6 +162,10 @@ static int sim_loop_task(int argc, char **argv) { while (1) { + irqstate_t flags = up_irq_save(); + + sched_lock(); + /* Handle UART data availability */ sim_uartloop(); @@ -209,6 +213,9 @@ static int sim_loop_task(int argc, char **argv) foc_dummy_update(); #endif + sched_unlock(); + up_irq_restore(flags); + /* Sleep minimal time, let the idle run */ usleep(USEC_PER_TICK);