File tree Expand file tree Collapse file tree 1 file changed +9
-1
lines changed Expand file tree Collapse file tree 1 file changed +9
-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
+ portYIELD_FROM_ISR (higher_priority_task_woken);
23
+ }
24
+
17
25
using namespace erpc ;
18
26
19
27
// //////////////////////////////////////////////////////////////////////////////
@@ -248,7 +256,7 @@ void Semaphore::putFromISR(void)
248
256
{
249
257
BaseType_t xHigherPriorityTaskWoken = pdFALSE;
250
258
(void )xSemaphoreGiveFromISR (m_sem, &xHigherPriorityTaskWoken);
251
- portYIELD_FROM_ISR (xHigherPriorityTaskWoken);
259
+ ErpcPortYieldFromISR (xHigherPriorityTaskWoken);
252
260
}
253
261
254
262
bool Semaphore::get (uint32_t timeoutUsecs)
You can’t perform that action at this time.
0 commit comments