summaryrefslogtreecommitdiffstatshomepage
path: root/cc3200/hal/cc3200_hal.c
diff options
context:
space:
mode:
Diffstat (limited to 'cc3200/hal/cc3200_hal.c')
-rw-r--r--cc3200/hal/cc3200_hal.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/cc3200/hal/cc3200_hal.c b/cc3200/hal/cc3200_hal.c
index f0987ae9d2..f4d38d120e 100644
--- a/cc3200/hal/cc3200_hal.c
+++ b/cc3200/hal/cc3200_hal.c
@@ -111,6 +111,7 @@ mp_uint_t mp_hal_ticks_ms(void) {
void mp_hal_delay_ms(mp_uint_t delay) {
// only if we are not within interrupt context and interrupts are enabled
if ((HAL_NVIC_INT_CTRL_REG & HAL_VECTACTIVE_MASK) == 0 && query_irq() == IRQ_STATE_ENABLED) {
+ MP_THREAD_GIL_EXIT();
#ifdef USE_FREERTOS
vTaskDelay (delay / portTICK_PERIOD_MS);
#else
@@ -121,6 +122,7 @@ void mp_hal_delay_ms(mp_uint_t delay) {
__WFI();
}
#endif
+ MP_THREAD_GIL_ENTER();
} else {
for (int ms = 0; ms < delay; ms++) {
UtilsDelay(UTILS_DELAY_US_TO_COUNT(1000));