...
signed portBASE_TYPE need_yeld = pdFALSE;
xQueueSendToBackFromISR( some_queue, sime_item_ptr, &need_yeld );
xTimerStartFromISR( some_timer, &need_yeld );
portEND_SWITCHING_ISR( need_yeld );
...
Is this code safe?
Does kernel only sets pxHigherPriorityTaskWoken to pdTRUE and never resets it?
Can I safety assume, that is calling any kernel code that takes pxHigherPriorityTaskWoken will only set given variable and never will reset it?
Does kernel only sets pxHigherPriorityTaskWoken to pdTRUE and never resets it?
Yes that is safe – in fact you are using it exactly as it is intended to be used.
Regards.