diff --git a/boards/arm/cxd56xx/spresense/src/cxd56_power.c b/boards/arm/cxd56xx/spresense/src/cxd56_power.c index b957a3e6a7..b28383777b 100644 --- a/boards/arm/cxd56xx/spresense/src/cxd56_power.c +++ b/boards/arm/cxd56xx/spresense/src/cxd56_power.c @@ -509,9 +509,12 @@ int board_reset(int status) { /* Restore the original state for bootup after power cycle */ - board_xtal_power_control(true); - board_flash_power_control(true); - up_pm_acquire_freqlock(&g_hv_lock); + if (!up_interrupt_context()) + { + board_xtal_power_control(true); + board_flash_power_control(true); + up_pm_acquire_freqlock(&g_hv_lock); + } /* System reboot */