mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-04-20 21:41:59 -04:00
Add static qualifier to the function that starts the first task in GCC/ARM_CM3/port.c.
Added a _nop() after the _disable_interrupt() in CCS4/MSP430X/portmacro.h. Added a NOP() after the disabling of interrupts in IAR/MSP430X/portmacro.h.
This commit is contained in:
parent
1478402899
commit
4c8e9edc8d
|
@ -93,7 +93,7 @@
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
|
||||||
/* Interrupt control macros. */
|
/* Interrupt control macros. */
|
||||||
#define portDISABLE_INTERRUPTS() _disable_interrupt()
|
#define portDISABLE_INTERRUPTS() _disable_interrupt(); _nop()
|
||||||
#define portENABLE_INTERRUPTS() _enable_interrupt()
|
#define portENABLE_INTERRUPTS() _enable_interrupt()
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
|
||||||
|
|
|
@ -104,7 +104,7 @@ void vPortSVCHandler( void ) __attribute__ (( naked ));
|
||||||
/*
|
/*
|
||||||
* Start first task is a separate function so it can be tested in isolation.
|
* Start first task is a separate function so it can be tested in isolation.
|
||||||
*/
|
*/
|
||||||
void vPortStartFirstTask( void ) __attribute__ (( naked ));
|
static void prvPortStartFirstTask( void ) __attribute__ (( naked ));
|
||||||
|
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
|
||||||
|
@ -148,7 +148,7 @@ void vPortSVCHandler( void )
|
||||||
}
|
}
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
|
||||||
void vPortStartFirstTask( void )
|
static void prvPortStartFirstTask( void )
|
||||||
{
|
{
|
||||||
__asm volatile(
|
__asm volatile(
|
||||||
" ldr r0, =0xE000ED08 \n" /* Use the NVIC offset register to locate the stack. */
|
" ldr r0, =0xE000ED08 \n" /* Use the NVIC offset register to locate the stack. */
|
||||||
|
@ -179,7 +179,7 @@ portBASE_TYPE xPortStartScheduler( void )
|
||||||
uxCriticalNesting = 0;
|
uxCriticalNesting = 0;
|
||||||
|
|
||||||
/* Start the first task. */
|
/* Start the first task. */
|
||||||
vPortStartFirstTask();
|
prvPortStartFirstTask();
|
||||||
|
|
||||||
/* Should not get here! */
|
/* Should not get here! */
|
||||||
return 0;
|
return 0;
|
||||||
|
|
|
@ -51,13 +51,6 @@
|
||||||
licensing and training services.
|
licensing and training services.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
|
||||||
Change from V4.2.1:
|
|
||||||
|
|
||||||
+ Introduced usage of configKERNEL_INTERRUPT_PRIORITY macro to set the
|
|
||||||
interrupt priority used by the kernel.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/*-----------------------------------------------------------
|
/*-----------------------------------------------------------
|
||||||
* Implementation of functions defined in portable.h for the ARM CM3 port.
|
* Implementation of functions defined in portable.h for the ARM CM3 port.
|
||||||
*----------------------------------------------------------*/
|
*----------------------------------------------------------*/
|
||||||
|
|
|
@ -93,7 +93,7 @@
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
|
||||||
/* Interrupt control macros. */
|
/* Interrupt control macros. */
|
||||||
#define portDISABLE_INTERRUPTS() _DINT()
|
#define portDISABLE_INTERRUPTS() _DINT();_NOP()
|
||||||
#define portENABLE_INTERRUPTS() _EINT()
|
#define portENABLE_INTERRUPTS() _EINT()
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue