File tree Expand file tree Collapse file tree 1 file changed +10
-1
lines changed Expand file tree Collapse file tree 1 file changed +10
-1
lines changed Original file line number Diff line number Diff line change 1414
1515#if ERPC_THREADS_IS(FREERTOS)
1616
17+ // The portYIELD_FROM_ISR() macro declares a variable called
18+ // ulPortYieldRequired. FreeRTOS assumes ulPortYieldRequired is in the
19+ // global namespace. To prevent linking errors, portYIELD_FROM_ISR()
20+ // should not be called from within a namespace.
21+ inline void ErpcPortYieldFromISR (BaseType_t &higher_priority_task_woken)
22+ {
23+ portYIELD_FROM_ISR (higher_priority_task_woken);
24+ }
25+
1726using namespace erpc ;
1827
1928// //////////////////////////////////////////////////////////////////////////////
@@ -248,7 +257,7 @@ void Semaphore::putFromISR(void)
248257{
249258 BaseType_t xHigherPriorityTaskWoken = pdFALSE;
250259 (void )xSemaphoreGiveFromISR (m_sem, &xHigherPriorityTaskWoken);
251- portYIELD_FROM_ISR (xHigherPriorityTaskWoken);
260+ ErpcPortYieldFromISR (xHigherPriorityTaskWoken);
252261}
253262
254263bool Semaphore::get (uint32_t timeoutUsecs)
You can’t perform that action at this time.
0 commit comments