diff options
Diffstat (limited to 'cc3200/FreeRTOS')
-rw-r--r-- | cc3200/FreeRTOS/Source/portable/GCC/ARM_CM3/port.c | 5 | ||||
-rw-r--r-- | cc3200/FreeRTOS/Source/tasks.c | 8 |
2 files changed, 10 insertions, 3 deletions
diff --git a/cc3200/FreeRTOS/Source/portable/GCC/ARM_CM3/port.c b/cc3200/FreeRTOS/Source/portable/GCC/ARM_CM3/port.c index b287f7df99..8c94d7d795 100644 --- a/cc3200/FreeRTOS/Source/portable/GCC/ARM_CM3/port.c +++ b/cc3200/FreeRTOS/Source/portable/GCC/ARM_CM3/port.c @@ -202,6 +202,7 @@ static void prvTaskExitError( void ); /* * See header file for description. */ +__attribute__ ((section (".boot"))) StackType_t *pxPortInitialiseStack( StackType_t *pxTopOfStack, TaskFunction_t pxCode, void *pvParameters ) { /* Simulate the stack frame as it would be created by a context switch @@ -220,6 +221,7 @@ StackType_t *pxPortInitialiseStack( StackType_t *pxTopOfStack, TaskFunction_t px } /*-----------------------------------------------------------*/ +__attribute__ ((section (".boot"))) static void prvTaskExitError( void ) { /* A function that implements a task must not exit or attempt to return to @@ -254,6 +256,7 @@ void vPortSVCHandler( void ) } /*-----------------------------------------------------------*/ +__attribute__ ((section (".boot"))) static void prvPortStartFirstTask( void ) { __asm volatile( @@ -274,6 +277,7 @@ static void prvPortStartFirstTask( void ) /* * See header file for description. */ +__attribute__ ((section (".boot"))) BaseType_t xPortStartScheduler( void ) { /* configMAX_SYSCALL_INTERRUPT_PRIORITY must not be set to 0. @@ -643,6 +647,7 @@ void xPortSysTickHandler( void ) * Setup the systick timer to generate the tick interrupts at the required * frequency. */ +__attribute__ ((section (".boot"))) __attribute__(( weak )) void vPortSetupTimerInterrupt( void ) { /* Calculate the constants required to configure the tick interrupt. */ diff --git a/cc3200/FreeRTOS/Source/tasks.c b/cc3200/FreeRTOS/Source/tasks.c index 11bbc251c1..ea3ff3c571 100644 --- a/cc3200/FreeRTOS/Source/tasks.c +++ b/cc3200/FreeRTOS/Source/tasks.c @@ -515,6 +515,7 @@ static void prvResetNextTaskUnblockTime( void ); /*-----------------------------------------------------------*/ +__attribute__ ((section (".boot"))) BaseType_t xTaskGenericCreate( TaskFunction_t pxTaskCode, const char * const pcName, const uint16_t usStackDepth, void * const pvParameters, UBaseType_t uxPriority, TaskHandle_t * const pxCreatedTask, StackType_t * const puxStackBuffer, const MemoryRegion_t * const xRegions ) /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ { BaseType_t xReturn; @@ -1454,6 +1455,7 @@ TCB_t * pxNewTCB; #endif /* ( ( INCLUDE_xTaskResumeFromISR == 1 ) && ( INCLUDE_vTaskSuspend == 1 ) ) */ /*-----------------------------------------------------------*/ +__attribute__ ((section (".boot"))) void vTaskStartScheduler( void ) { BaseType_t xReturn; @@ -2700,7 +2702,7 @@ static portTASK_FUNCTION( prvIdleTask, pvParameters ) } #endif /* configUSE_TICKLESS_IDLE */ /*-----------------------------------------------------------*/ - +__attribute__ ((section (".boot"))) static void prvInitialiseTCBVariables( TCB_t * const pxTCB, const char * const pcName, UBaseType_t uxPriority, const MemoryRegion_t * const xRegions, const uint16_t usStackDepth ) /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ { UBaseType_t x; @@ -2809,7 +2811,7 @@ UBaseType_t x; #endif /* portUSING_MPU_WRAPPERS */ /*-----------------------------------------------------------*/ - +__attribute__ ((section (".boot"))) static void prvInitialiseTaskLists( void ) { UBaseType_t uxPriority; @@ -2912,7 +2914,7 @@ static void prvAddCurrentTaskToDelayedList( const TickType_t xTimeToWake ) } } /*-----------------------------------------------------------*/ - +__attribute__ ((section (".boot"))) static TCB_t *prvAllocateTCBAndStack( const uint16_t usStackDepth, StackType_t * const puxStackBuffer ) { TCB_t *pxNewTCB; |