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 14
14
15
15
#if ERPC_THREADS_IS(FREERTOS)
16
16
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
+
17
26
using namespace erpc ;
18
27
19
28
// //////////////////////////////////////////////////////////////////////////////
@@ -248,7 +257,7 @@ void Semaphore::putFromISR(void)
248
257
{
249
258
BaseType_t xHigherPriorityTaskWoken = pdFALSE;
250
259
(void )xSemaphoreGiveFromISR (m_sem, &xHigherPriorityTaskWoken);
251
- portYIELD_FROM_ISR (xHigherPriorityTaskWoken);
260
+ ErpcPortYieldFromISR (xHigherPriorityTaskWoken);
252
261
}
253
262
254
263
bool Semaphore::get (uint32_t timeoutUsecs)
You can’t perform that action at this time.
0 commit comments