Revert "freertos: btstack_run_loop_freertos_execute_code_on_main_thread_from_isr"

This reverts commit be9b024751.
This commit is contained in:
Matthias Ringwald 2021-03-16 10:46:17 +01:00
parent a813c6af95
commit d145c9147a
3 changed files with 23 additions and 1 deletions

View File

@ -45,7 +45,7 @@ HCI Dump: replace monolithic `hci_dump.c` (with many #ifdefs) into dispatcher wi
- `embedded/hci_dump_embedded_stdout` - log to console using printf
- `embedded/hci_dump_segger_stdout` - log to RTT console using `SEGGER_printf`
- `embedded/hci_dump_segger_binary` - writes binary log over RTT to host
FreeRTOS/Run Loop: remove `btstack_run_loop_freertos_execute_code_on_main_thread_from_isr`. A polled data source can be used instead.
## Release v1.3.2

View File

@ -141,6 +141,23 @@ void btstack_run_loop_freertos_execute_code_on_main_thread(void (*fn)(void *arg)
btstack_run_loop_freertos_trigger();
}
#if defined(HAVE_FREERTOS_TASK_NOTIFICATIONS) || (INCLUDE_xEventGroupSetBitFromISR == 1)
void btstack_run_loop_freertos_trigger_from_isr(void){
BaseType_t xHigherPriorityTaskWoken;
#ifdef HAVE_FREERTOS_TASK_NOTIFICATIONS
xTaskNotifyFromISR(btstack_run_loop_task, EVENT_GROUP_FLAG_RUN_LOOP, eSetBits, &xHigherPriorityTaskWoken);
if (xHigherPriorityTaskWoken) {
#ifdef ESP_PLATFORM
portYIELD_FROM_ISR();
#else
portYIELD_FROM_ISR( xHigherPriorityTaskWoken );
#endif
}
#else
xEventGroupSetBitsFromISR(btstack_run_loop_event_group, EVENT_GROUP_FLAG_RUN_LOOP, &xHigherPriorityTaskWoken);
#endif
}
void btstack_run_loop_freertos_execute_code_on_main_thread_from_isr(void (*fn)(void *arg), void * arg){
function_call_t message;
message.fn = fn;

View File

@ -61,6 +61,11 @@ const btstack_run_loop_t * btstack_run_loop_freertos_get_instance(void);
*/
void btstack_run_loop_freertos_execute_code_on_main_thread(void (*fn)(void *arg), void * arg);
/*
* @brief Execute code on BTstack run loop. Can be used to control BTstack from an ISR
*/
void btstack_run_loop_freertos_execute_code_on_main_thread_from_isr(void (*fn)(void *arg), void * arg);
/**
* @brief Triggers processing of data sources from thread context.
* Has to be called after enabling a poll data source to wake-pup run loop.