X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=FreeRTOS%2FSource%2Fportable%2FGCC%2FARM_CA9%2Fport.c;h=023c269d3762a3e58dfb158cb6013f27ceaf9704;hb=59098b3d6271d8c19476283b4d7d4949383b3785;hp=30eb3be117412fd4f7029d14c0b8d5253331bebb;hpb=5394904d4bf3d24bc0c2b791eebe67ea55f2125c;p=freertos diff --git a/FreeRTOS/Source/portable/GCC/ARM_CA9/port.c b/FreeRTOS/Source/portable/GCC/ARM_CA9/port.c index 30eb3be11..023c269d3 100644 --- a/FreeRTOS/Source/portable/GCC/ARM_CA9/port.c +++ b/FreeRTOS/Source/portable/GCC/ARM_CA9/port.c @@ -352,12 +352,16 @@ uint32_t ulAPSR; if( ( portICCBPR_BINARY_POINT_REGISTER & portBINARY_POINT_BITS ) <= portMAX_BINARY_POINT_VALUE ) { - /* Start the timer that generates the tick ISR. Interrupts are - turned off in the CPU itself to ensure the tick does not execute - while the scheduler is being started. Interrupts are automatically - turned back on in the CPU when the first task starts executing. */ + /* Interrupts are turned off in the CPU itself to ensure tick does + not execute while the scheduler is being started. Interrupts are + automatically turned back on in the CPU when the first task starts + executing. */ portCPU_IRQ_DISABLE(); + + /* Start the timer that generates the tick ISR. */ configSETUP_TICK_INTERRUPT(); + + /* Start the first task executing. */ vPortRestoreTaskContext(); } }