# Old FreeRTOS, problem with From\_ISR api functions

**URL:** <https://forums.freertos.org/t/old-freertos-problem-with-from-isr-api-functions/7996>\
**Category:** Kernel\
**Created:** [August 5, 2019, 6:55am UTC](https://forums.freertos.org/t/old-freertos-problem-with-from-isr-api-functions/7996 "2019-08-05T06:55:39Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![system](https://d2v6vdsk2p900z.cloudfront.net/original/1X/7fc8fdb729c645aab5b20282bbe34e57cb407be6.jpeg) [@system](https://forums.freertos.org/u/system)\
**Post date:** [August 5, 2019, 6:55am UTC](https://forums.freertos.org/t/old-freertos-problem-with-from-isr-api-functions/7996/1 "2019-08-05T06:55:39Z")

</div>

**[valpiros2](https://sourceforge.net/u/valpiros2/)** wrote on [Monday, August 05, 2019](https://sourceforge.net/p/freertos/discussion/382005/thread/32b0162da0/#7e1f):

Hi, I am using a STM32F415 with V7.4.0 of FreeRTOS. I am working on an old project and can’t change the FreeRTOS Version.  
I am actualy having difficulties with From\_ISR functions, cause taskYIELD\_FROM\_ISR and portYIELD\_FROM\_ISR are defined nowhere. It seems that I can’t use those. Here is an example of when I use them :  
xSemaphoreGiveFromISR (Fin\_Env\_Semaphore, &xHigherPriorityTaskWoken);  
taskYIELD\_FROM\_ISR(xHigherPriorityTaskWoken);  
I have looked into many FreeRTOS files and I only seen them in examples /\* … \*/. How could I use those, then ?

---

<div class="post-metadata">

**Author:** ![rtel](https://d3iykfbgfh8zhg.cloudfront.net/user_avatar/forums.freertos.org/rtel/32/31_2.png) [@rtel](https://forums.freertos.org/u/rtel)\
**Post date:** [August 5, 2019, 7:50am UTC](https://forums.freertos.org/t/old-freertos-problem-with-from-isr-api-functions/7996/2 "2019-08-05T07:50:56Z")

</div>

**[rtel](https://sourceforge.net/u/rtel/)** wrote on [Monday, August 05, 2019](https://sourceforge.net/p/freertos/discussion/382005/thread/32b0162da0/#7e1f/7457):

It might be that you need to use portEND\_SWITCHING\_ISR() instead - it  
does exactly the same thing - just a different name. Is that defined?

---

<div class="post-metadata">

**Author:** ![system](https://d2v6vdsk2p900z.cloudfront.net/original/1X/7fc8fdb729c645aab5b20282bbe34e57cb407be6.jpeg) [@system](https://forums.freertos.org/u/system)\
**Post date:** [August 5, 2019, 7:53am UTC](https://forums.freertos.org/t/old-freertos-problem-with-from-isr-api-functions/7996/3 "2019-08-05T07:53:10Z")

</div>

**[valpiros2](https://sourceforge.net/u/valpiros2/)** wrote on [Monday, August 05, 2019](https://sourceforge.net/p/freertos/discussion/382005/thread/32b0162da0/#7e1f/7457/1eb4):

The only definition of it is that one (in portmacro.h) :  
"#define portYIELD() vPortYieldFromISR()  
"#define portEND\_SWITCHING\_ISR( xSwitchRequired ) if( xSwitchRequired ) vPortYieldFromISR()

I looked a bit deeper and it’s totaly it, thanks !
