esp32/mphalport: Add function to wake main from separate FreeRTOS task.

Signed-off-by: Andrew Leech <andrew.leech@planetinnovation.com.au>
This commit is contained in:
Andrew Leech 2023-11-01 15:26:16 +11:00 committed by Damien George
parent 95ce61d0ad
commit d8a263435f
2 changed files with 7 additions and 1 deletions

View File

@ -214,7 +214,12 @@ uint64_t mp_hal_time_ns(void) {
return ns;
}
// Wake up the main task if it is sleeping
// Wake up the main task if it is sleeping.
void mp_hal_wake_main_task(void) {
xTaskNotifyGive(mp_main_task_handle);
}
// Wake up the main task if it is sleeping, to be called from an ISR.
void mp_hal_wake_main_task_from_isr(void) {
BaseType_t xHigherPriorityTaskWoken = pdFALSE;
vTaskNotifyGiveFromISR(mp_main_task_handle, &xHigherPriorityTaskWoken);

View File

@ -83,6 +83,7 @@ uint32_t mp_hal_get_cpu_freq(void);
#define mp_hal_quiet_timing_exit(irq_state) MICROPY_END_ATOMIC_SECTION(irq_state)
// Wake up the main task if it is sleeping
void mp_hal_wake_main_task(void);
void mp_hal_wake_main_task_from_isr(void);
// C-level pin HAL