]> git.sur5r.net Git - freertos/blobdiff - FreeRTOS/Source/portable/CCS/MSP430X/port.c
Replace standard types with stdint.h types.
[freertos] / FreeRTOS / Source / portable / CCS / MSP430X / port.c
index 4dae94cfcfa750b5a2fcff1ee5ac2805340b04ce..69d81325ccdc6f56b66dd92da35612aedb775986 100644 (file)
 \r
 /* Constants required for hardware setup.  The tick ISR runs off the ACLK,\r
 not the MCLK. */\r
-#define portACLK_FREQUENCY_HZ                  ( ( portTickType ) 32768 )\r
-#define portINITIAL_CRITICAL_NESTING   ( ( unsigned short ) 10 )\r
-#define portFLAGS_INT_ENABLED                  ( ( portSTACK_TYPE ) 0x08 )\r
+#define portACLK_FREQUENCY_HZ                  ( ( TickType_t ) 32768 )\r
+#define portINITIAL_CRITICAL_NESTING   ( ( uint16_t ) 10 )\r
+#define portFLAGS_INT_ENABLED                  ( ( StackType_t ) 0x08 )\r
 \r
 /* We require the address of the pxCurrentTCB variable, but don't want to know\r
 any details of its type. */\r
-typedef void tskTCB;\r
-extern volatile tskTCB * volatile pxCurrentTCB;\r
+typedef void TCB_t;\r
+extern volatile TCB_t * volatile pxCurrentTCB;\r
 \r
 /* Each task maintains a count of the critical section nesting depth.  Each\r
 time a critical section is entered the count is incremented.  Each time a\r
@@ -90,7 +90,7 @@ being re-enabled if the count is zero.
 usCriticalNesting will get set to zero when the scheduler starts, but must\r
 not be initialised to zero as this will cause problems during the startup\r
 sequence. */\r
-volatile unsigned short usCriticalNesting = portINITIAL_CRITICAL_NESTING;\r
+volatile uint16_t usCriticalNesting = portINITIAL_CRITICAL_NESTING;\r
 /*-----------------------------------------------------------*/\r
 \r
 \r
@@ -107,83 +107,83 @@ void vPortSetupTimerInterrupt( void );
  *\r
  * See the header file portable.h.\r
  */\r
-portSTACK_TYPE *pxPortInitialiseStack( portSTACK_TYPE *pxTopOfStack, pdTASK_CODE pxCode, void *pvParameters )\r
+StackType_t *pxPortInitialiseStack( StackType_t *pxTopOfStack, pdTASK_CODE pxCode, void *pvParameters )\r
 {\r
-unsigned short *pusTopOfStack;\r
-unsigned long *pulTopOfStack, ulTemp;\r
+uint16_t *pusTopOfStack;\r
+uint32_t *pulTopOfStack, ulTemp;\r
 \r
        /*\r
                Place a few bytes of known values on the bottom of the stack.\r
                This is just useful for debugging and can be included if required.\r
 \r
-               *pxTopOfStack = ( portSTACK_TYPE ) 0x1111;\r
+               *pxTopOfStack = ( StackType_t ) 0x1111;\r
                pxTopOfStack--;\r
-               *pxTopOfStack = ( portSTACK_TYPE ) 0x2222;\r
+               *pxTopOfStack = ( StackType_t ) 0x2222;\r
                pxTopOfStack--;\r
-               *pxTopOfStack = ( portSTACK_TYPE ) 0x3333;\r
+               *pxTopOfStack = ( StackType_t ) 0x3333;\r
                pxTopOfStack--;\r
        */\r
 \r
        /* Data types are need either 16 bits or 32 bits depending on the data \r
        and code model used. */\r
-       if( sizeof( pxCode ) == sizeof( unsigned short ) )\r
+       if( sizeof( pxCode ) == sizeof( uint16_t ) )\r
        {\r
-               pusTopOfStack = ( unsigned short * ) pxTopOfStack;\r
-               ulTemp = ( unsigned long ) pxCode;\r
-               *pusTopOfStack = ( unsigned short ) ulTemp;\r
+               pusTopOfStack = ( uint16_t * ) pxTopOfStack;\r
+               ulTemp = ( uint32_t ) pxCode;\r
+               *pusTopOfStack = ( uint16_t ) ulTemp;\r
        }\r
        else\r
        {\r
                /* Make room for a 20 bit value stored as a 32 bit value. */\r
-               pusTopOfStack = ( unsigned short * ) pxTopOfStack;              \r
+               pusTopOfStack = ( uint16_t * ) pxTopOfStack;            \r
                pusTopOfStack--;\r
-               pulTopOfStack = ( unsigned long * ) pusTopOfStack;\r
-               *pulTopOfStack = ( unsigned long ) pxCode;\r
+               pulTopOfStack = ( uint32_t * ) pusTopOfStack;\r
+               *pulTopOfStack = ( uint32_t ) pxCode;\r
        }\r
 \r
        pusTopOfStack--;\r
        *pusTopOfStack = portFLAGS_INT_ENABLED;\r
-       pusTopOfStack -= ( sizeof( portSTACK_TYPE ) / 2 );\r
+       pusTopOfStack -= ( sizeof( StackType_t ) / 2 );\r
        \r
        /* From here on the size of stacked items depends on the memory model. */\r
-       pxTopOfStack = ( portSTACK_TYPE * ) pusTopOfStack;\r
+       pxTopOfStack = ( StackType_t * ) pusTopOfStack;\r
 \r
        /* Next the general purpose registers. */\r
        #ifdef PRELOAD_REGISTER_VALUES\r
-               *pxTopOfStack = ( portSTACK_TYPE ) 0xffff;\r
+               *pxTopOfStack = ( StackType_t ) 0xffff;\r
                pxTopOfStack--;\r
-               *pxTopOfStack = ( portSTACK_TYPE ) 0xeeee;\r
+               *pxTopOfStack = ( StackType_t ) 0xeeee;\r
                pxTopOfStack--;\r
-               *pxTopOfStack = ( portSTACK_TYPE ) 0xdddd;\r
+               *pxTopOfStack = ( StackType_t ) 0xdddd;\r
                pxTopOfStack--;\r
-               *pxTopOfStack = ( portSTACK_TYPE ) pvParameters;\r
+               *pxTopOfStack = ( StackType_t ) pvParameters;\r
                pxTopOfStack--;\r
-               *pxTopOfStack = ( portSTACK_TYPE ) 0xbbbb;\r
+               *pxTopOfStack = ( StackType_t ) 0xbbbb;\r
                pxTopOfStack--;\r
-               *pxTopOfStack = ( portSTACK_TYPE ) 0xaaaa;\r
+               *pxTopOfStack = ( StackType_t ) 0xaaaa;\r
                pxTopOfStack--;\r
-               *pxTopOfStack = ( portSTACK_TYPE ) 0x9999;\r
+               *pxTopOfStack = ( StackType_t ) 0x9999;\r
                pxTopOfStack--;\r
-               *pxTopOfStack = ( portSTACK_TYPE ) 0x8888;\r
+               *pxTopOfStack = ( StackType_t ) 0x8888;\r
                pxTopOfStack--; \r
-               *pxTopOfStack = ( portSTACK_TYPE ) 0x5555;\r
+               *pxTopOfStack = ( StackType_t ) 0x5555;\r
                pxTopOfStack--;\r
-               *pxTopOfStack = ( portSTACK_TYPE ) 0x6666;\r
+               *pxTopOfStack = ( StackType_t ) 0x6666;\r
                pxTopOfStack--;\r
-               *pxTopOfStack = ( portSTACK_TYPE ) 0x5555;\r
+               *pxTopOfStack = ( StackType_t ) 0x5555;\r
                pxTopOfStack--;\r
-               *pxTopOfStack = ( portSTACK_TYPE ) 0x4444;\r
+               *pxTopOfStack = ( StackType_t ) 0x4444;\r
                pxTopOfStack--;\r
        #else\r
                pxTopOfStack -= 3;\r
-               *pxTopOfStack = ( portSTACK_TYPE ) pvParameters;\r
+               *pxTopOfStack = ( StackType_t ) pvParameters;\r
                pxTopOfStack -= 9;\r
        #endif\r
 \r
        /* A variable is used to keep track of the critical section nesting.\r
        This variable has to be stored as part of the task context and is\r
        initially set to zero. */\r
-       *pxTopOfStack = ( portSTACK_TYPE ) portNO_CRITICAL_SECTION_NESTING;     \r
+       *pxTopOfStack = ( StackType_t ) portNO_CRITICAL_SECTION_NESTING;        \r
 \r
        /* Return a pointer to the top of the stack we have generated so this can\r
        be stored in the task control block for the task. */\r