mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-08-19 09:38:32 -04:00
Replace standard types with stdint.h types.
Replace #define types with typedefs. Rename all typedefs to have a _t extension. Add #defines to automatically convert old FreeRTOS specific types to their new names (with the _t).
This commit is contained in:
parent
f292243dcf
commit
3e20aa7d60
190 changed files with 4940 additions and 4603 deletions
|
@ -2262,7 +2262,7 @@ __inline unsigned int AT91F_US_ReceiveFrame (
|
|||
//*----------------------------------------------------------------------------
|
||||
__inline void AT91F_US_SetIrdaFilter (
|
||||
AT91PS_USART pUSART,
|
||||
unsigned char value
|
||||
uint8_t value
|
||||
)
|
||||
{
|
||||
pUSART->US_IF = value;
|
||||
|
@ -2704,7 +2704,7 @@ __inline void AT91F_UDP_DisableIt (
|
|||
//*----------------------------------------------------------------------------
|
||||
__inline void AT91F_UDP_SetAddress (
|
||||
AT91PS_UDP pUDP, // \arg pointer to a UDP controller
|
||||
unsigned char address) // \arg new UDP address
|
||||
uint8_t address) // \arg new UDP address
|
||||
{
|
||||
pUDP->UDP_FADDR = (AT91C_UDP_FEN | address);
|
||||
}
|
||||
|
@ -2715,7 +2715,7 @@ __inline void AT91F_UDP_SetAddress (
|
|||
//*----------------------------------------------------------------------------
|
||||
__inline void AT91F_UDP_EnableEp (
|
||||
AT91PS_UDP pUDP, // \arg pointer to a UDP controller
|
||||
unsigned char endpoint) // \arg endpoint number
|
||||
uint8_t endpoint) // \arg endpoint number
|
||||
{
|
||||
pUDP->UDP_CSR[endpoint] |= AT91C_UDP_EPEDS;
|
||||
}
|
||||
|
@ -2726,7 +2726,7 @@ __inline void AT91F_UDP_EnableEp (
|
|||
//*----------------------------------------------------------------------------
|
||||
__inline void AT91F_UDP_DisableEp (
|
||||
AT91PS_UDP pUDP, // \arg pointer to a UDP controller
|
||||
unsigned char endpoint) // \arg endpoint number
|
||||
uint8_t endpoint) // \arg endpoint number
|
||||
{
|
||||
pUDP->UDP_CSR[endpoint] &= ~AT91C_UDP_EPEDS;
|
||||
}
|
||||
|
@ -2771,7 +2771,7 @@ __inline void AT91F_UDP_ResetEp ( // \return the UDP device state
|
|||
//*----------------------------------------------------------------------------
|
||||
__inline void AT91F_UDP_EpStall(
|
||||
AT91PS_UDP pUDP, // \arg pointer to a UDP controller
|
||||
unsigned char endpoint) // \arg endpoint number
|
||||
uint8_t endpoint) // \arg endpoint number
|
||||
{
|
||||
pUDP->UDP_CSR[endpoint] |= AT91C_UDP_FORCESTALL;
|
||||
}
|
||||
|
@ -2782,8 +2782,8 @@ __inline void AT91F_UDP_EpStall(
|
|||
//*----------------------------------------------------------------------------
|
||||
__inline void AT91F_UDP_EpWrite(
|
||||
AT91PS_UDP pUDP, // \arg pointer to a UDP controller
|
||||
unsigned char endpoint, // \arg endpoint number
|
||||
unsigned char value) // \arg value to be written in the DPR
|
||||
uint8_t endpoint, // \arg endpoint number
|
||||
uint8_t value) // \arg value to be written in the DPR
|
||||
{
|
||||
pUDP->UDP_FDR[endpoint] = value;
|
||||
}
|
||||
|
@ -2794,7 +2794,7 @@ __inline void AT91F_UDP_EpWrite(
|
|||
//*----------------------------------------------------------------------------
|
||||
__inline unsigned int AT91F_UDP_EpRead(
|
||||
AT91PS_UDP pUDP, // \arg pointer to a UDP controller
|
||||
unsigned char endpoint) // \arg endpoint number
|
||||
uint8_t endpoint) // \arg endpoint number
|
||||
{
|
||||
return pUDP->UDP_FDR[endpoint];
|
||||
}
|
||||
|
@ -2805,7 +2805,7 @@ __inline unsigned int AT91F_UDP_EpRead(
|
|||
//*----------------------------------------------------------------------------
|
||||
__inline void AT91F_UDP_EpEndOfWr(
|
||||
AT91PS_UDP pUDP, // \arg pointer to a UDP controller
|
||||
unsigned char endpoint) // \arg endpoint number
|
||||
uint8_t endpoint) // \arg endpoint number
|
||||
{
|
||||
pUDP->UDP_CSR[endpoint] |= AT91C_UDP_TXPKTRDY;
|
||||
}
|
||||
|
@ -2816,7 +2816,7 @@ __inline void AT91F_UDP_EpEndOfWr(
|
|||
//*----------------------------------------------------------------------------
|
||||
__inline void AT91F_UDP_EpClear(
|
||||
AT91PS_UDP pUDP, // \arg pointer to a UDP controller
|
||||
unsigned char endpoint, // \arg endpoint number
|
||||
uint8_t endpoint, // \arg endpoint number
|
||||
unsigned int flag) // \arg flag to be cleared
|
||||
{
|
||||
pUDP->UDP_CSR[endpoint] &= ~(flag);
|
||||
|
@ -2828,7 +2828,7 @@ __inline void AT91F_UDP_EpClear(
|
|||
//*----------------------------------------------------------------------------
|
||||
__inline void AT91F_UDP_EpSet(
|
||||
AT91PS_UDP pUDP, // \arg pointer to a UDP controller
|
||||
unsigned char endpoint, // \arg endpoint number
|
||||
uint8_t endpoint, // \arg endpoint number
|
||||
unsigned int flag) // \arg flag to be cleared
|
||||
{
|
||||
pUDP->UDP_CSR[endpoint] |= flag;
|
||||
|
@ -2840,7 +2840,7 @@ __inline void AT91F_UDP_EpSet(
|
|||
//*----------------------------------------------------------------------------
|
||||
__inline unsigned int AT91F_UDP_EpStatus(
|
||||
AT91PS_UDP pUDP, // \arg pointer to a UDP controller
|
||||
unsigned char endpoint) // \arg endpoint number
|
||||
uint8_t endpoint) // \arg endpoint number
|
||||
{
|
||||
return pUDP->UDP_CSR[endpoint];
|
||||
}
|
||||
|
@ -3158,7 +3158,7 @@ __inline unsigned int AT91F_CAN_GetMessageModeReg (
|
|||
__inline void AT91F_CAN_CfgMessageIDReg (
|
||||
AT91PS_CAN_MB CAN_Mailbox, // pointer to a CAN Mailbox
|
||||
unsigned int id,
|
||||
unsigned char version)
|
||||
uint8_t version)
|
||||
{
|
||||
if(version==0) // IDvA Standard Format
|
||||
CAN_Mailbox->CAN_MB_MID = id<<18;
|
||||
|
@ -3680,7 +3680,7 @@ __inline void AT91F_AES_LoadNewSeed (
|
|||
//*----------------------------------------------------------------------------
|
||||
__inline void AT91F_AES_SetCryptoKey (
|
||||
AT91PS_AES pAES, // pointer to a AES controller
|
||||
unsigned char index,
|
||||
uint8_t index,
|
||||
unsigned int keyword
|
||||
)
|
||||
{
|
||||
|
@ -3693,7 +3693,7 @@ __inline void AT91F_AES_SetCryptoKey (
|
|||
//*----------------------------------------------------------------------------
|
||||
__inline void AT91F_AES_InputData (
|
||||
AT91PS_AES pAES, // pointer to a AES controller
|
||||
unsigned char index,
|
||||
uint8_t index,
|
||||
unsigned int indata
|
||||
)
|
||||
{
|
||||
|
@ -3706,7 +3706,7 @@ __inline void AT91F_AES_InputData (
|
|||
//*----------------------------------------------------------------------------
|
||||
__inline unsigned int AT91F_AES_GetOutputData (
|
||||
AT91PS_AES pAES, // pointer to a AES controller
|
||||
unsigned char index
|
||||
uint8_t index
|
||||
)
|
||||
{
|
||||
return pAES->AES_ODATAxR[index];
|
||||
|
@ -3718,7 +3718,7 @@ __inline unsigned int AT91F_AES_GetOutputData (
|
|||
//*----------------------------------------------------------------------------
|
||||
__inline void AT91F_AES_SetInitializationVector (
|
||||
AT91PS_AES pAES, // pointer to a AES controller
|
||||
unsigned char index,
|
||||
uint8_t index,
|
||||
unsigned int initvector
|
||||
)
|
||||
{
|
||||
|
@ -3845,7 +3845,7 @@ __inline void AT91F_TDES_SoftReset (
|
|||
//*----------------------------------------------------------------------------
|
||||
__inline void AT91F_TDES_SetCryptoKey1 (
|
||||
AT91PS_TDES pTDES, // pointer to a TDES controller
|
||||
unsigned char index,
|
||||
uint8_t index,
|
||||
unsigned int keyword
|
||||
)
|
||||
{
|
||||
|
@ -3858,7 +3858,7 @@ __inline void AT91F_TDES_SetCryptoKey1 (
|
|||
//*----------------------------------------------------------------------------
|
||||
__inline void AT91F_TDES_SetCryptoKey2 (
|
||||
AT91PS_TDES pTDES, // pointer to a TDES controller
|
||||
unsigned char index,
|
||||
uint8_t index,
|
||||
unsigned int keyword
|
||||
)
|
||||
{
|
||||
|
@ -3871,7 +3871,7 @@ __inline void AT91F_TDES_SetCryptoKey2 (
|
|||
//*----------------------------------------------------------------------------
|
||||
__inline void AT91F_TDES_SetCryptoKey3 (
|
||||
AT91PS_TDES pTDES, // pointer to a TDES controller
|
||||
unsigned char index,
|
||||
uint8_t index,
|
||||
unsigned int keyword
|
||||
)
|
||||
{
|
||||
|
@ -3884,7 +3884,7 @@ __inline void AT91F_TDES_SetCryptoKey3 (
|
|||
//*----------------------------------------------------------------------------
|
||||
__inline void AT91F_TDES_InputData (
|
||||
AT91PS_TDES pTDES, // pointer to a TDES controller
|
||||
unsigned char index,
|
||||
uint8_t index,
|
||||
unsigned int indata
|
||||
)
|
||||
{
|
||||
|
@ -3897,7 +3897,7 @@ __inline void AT91F_TDES_InputData (
|
|||
//*----------------------------------------------------------------------------
|
||||
__inline unsigned int AT91F_TDES_GetOutputData (
|
||||
AT91PS_TDES pTDES, // pointer to a TDES controller
|
||||
unsigned char index
|
||||
uint8_t index
|
||||
)
|
||||
{
|
||||
return pTDES->TDES_ODATAxR[index];
|
||||
|
@ -3909,7 +3909,7 @@ __inline unsigned int AT91F_TDES_GetOutputData (
|
|||
//*----------------------------------------------------------------------------
|
||||
__inline void AT91F_TDES_SetInitializationVector (
|
||||
AT91PS_TDES pTDES, // pointer to a TDES controller
|
||||
unsigned char index,
|
||||
uint8_t index,
|
||||
unsigned int initvector
|
||||
)
|
||||
{
|
||||
|
|
|
@ -83,24 +83,24 @@
|
|||
#include "AT91SAM7X256.h"
|
||||
|
||||
/* Constants required to setup the task context. */
|
||||
#define portINITIAL_SPSR ( ( portSTACK_TYPE ) 0x1f ) /* System mode, ARM mode, interrupts enabled. */
|
||||
#define portTHUMB_MODE_BIT ( ( portSTACK_TYPE ) 0x20 )
|
||||
#define portINSTRUCTION_SIZE ( ( portSTACK_TYPE ) 4 )
|
||||
#define portNO_CRITICAL_SECTION_NESTING ( ( portSTACK_TYPE ) 0 )
|
||||
#define portINITIAL_SPSR ( ( StackType_t ) 0x1f ) /* System mode, ARM mode, interrupts enabled. */
|
||||
#define portTHUMB_MODE_BIT ( ( StackType_t ) 0x20 )
|
||||
#define portINSTRUCTION_SIZE ( ( StackType_t ) 4 )
|
||||
#define portNO_CRITICAL_SECTION_NESTING ( ( StackType_t ) 0 )
|
||||
|
||||
/* Constants required to setup the tick ISR. */
|
||||
#define portENABLE_TIMER ( ( unsigned char ) 0x01 )
|
||||
#define portENABLE_TIMER ( ( uint8_t ) 0x01 )
|
||||
#define portPRESCALE_VALUE 0x00
|
||||
#define portINTERRUPT_ON_MATCH ( ( unsigned long ) 0x01 )
|
||||
#define portRESET_COUNT_ON_MATCH ( ( unsigned long ) 0x02 )
|
||||
#define portINTERRUPT_ON_MATCH ( ( uint32_t ) 0x01 )
|
||||
#define portRESET_COUNT_ON_MATCH ( ( uint32_t ) 0x02 )
|
||||
|
||||
/* Constants required to setup the PIT. */
|
||||
#define portPIT_CLOCK_DIVISOR ( ( unsigned long ) 16 )
|
||||
#define portPIT_CLOCK_DIVISOR ( ( uint32_t ) 16 )
|
||||
#define portPIT_COUNTER_VALUE ( ( ( configCPU_CLOCK_HZ / portPIT_CLOCK_DIVISOR ) / 1000UL ) * portTICK_RATE_MS )
|
||||
|
||||
#define portINT_LEVEL_SENSITIVE 0
|
||||
#define portPIT_ENABLE ( ( unsigned short ) 0x1 << 24 )
|
||||
#define portPIT_INT_ENABLE ( ( unsigned short ) 0x1 << 25 )
|
||||
#define portPIT_ENABLE ( ( uint16_t ) 0x1 << 24 )
|
||||
#define portPIT_INT_ENABLE ( ( uint16_t ) 0x1 << 25 )
|
||||
/*-----------------------------------------------------------*/
|
||||
|
||||
/* Setup the timer to generate the tick interrupts. */
|
||||
|
@ -120,9 +120,9 @@ extern void vPortISRStartFirstTask( void );
|
|||
*
|
||||
* See header file for description.
|
||||
*/
|
||||
portSTACK_TYPE *pxPortInitialiseStack( portSTACK_TYPE *pxTopOfStack, pdTASK_CODE pxCode, void *pvParameters )
|
||||
StackType_t *pxPortInitialiseStack( StackType_t *pxTopOfStack, pdTASK_CODE pxCode, void *pvParameters )
|
||||
{
|
||||
portSTACK_TYPE *pxOriginalTOS;
|
||||
StackType_t *pxOriginalTOS;
|
||||
|
||||
pxOriginalTOS = pxTopOfStack;
|
||||
|
||||
|
@ -136,46 +136,46 @@ portSTACK_TYPE *pxOriginalTOS;
|
|||
/* First on the stack is the return address - which in this case is the
|
||||
start of the task. The offset is added to make the return address appear
|
||||
as it would within an IRQ ISR. */
|
||||
*pxTopOfStack = ( portSTACK_TYPE ) pxCode + portINSTRUCTION_SIZE;
|
||||
*pxTopOfStack = ( StackType_t ) pxCode + portINSTRUCTION_SIZE;
|
||||
pxTopOfStack--;
|
||||
|
||||
*pxTopOfStack = ( portSTACK_TYPE ) 0x00000000; /* R14 */
|
||||
*pxTopOfStack = ( StackType_t ) 0x00000000; /* R14 */
|
||||
pxTopOfStack--;
|
||||
*pxTopOfStack = ( portSTACK_TYPE ) pxOriginalTOS; /* Stack used when task starts goes in R13. */
|
||||
*pxTopOfStack = ( StackType_t ) pxOriginalTOS; /* Stack used when task starts goes in R13. */
|
||||
pxTopOfStack--;
|
||||
*pxTopOfStack = ( portSTACK_TYPE ) 0x12121212; /* R12 */
|
||||
*pxTopOfStack = ( StackType_t ) 0x12121212; /* R12 */
|
||||
pxTopOfStack--;
|
||||
*pxTopOfStack = ( portSTACK_TYPE ) 0x11111111; /* R11 */
|
||||
*pxTopOfStack = ( StackType_t ) 0x11111111; /* R11 */
|
||||
pxTopOfStack--;
|
||||
*pxTopOfStack = ( portSTACK_TYPE ) 0x10101010; /* R10 */
|
||||
*pxTopOfStack = ( StackType_t ) 0x10101010; /* R10 */
|
||||
pxTopOfStack--;
|
||||
*pxTopOfStack = ( portSTACK_TYPE ) 0x09090909; /* R9 */
|
||||
*pxTopOfStack = ( StackType_t ) 0x09090909; /* R9 */
|
||||
pxTopOfStack--;
|
||||
*pxTopOfStack = ( portSTACK_TYPE ) 0x08080808; /* R8 */
|
||||
*pxTopOfStack = ( StackType_t ) 0x08080808; /* R8 */
|
||||
pxTopOfStack--;
|
||||
*pxTopOfStack = ( portSTACK_TYPE ) 0x07070707; /* R7 */
|
||||
*pxTopOfStack = ( StackType_t ) 0x07070707; /* R7 */
|
||||
pxTopOfStack--;
|
||||
*pxTopOfStack = ( portSTACK_TYPE ) 0x06060606; /* R6 */
|
||||
*pxTopOfStack = ( StackType_t ) 0x06060606; /* R6 */
|
||||
pxTopOfStack--;
|
||||
*pxTopOfStack = ( portSTACK_TYPE ) 0x05050505; /* R5 */
|
||||
*pxTopOfStack = ( StackType_t ) 0x05050505; /* R5 */
|
||||
pxTopOfStack--;
|
||||
*pxTopOfStack = ( portSTACK_TYPE ) 0x04040404; /* R4 */
|
||||
*pxTopOfStack = ( StackType_t ) 0x04040404; /* R4 */
|
||||
pxTopOfStack--;
|
||||
*pxTopOfStack = ( portSTACK_TYPE ) 0x03030303; /* R3 */
|
||||
*pxTopOfStack = ( StackType_t ) 0x03030303; /* R3 */
|
||||
pxTopOfStack--;
|
||||
*pxTopOfStack = ( portSTACK_TYPE ) 0x02020202; /* R2 */
|
||||
*pxTopOfStack = ( StackType_t ) 0x02020202; /* R2 */
|
||||
pxTopOfStack--;
|
||||
*pxTopOfStack = ( portSTACK_TYPE ) 0x01010101; /* R1 */
|
||||
*pxTopOfStack = ( StackType_t ) 0x01010101; /* R1 */
|
||||
pxTopOfStack--;
|
||||
|
||||
/* When the task starts is will expect to find the function parameter in
|
||||
R0. */
|
||||
*pxTopOfStack = ( portSTACK_TYPE ) pvParameters; /* R0 */
|
||||
*pxTopOfStack = ( StackType_t ) pvParameters; /* R0 */
|
||||
pxTopOfStack--;
|
||||
|
||||
/* The last thing onto the stack is the status register, which is set for
|
||||
system mode, with interrupts enabled. */
|
||||
*pxTopOfStack = ( portSTACK_TYPE ) portINITIAL_SPSR;
|
||||
*pxTopOfStack = ( StackType_t ) portINITIAL_SPSR;
|
||||
|
||||
#ifdef THUMB_INTERWORK
|
||||
{
|
||||
|
@ -196,7 +196,7 @@ portSTACK_TYPE *pxOriginalTOS;
|
|||
}
|
||||
/*-----------------------------------------------------------*/
|
||||
|
||||
portBASE_TYPE xPortStartScheduler( void )
|
||||
BaseType_t xPortStartScheduler( void )
|
||||
{
|
||||
/* Start the timer that generates the tick ISR. Interrupts are disabled
|
||||
here already. */
|
||||
|
|
|
@ -84,12 +84,12 @@
|
|||
#include "AT91SAM7X256.h"
|
||||
|
||||
/* Constants required to handle interrupts. */
|
||||
#define portTIMER_MATCH_ISR_BIT ( ( unsigned char ) 0x01 )
|
||||
#define portCLEAR_VIC_INTERRUPT ( ( unsigned long ) 0 )
|
||||
#define portTIMER_MATCH_ISR_BIT ( ( uint8_t ) 0x01 )
|
||||
#define portCLEAR_VIC_INTERRUPT ( ( uint32_t ) 0 )
|
||||
|
||||
/* Constants required to handle critical sections. */
|
||||
#define portNO_CRITICAL_NESTING ( ( unsigned long ) 0 )
|
||||
volatile unsigned long ulCriticalNesting = 9999UL;
|
||||
#define portNO_CRITICAL_NESTING ( ( uint32_t ) 0 )
|
||||
volatile uint32_t ulCriticalNesting = 9999UL;
|
||||
|
||||
/*-----------------------------------------------------------*/
|
||||
|
||||
|
@ -149,7 +149,7 @@ void vPortYieldProcessor( void )
|
|||
void vNonPreemptiveTick( void ) __attribute__ ((interrupt ("IRQ")));
|
||||
void vNonPreemptiveTick( void )
|
||||
{
|
||||
unsigned long ulDummy;
|
||||
uint32_t ulDummy;
|
||||
|
||||
/* Increment the tick count - which may wake some tasks but as the
|
||||
preemptive scheduler is not being used any woken task is not given
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
FreeRTOS V7.6.0 - Copyright (C) 2013 Real Time Engineers Ltd.
|
||||
FreeRTOS V7.6.0 - Copyright (C) 2013 Real Time Engineers Ltd.
|
||||
All rights reserved
|
||||
|
||||
VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.
|
||||
|
@ -65,12 +65,12 @@
|
|||
|
||||
/*
|
||||
Changes from V3.2.3
|
||||
|
||||
|
||||
+ Modified portENTER_SWITCHING_ISR() to allow use with GCC V4.0.1.
|
||||
|
||||
Changes from V3.2.4
|
||||
|
||||
+ Removed the use of the %0 parameter within the assembler macros and
|
||||
+ Removed the use of the %0 parameter within the assembler macros and
|
||||
replaced them with hard coded registers. This will ensure the
|
||||
assembler does not select the link register as the temp register as
|
||||
was occasionally happening previously.
|
||||
|
@ -81,7 +81,7 @@
|
|||
Changes from V4.5.0
|
||||
|
||||
+ Removed the portENTER_SWITCHING_ISR() and portEXIT_SWITCHING_ISR() macros
|
||||
and replaced them with portYIELD_FROM_ISR() macro. Application code
|
||||
and replaced them with portYIELD_FROM_ISR() macro. Application code
|
||||
should now make use of the portSAVE_CONTEXT() and portRESTORE_CONTEXT()
|
||||
macros as per the V4.5.1 demo code.
|
||||
*/
|
||||
|
@ -94,7 +94,7 @@ extern "C" {
|
|||
#endif
|
||||
|
||||
/*-----------------------------------------------------------
|
||||
* Port specific definitions.
|
||||
* Port specific definitions.
|
||||
*
|
||||
* The settings in this file configure FreeRTOS correctly for the
|
||||
* given hardware and compiler.
|
||||
|
@ -109,24 +109,28 @@ extern "C" {
|
|||
#define portDOUBLE double
|
||||
#define portLONG long
|
||||
#define portSHORT short
|
||||
#define portSTACK_TYPE unsigned portLONG
|
||||
#define portSTACK_TYPE uint32_t
|
||||
#define portBASE_TYPE portLONG
|
||||
|
||||
typedef portSTACK_TYPE StackType_t;
|
||||
typedef long BaseType_t;
|
||||
typedef unsigned long UBaseType_t;
|
||||
|
||||
#if( configUSE_16_BIT_TICKS == 1 )
|
||||
typedef unsigned portSHORT portTickType;
|
||||
#define portMAX_DELAY ( portTickType ) 0xffff
|
||||
typedef uint16_t TickType_t;
|
||||
#define portMAX_DELAY ( TickType_t ) 0xffff
|
||||
#else
|
||||
typedef unsigned portLONG portTickType;
|
||||
#define portMAX_DELAY ( portTickType ) 0xffffffffUL
|
||||
typedef uint32_t TickType_t;
|
||||
#define portMAX_DELAY ( TickType_t ) 0xffffffffUL
|
||||
#endif
|
||||
/*-----------------------------------------------------------*/
|
||||
/*-----------------------------------------------------------*/
|
||||
|
||||
/* Architecture specifics. */
|
||||
#define portSTACK_GROWTH ( -1 )
|
||||
#define portTICK_RATE_MS ( ( portTickType ) 1000 / configTICK_RATE_HZ )
|
||||
#define portTICK_RATE_MS ( ( TickType_t ) 1000 / configTICK_RATE_HZ )
|
||||
#define portBYTE_ALIGNMENT 8
|
||||
#define portNOP() asm volatile ( "NOP" );
|
||||
/*-----------------------------------------------------------*/
|
||||
/*-----------------------------------------------------------*/
|
||||
|
||||
|
||||
/* Scheduler utilities. */
|
||||
|
@ -141,7 +145,7 @@ extern "C" {
|
|||
#define portRESTORE_CONTEXT() \
|
||||
{ \
|
||||
extern volatile void * volatile pxCurrentTCB; \
|
||||
extern volatile unsigned portLONG ulCriticalNesting; \
|
||||
extern volatile uint32_t ulCriticalNesting; \
|
||||
\
|
||||
/* Set the LR to the task stack. */ \
|
||||
asm volatile ( \
|
||||
|
@ -178,7 +182,7 @@ extern volatile unsigned portLONG ulCriticalNesting; \
|
|||
#define portSAVE_CONTEXT() \
|
||||
{ \
|
||||
extern volatile void * volatile pxCurrentTCB; \
|
||||
extern volatile unsigned portLONG ulCriticalNesting; \
|
||||
extern volatile uint32_t ulCriticalNesting; \
|
||||
\
|
||||
/* Push R0 as we are going to use the register. */ \
|
||||
asm volatile ( \
|
||||
|
@ -231,8 +235,8 @@ extern volatile unsigned portLONG ulCriticalNesting; \
|
|||
|
||||
/*
|
||||
* The interrupt management utilities can only be called from ARM mode. When
|
||||
* THUMB_INTERWORK is defined the utilities are defined as functions in
|
||||
* portISR.c to ensure a switch to ARM mode. When THUMB_INTERWORK is not
|
||||
* THUMB_INTERWORK is defined the utilities are defined as functions in
|
||||
* portISR.c to ensure a switch to ARM mode. When THUMB_INTERWORK is not
|
||||
* defined then the utilities are defined as macros here - as per other ports.
|
||||
*/
|
||||
|
||||
|
@ -243,7 +247,7 @@ extern volatile unsigned portLONG ulCriticalNesting; \
|
|||
|
||||
#define portDISABLE_INTERRUPTS() vPortDisableInterruptsFromThumb()
|
||||
#define portENABLE_INTERRUPTS() vPortEnableInterruptsFromThumb()
|
||||
|
||||
|
||||
#else
|
||||
|
||||
#define portDISABLE_INTERRUPTS() \
|
||||
|
@ -253,7 +257,7 @@ extern volatile unsigned portLONG ulCriticalNesting; \
|
|||
"ORR R0, R0, #0xC0 \n\t" /* Disable IRQ, FIQ. */ \
|
||||
"MSR CPSR, R0 \n\t" /* Write back modified value. */ \
|
||||
"LDMIA SP!, {R0} " ) /* Pop R0. */
|
||||
|
||||
|
||||
#define portENABLE_INTERRUPTS() \
|
||||
asm volatile ( \
|
||||
"STMDB SP!, {R0} \n\t" /* Push R0. */ \
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue