]> git.sur5r.net Git - freertos/blobdiff - FreeRTOS/Source/portable/Tasking/ARM_CM4F/port.c
Replace standard types with stdint.h types.
[freertos] / FreeRTOS / Source / portable / Tasking / ARM_CM4F / port.c
index 02b99dbbbba5c648ab1a3ffb563df1fd5f38a5e0..3cc163bfafbe81a73b4b82afba1bb4b31c2527b6 100644 (file)
 #include "task.h"\r
 \r
 /* Constants required to manipulate the NVIC. */\r
-#define portNVIC_SYSTICK_CTRL          ( ( volatile unsigned long * ) 0xe000e010 )\r
-#define portNVIC_SYSTICK_LOAD          ( ( volatile unsigned long * ) 0xe000e014 )\r
-#define portNVIC_SYSPRI2                       ( ( volatile unsigned long * ) 0xe000ed20 )\r
+#define portNVIC_SYSTICK_CTRL          ( ( volatile uint32_t * ) 0xe000e010 )\r
+#define portNVIC_SYSTICK_LOAD          ( ( volatile uint32_t * ) 0xe000e014 )\r
+#define portNVIC_SYSPRI2                       ( ( volatile uint32_t * ) 0xe000ed20 )\r
 #define portNVIC_SYSTICK_CLK           0x00000004\r
 #define portNVIC_SYSTICK_INT           0x00000002\r
 #define portNVIC_SYSTICK_ENABLE                0x00000001\r
-#define portNVIC_PENDSV_PRI                    ( ( ( unsigned long ) configKERNEL_INTERRUPT_PRIORITY ) << 16 )\r
-#define portNVIC_SYSTICK_PRI           ( ( ( unsigned long ) configKERNEL_INTERRUPT_PRIORITY ) << 24 )\r
+#define portNVIC_PENDSV_PRI                    ( ( ( uint32_t ) configKERNEL_INTERRUPT_PRIORITY ) << 16 )\r
+#define portNVIC_SYSTICK_PRI           ( ( ( uint32_t ) configKERNEL_INTERRUPT_PRIORITY ) << 24 )\r
 \r
 /* Constants required to manipulate the VFP. */\r
-#define portFPCCR                                      ( ( volatile unsigned long * ) 0xe000ef34 ) /* Floating point context control register. */\r
+#define portFPCCR                                      ( ( volatile uint32_t * ) 0xe000ef34 ) /* Floating point context control register. */\r
 #define portASPEN_AND_LSPEN_BITS       ( 0x3UL << 30UL )\r
 \r
 /* Constants required to set up the initial stack. */\r
@@ -100,11 +100,11 @@ debugger. */
 \r
 /* The priority used by the kernel is assigned to a variable to make access\r
 from inline assembler easier. */\r
-const unsigned long ulKernelPriority = configKERNEL_INTERRUPT_PRIORITY;\r
+const uint32_t ulKernelPriority = configKERNEL_INTERRUPT_PRIORITY;\r
 \r
 /* Each task maintains its own interrupt status in the critical nesting\r
 variable. */\r
-static unsigned long ulCriticalNesting = 0xaaaaaaaaUL;\r
+static uint32_t ulCriticalNesting = 0xaaaaaaaaUL;\r
 \r
 /*\r
  * Setup the timer to generate the tick interrupts.\r
@@ -129,14 +129,14 @@ static void prvTaskExitError( void );
 \r
 /* This exists purely to allow the const to be used from within the\r
 port_asm.asm assembly file. */\r
-const unsigned long ulMaxSyscallInterruptPriorityConst = configMAX_SYSCALL_INTERRUPT_PRIORITY;\r
+const uint32_t ulMaxSyscallInterruptPriorityConst = configMAX_SYSCALL_INTERRUPT_PRIORITY;\r
 \r
 /*-----------------------------------------------------------*/\r
 \r
 /*\r
  * See header file for description.\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
        /* Simulate the stack frame as it would be created by a context switch\r
        interrupt. */\r
@@ -147,13 +147,13 @@ portSTACK_TYPE *pxPortInitialiseStack( portSTACK_TYPE *pxTopOfStack, pdTASK_CODE
 \r
        *pxTopOfStack = portINITIAL_XPSR;       /* xPSR */\r
        pxTopOfStack--;\r
-       *pxTopOfStack = ( portSTACK_TYPE ) pxCode;      /* PC */\r
+       *pxTopOfStack = ( StackType_t ) pxCode; /* PC */\r
        pxTopOfStack--;\r
-       *pxTopOfStack = ( portSTACK_TYPE ) portTASK_RETURN_ADDRESS;     /* LR */\r
+       *pxTopOfStack = ( StackType_t ) portTASK_RETURN_ADDRESS;        /* LR */\r
 \r
        /* Save code space by skipping register initialisation. */\r
        pxTopOfStack -= 5;      /* R12, R3, R2 and R1. */\r
-       *pxTopOfStack = ( portSTACK_TYPE ) pvParameters;        /* R0 */\r
+       *pxTopOfStack = ( StackType_t ) pvParameters;   /* R0 */\r
 \r
        /* A save method is being used that requires each task to maintain its\r
        own exec return value. */\r
@@ -183,7 +183,7 @@ static void prvTaskExitError( void )
 /*\r
  * See header file for description.\r
  */\r
-portBASE_TYPE xPortStartScheduler( void )\r
+BaseType_t xPortStartScheduler( void )\r
 {\r
        /* configMAX_SYSCALL_INTERRUPT_PRIORITY must not be set to 0.\r
        See http://www.FreeRTOS.org/RTOS-Cortex-M3-M4.html */\r
@@ -256,7 +256,7 @@ void vPortExitCritical( void )
 \r
 void SysTick_Handler( void )\r
 {\r
-unsigned long ulDummy;\r
+uint32_t ulDummy;\r
 \r
        ulDummy = portSET_INTERRUPT_MASK_FROM_ISR();\r
        {\r