#define configASSERT( x )\r
#endif\r
\r
-#ifndef portALIGNMENT_ASSERT_pxCurrentTCB\r
- #define portALIGNMENT_ASSERT_pxCurrentTCB configASSERT\r
-#endif\r
-\r
/* The timers module relies on xTaskGetSchedulerState(). */\r
#if configUSE_TIMERS == 1\r
\r
\r
#define portNOP()\r
\r
-/* There are an uneven number of items on the initial stack, so\r
-portALIGNMENT_ASSERT_pxCurrentTCB() will trigger false positive asserts. */\r
-#define portALIGNMENT_ASSERT_pxCurrentTCB ( void )\r
-\r
\r
#ifdef __cplusplus\r
}\r
#define portENTER_CRITICAL() vPortEnterCritical()\r
#define portEXIT_CRITICAL() vPortExitCritical()\r
\r
-/* There are an uneven number of items on the initial stack, so\r
-portALIGNMENT_ASSERT_pxCurrentTCB() will trigger false positive asserts. */\r
-#define portALIGNMENT_ASSERT_pxCurrentTCB ( void )\r
-\r
/*-----------------------------------------------------------*/\r
\r
/* Task function macros as described on the FreeRTOS.org WEB site. These are\r
#endif\r
#endif\r
\r
-/* This macro is not appropriate for this port so is defined away. */\r
-#define portALIGNMENT_ASSERT_pxCurrentTCB( x )\r
-\r
/*-----------------------------------------------------------*/\r
\r
/* Task function macros as described on the FreeRTOS.org WEB site. */\r
extern unsigned long uxPortSetInterruptMaskFromISR( void );\r
#define portSET_INTERRUPT_MASK_FROM_ISR() uxPortSetInterruptMaskFromISR()\r
\r
-/* As this port holds a CSA address in pxTopOfStack, the assert that checks the\r
-pxTopOfStack alignment is removed. */\r
-#define portALIGNMENT_ASSERT_pxCurrentTCB ( void )\r
-\r
/* Pend a priority 1 interrupt, which will take care of the context switch. */\r
#define portYIELD_FROM_ISR( xHigherPriorityTaskWoken ) if( xHigherPriorityTaskWoken != pdFALSE ) { CPU_SRC0.bits.SETR = 1; _isync(); }\r
\r
#define portCLEAR_INTERRUPT_MASK_FROM_ISR(x) vPortClearInterruptMask( x )\r
/*-----------------------------------------------------------*/\r
\r
-/* There are an uneven number of items on the initial stack, so\r
-portALIGNMENT_ASSERT_pxCurrentTCB() will trigger false positive asserts. */\r
-#define portALIGNMENT_ASSERT_pxCurrentTCB ( void )\r
-/*-----------------------------------------------------------*/\r
-\r
/* Tickless idle/low power functionality. */\r
#ifndef portSUPPRESS_TICKS_AND_SLEEP\r
extern void vPortSuppressTicksAndSleep( portTickType xExpectedIdleTime );\r
#define portTASK_FUNCTION_PROTO( vFunction, pvParameters ) void vFunction( void *pvParameters )\r
#define portTASK_FUNCTION( vFunction, pvParameters ) void vFunction( void *pvParameters )\r
\r
-/* This macro is not appropriate for this port so is defined away. */\r
-#define portALIGNMENT_ASSERT_pxCurrentTCB( x )\r
-\r
#ifdef __cplusplus\r
}\r
#endif\r
\r
/*-----------------------------------------------------------*/\r
\r
-/* There are an uneven number of items on the initial stack, so\r
-portALIGNMENT_ASSERT_pxCurrentTCB() will trigger false positive asserts. */\r
-#define portALIGNMENT_ASSERT_pxCurrentTCB ( void )\r
-/*-----------------------------------------------------------*/\r
-\r
/* Tickless idle/low power functionality. */\r
#ifndef portSUPPRESS_TICKS_AND_SLEEP\r
extern void vPortSuppressTicksAndSleep( portTickType xExpectedIdleTime );\r
#define portTASK_FUNCTION_PROTO( vFunction, pvParameters ) void vFunction( void *pvParameters )\r
#define portTASK_FUNCTION( vFunction, pvParameters ) void vFunction( void *pvParameters )\r
\r
-/* This macro is not appropriate for this port so is defined away. */\r
-#define portALIGNMENT_ASSERT_pxCurrentTCB( x )\r
-\r
#ifdef __cplusplus\r
}\r
#endif\r
#define portTASK_FUNCTION_PROTO( vFunction, pvParameters ) void vFunction( void *pvParameters )\r
#define portTASK_FUNCTION( vFunction, pvParameters ) void vFunction( void *pvParameters )\r
\r
-/* This macro is not appropriate for this port so is defined away. */\r
-#define portALIGNMENT_ASSERT_pxCurrentTCB( x )\r
-\r
#ifdef __cplusplus\r
}\r
#endif\r
#define portENTER_CRITICAL() vPortEnterCritical()\r
#define portEXIT_CRITICAL() vPortExitCritical()\r
\r
-/* There are an uneven number of items on the initial stack, so\r
-portALIGNMENT_ASSERT_pxCurrentTCB() will trigger false positive asserts. */\r
-#define portALIGNMENT_ASSERT_pxCurrentTCB ( void )\r
-\r
/*-----------------------------------------------------------*/\r
\r
/* Task function macros as described on the FreeRTOS.org WEB site. */\r
}\r
#endif /* portUSING_MPU_WRAPPERS */\r
\r
- /* Check the alignment of the initialised stack. */\r
- portALIGNMENT_ASSERT_pxCurrentTCB( ( ( ( unsigned long ) pxNewTCB->pxTopOfStack & ( unsigned long ) portBYTE_ALIGNMENT_MASK ) == 0UL ) );\r
-\r
if( ( void * ) pxCreatedTask != NULL )\r
{\r
/* Pass the TCB out - in an anonymous way. The calling function/\r
ulTotalRunTime = portGET_RUN_TIME_COUNTER_VALUE();\r
#endif\r
\r
- /* Add the amount of time the task has been running to the \r
- accumulated time so far. The time the task started running was \r
- stored in ulTaskSwitchedInTime. Note that there is no overflow \r
- protection here so count values are only valid until the timer \r
+ /* Add the amount of time the task has been running to the\r
+ accumulated time so far. The time the task started running was\r
+ stored in ulTaskSwitchedInTime. Note that there is no overflow\r
+ protection here so count values are only valid until the timer\r
overflows. The guard against negative values is to protect\r
against suspect run time stat counter implementations - which\r
are provided by the application, not the kernel. */\r