]> git.sur5r.net Git - freertos/blobdiff - FreeRTOS/Source/portable/ThirdParty/XCC/Xtensa/portmacro.h
Merge bug fixes from Cadence
[freertos] / FreeRTOS / Source / portable / ThirdParty / XCC / Xtensa / portmacro.h
index 82e783dc47f72e76aeb3806cd2424b06d1438790..31832c2e0d9fb66fb59783224beab6f7951b946c 100644 (file)
@@ -99,7 +99,7 @@ extern "C" {
 #define portDOUBLE             double\r
 #define portLONG               int32_t\r
 #define portSHORT              int16_t\r
-#define portSTACK_TYPE uint8_t\r
+#define portSTACK_TYPE uint32_t\r
 #define portBASE_TYPE  int\r
 \r
 typedef portSTACK_TYPE                 StackType_t;\r
@@ -138,6 +138,7 @@ static inline unsigned portENTER_CRITICAL_NESTED() { unsigned state = XTOS_SET_I
 // These FreeRTOS versions are similar to the nested versions above\r
 #define portSET_INTERRUPT_MASK_FROM_ISR()            portENTER_CRITICAL_NESTED()\r
 #define portCLEAR_INTERRUPT_MASK_FROM_ISR(state)     portEXIT_CRITICAL_NESTED(state)\r
+\r
 /*-----------------------------------------------------------*/\r
 \r
 /* Architecture specifics. */\r
@@ -154,7 +155,11 @@ static inline unsigned portENTER_CRITICAL_NESTED() { unsigned state = XTOS_SET_I
 void vPortYield( void );\r
 void _frxt_setup_switch( void );\r
 #define portYIELD()       vPortYield()\r
-#define portYIELD_FROM_ISR( x )                if( ( x ) != 0 ) { _frxt_setup_switch(); }\r
+#define portYIELD_FROM_ISR( xHigherPriorityTaskWoken ) \\r
+       if ( ( xHigherPriorityTaskWoken ) != 0 ) {      \\r
+               _frxt_setup_switch();                   \\r
+       }\r
+\r
 /*-----------------------------------------------------------*/\r
 \r
 /* Task function macros as described on the FreeRTOS.org WEB site. */\r