Update to allow nesting.

This commit is contained in:
Richard Barry 2008-05-06 11:51:13 +00:00
parent b7f66b9db6
commit bafcf8901e
4 changed files with 310 additions and 141 deletions

View file

@ -99,11 +99,17 @@ extern void vPortEnterCritical( void );
extern void vPortExitCritical( void );
#define portENTER_CRITICAL() vPortEnterCritical()
#define portEXIT_CRITICAL() vPortExitCritical()
extern void vPortSetInterruptMaskFromISR();
extern void vPortClearInterruptMaskFromISR();
#define portSET_INTERRUPT_MASK_FROM_ISR() vPortSetInterruptMaskFromISR()
#define portCLEAR_INTERRUPT_MASK_FROM_ISR() vPortClearInterruptMaskFromISR()
/*-----------------------------------------------------------*/
/* Task utilities. */
#define portYIELD() asm volatile ( "ehb \r\n" \
"SYSCALL \r\n" )
extern void vPortYield( void );
#define portYIELD() vPortYield()
#define portNOP() asm volatile ( "nop" )
@ -114,7 +120,7 @@ extern void vPortExitCritical( void );
#define portTASK_FUNCTION( vFunction, pvParameters ) void vFunction( void *pvParameters )
/*-----------------------------------------------------------*/
#define portEND_SWITCHING_ISR( vSwitchRequired ) if( vSwitchRequired ) vTaskSwitchContext()
#define portEND_SWITCHING_ISR( vSwitchRequired ) if( vSwitchRequired ) SetCoreSW0()
#ifdef __cplusplus
}