]> git.sur5r.net Git - freertos/blobdiff - FreeRTOS/Source/portable/IAR/ARM_CM3/portmacro.h
Replace standard types with stdint.h types.
[freertos] / FreeRTOS / Source / portable / IAR / ARM_CM3 / portmacro.h
index c3a31158c6aa9769b8bd764e0dcba0cde6f29767..7ab06393115fba96f7391f50cfc5900f618c73bb 100644 (file)
@@ -1,5 +1,5 @@
 /*\r
-    FreeRTOS V7.6.0 - Copyright (C) 2013 Real Time Engineers Ltd. \r
+    FreeRTOS V7.6.0 - Copyright (C) 2013 Real Time Engineers Ltd.\r
     All rights reserved\r
 \r
     VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.\r
@@ -87,27 +87,31 @@ extern "C" {
 #define portDOUBLE             double\r
 #define portLONG               long\r
 #define portSHORT              short\r
-#define portSTACK_TYPE unsigned portLONG\r
+#define portSTACK_TYPE uint32_t\r
 #define portBASE_TYPE  long\r
 \r
+typedef portSTACK_TYPE StackType_t;\r
+typedef long BaseType_t;\r
+typedef unsigned long UBaseType_t;\r
+\r
 #if( configUSE_16_BIT_TICKS == 1 )\r
-       typedef unsigned portSHORT portTickType;\r
+       typedef uint16_t TickType_t;\r
        #define portMAX_DELAY 0xffff\r
 #else\r
-       typedef unsigned portLONG portTickType;\r
+       typedef uint32_t TickType_t;\r
        #define portMAX_DELAY 0xffffffffUL\r
 #endif\r
 /*-----------------------------------------------------------*/\r
 \r
 /* Architecture specifics. */\r
 #define portSTACK_GROWTH                       ( -1 )\r
-#define portTICK_RATE_MS                       ( ( portTickType ) 1000 / configTICK_RATE_HZ )\r
+#define portTICK_RATE_MS                       ( ( TickType_t ) 1000 / configTICK_RATE_HZ )\r
 #define portBYTE_ALIGNMENT                     8\r
 /*-----------------------------------------------------------*/\r
 \r
 /* Scheduler utilities. */\r
 extern void vPortYield( void );\r
-#define portNVIC_INT_CTRL_REG          ( * ( ( volatile unsigned long * ) 0xe000ed04UL ) )\r
+#define portNVIC_INT_CTRL_REG          ( * ( ( volatile uint32_t * ) 0xe000ed04UL ) )\r
 #define portNVIC_PENDSVSET_BIT         ( 1UL << 28UL )\r
 #define portYIELD()                                    vPortYield()\r
 #define portEND_SWITCHING_ISR( xSwitchRequired ) if( xSwitchRequired ) portNVIC_INT_CTRL_REG = portNVIC_PENDSVSET_BIT\r
@@ -137,8 +141,8 @@ extern void vPortYield( void );
 /* Critical section management. */\r
 extern void vPortEnterCritical( void );\r
 extern void vPortExitCritical( void );\r
-extern unsigned long ulPortSetInterruptMask( void );\r
-extern void vPortClearInterruptMask( unsigned long ulNewMask );\r
+extern uint32_t ulPortSetInterruptMask( void );\r
+extern void vPortClearInterruptMask( uint32_t ulNewMask );\r
 \r
 #define portDISABLE_INTERRUPTS()                               ulPortSetInterruptMask()\r
 #define portENABLE_INTERRUPTS()                                        vPortClearInterruptMask( 0 )\r
@@ -150,7 +154,7 @@ extern void vPortClearInterruptMask( unsigned long ulNewMask );
 \r
 /* Tickless idle/low power functionality. */\r
 #ifndef portSUPPRESS_TICKS_AND_SLEEP\r
-       extern void vPortSuppressTicksAndSleep( portTickType xExpectedIdleTime );\r
+       extern void vPortSuppressTicksAndSleep( TickType_t xExpectedIdleTime );\r
        #define portSUPPRESS_TICKS_AND_SLEEP( xExpectedIdleTime ) vPortSuppressTicksAndSleep( xExpectedIdleTime )\r
 #endif\r
 /*-----------------------------------------------------------*/\r