]> git.sur5r.net Git - freertos/blobdiff - FreeRTOS/Source/portable/CodeWarrior/HCS12/portmacro.h
Update version number to V8.0.0 (without the release candidate number).
[freertos] / FreeRTOS / Source / portable / CodeWarrior / HCS12 / portmacro.h
index acacd8150734e23217e473aca4ab9b3dddeaeb6a..035e173a93af656d56b5de60cac638664652fba3 100644 (file)
@@ -1,5 +1,6 @@
 /*\r
-    FreeRTOS V7.5.2 - Copyright (C) 2013 Real Time Engineers Ltd.\r
+    FreeRTOS V8.0.0 - Copyright (C) 2014 Real Time Engineers Ltd.\r
+    All rights reserved\r
 \r
     VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.\r
 \r
@@ -67,7 +68,7 @@
 #define PORTMACRO_H\r
 \r
 /*-----------------------------------------------------------\r
- * Port specific definitions.  \r
+ * Port specific definitions.\r
  *\r
  * The settings in this file configure FreeRTOS correctly for the\r
  * given hardware and compiler.\r
 #define portDOUBLE             double\r
 #define portLONG               long\r
 #define portSHORT              short\r
-#define portSTACK_TYPE unsigned portCHAR\r
+#define portSTACK_TYPE uint8_t\r
 #define portBASE_TYPE  char\r
 \r
+typedef portSTACK_TYPE StackType_t;\r
+typedef signed char BaseType_t;\r
+typedef unsigned char UBaseType_t;\r
+\r
 #if( configUSE_16_BIT_TICKS == 1 )\r
-       typedef unsigned portSHORT portTickType;\r
-       #define portMAX_DELAY ( portTickType ) 0xffff\r
+       typedef uint16_t TickType_t;\r
+       #define portMAX_DELAY ( TickType_t ) 0xffff\r
 #else\r
-       typedef unsigned portLONG portTickType;\r
-       #define portMAX_DELAY ( portTickType ) 0xffffffff\r
+       typedef uint32_t TickType_t;\r
+       #define portMAX_DELAY ( TickType_t ) 0xffffffffUL\r
 #endif\r
 /*-----------------------------------------------------------*/\r
 \r
 /* Hardware specifics. */\r
 #define portBYTE_ALIGNMENT                     1\r
 #define portSTACK_GROWTH                       ( -1 )\r
-#define portTICK_RATE_MS                       ( ( portTickType ) 1000 / configTICK_RATE_HZ )          \r
+#define portTICK_PERIOD_MS                     ( ( TickType_t ) 1000 / configTICK_RATE_HZ )\r
 #define portYIELD()                                    __asm( "swi" );\r
 #define portNOP()                                      __asm( "nop" );\r
 /*-----------------------------------------------------------*/\r
 \r
 /* Critical section handling. */\r
-#define portENABLE_INTERRUPTS()                                __asm( "cli" )  \r
+#define portENABLE_INTERRUPTS()                                __asm( "cli" )\r
 #define portDISABLE_INTERRUPTS()                       __asm( "sei" )\r
 \r
 /*\r
  */\r
 #define portENTER_CRITICAL()                                                                   \\r
 {                                                                                                                              \\r
-       extern volatile unsigned portBASE_TYPE uxCriticalNesting;       \\r
+       extern volatile UBaseType_t uxCriticalNesting;  \\r
                                                                                                                                \\r
        portDISABLE_INTERRUPTS();                                                                       \\r
        uxCriticalNesting++;                                                                            \\r
 \r
 /*\r
  * Interrupts are disabled so we can access the nesting count directly.  If the\r
- * nesting is found to be 0 (no nesting) then we are leaving the critical \r
+ * nesting is found to be 0 (no nesting) then we are leaving the critical\r
  * section and interrupts can be re-enabled.\r
  */\r
 #define  portEXIT_CRITICAL()                                                                   \\r
 {                                                                                                                              \\r
-       extern volatile unsigned portBASE_TYPE uxCriticalNesting;       \\r
+       extern volatile UBaseType_t uxCriticalNesting;  \\r
                                                                                                                                \\r
        uxCriticalNesting--;                                                                            \\r
        if( uxCriticalNesting == 0 )                                                            \\r
 \r
 /* Task utilities. */\r
 \r
-/* \r
- * These macros are very simple as the processor automatically saves and \r
+/*\r
+ * These macros are very simple as the processor automatically saves and\r
  * restores its registers as interrupts are entered and exited.  In\r
- * addition to the (automatically stacked) registers we also stack the \r
+ * addition to the (automatically stacked) registers we also stack the\r
  * critical nesting count.  Each task maintains its own critical nesting\r
  * count as it is legitimate for a task to yield from within a critical\r
  * section.  If the banked memory model is being used then the PPAGE\r
  */\r
 \r
 #ifdef BANKED_MODEL\r
-       /* \r
+       /*\r
         * Load the stack pointer for the task, then pull the critical nesting\r
-        * count and PPAGE register from the stack.  The remains of the \r
+        * count and PPAGE register from the stack.  The remains of the\r
         * context are restored by the RTI instruction.\r
         */\r
        #define portRESTORE_CONTEXT()                                                                   \\r
        {                                                                                                                               \\r
                extern volatile void * pxCurrentTCB;                                            \\r
-               extern volatile unsigned portBASE_TYPE uxCriticalNesting;       \\r
+               extern volatile UBaseType_t uxCriticalNesting;  \\r
                                                                                                                                        \\r
                __asm( "ldx pxCurrentTCB" );                                                            \\r
                __asm( "lds 0, x" );                                                                            \\r
                __asm( "staa 0x30" ); /* 0x30 = PPAGE */                                        \\r
        }\r
 \r
-       /* \r
+       /*\r
         * By the time this macro is called the processor has already stacked the\r
-        * registers.  Simply stack the nesting count and PPAGE value, then save \r
+        * registers.  Simply stack the nesting count and PPAGE value, then save\r
         * the task stack pointer.\r
         */\r
        #define portSAVE_CONTEXT()                                                                              \\r
        {                                                                                                                               \\r
                extern volatile void * pxCurrentTCB;                                            \\r
-               extern volatile unsigned portBASE_TYPE uxCriticalNesting;       \\r
+               extern volatile UBaseType_t uxCriticalNesting;  \\r
                                                                                                                                        \\r
                __asm( "ldaa 0x30" );  /* 0x30 = PPAGE */                                       \\r
                __asm( "psha" );                                                                                        \\r
        }\r
 #else\r
 \r
-       /* \r
+       /*\r
         * These macros are as per the BANKED versions above, but without saving\r
         * and restoring the PPAGE register.\r
         */\r
        #define portRESTORE_CONTEXT()                                                                   \\r
        {                                                                                                                               \\r
                extern volatile void * pxCurrentTCB;                                            \\r
-               extern volatile unsigned portBASE_TYPE uxCriticalNesting;       \\r
+               extern volatile UBaseType_t uxCriticalNesting;  \\r
                                                                                                                                        \\r
                __asm( "ldx pxCurrentTCB" );                                                            \\r
                __asm( "lds 0, x" );                                                                            \\r
        #define portSAVE_CONTEXT()                                                                              \\r
        {                                                                                                                               \\r
                extern volatile void * pxCurrentTCB;                                            \\r
-               extern volatile unsigned portBASE_TYPE uxCriticalNesting;       \\r
+               extern volatile UBaseType_t uxCriticalNesting;  \\r
                                                                                                                                        \\r
                __asm( "ldaa uxCriticalNesting" );                                                      \\r
                __asm( "psha" );                                                                                        \\r