2828
2929
3030#ifndef PORTMACRO_H
31- #define PORTMACRO_H
31+ #define PORTMACRO_H
3232
3333/* *INDENT-OFF* */
3434#ifdef __cplusplus
4747 */
4848
4949/* Type definitions. */
50- #define portCHAR char
51- #define portFLOAT float
52- #define portDOUBLE double
53- #define portLONG long
54- #define portSHORT short
55- #define portSTACK_TYPE uint32_t
56- #define portBASE_TYPE long
57-
58- typedef portSTACK_TYPE StackType_t ;
59- typedef long BaseType_t ;
60- typedef unsigned long UBaseType_t ;
61-
62- #if ( configTICK_TYPE_WIDTH_IN_BITS == TICK_TYPE_WIDTH_16_BITS )
63- typedef uint16_t TickType_t ;
64- #define portMAX_DELAY ( TickType_t ) 0xffff
65- #elif ( configTICK_TYPE_WIDTH_IN_BITS == TICK_TYPE_WIDTH_32_BITS )
66- typedef uint32_t TickType_t ;
67- #define portMAX_DELAY ( TickType_t ) 0xffffffffUL
50+ #define portCHAR char
51+ #define portFLOAT float
52+ #define portDOUBLE double
53+ #define portLONG long
54+ #define portSHORT short
55+ #define portSTACK_TYPE uint32_t
56+ #define portBASE_TYPE long
57+
58+ typedef portSTACK_TYPE StackType_t ;
59+ typedef long BaseType_t ;
60+ typedef unsigned long UBaseType_t ;
61+
62+ #if ( configTICK_TYPE_WIDTH_IN_BITS == TICK_TYPE_WIDTH_16_BITS )
63+ typedef uint16_t TickType_t ;
64+ #define portMAX_DELAY ( TickType_t ) 0xffff
65+ #elif ( configTICK_TYPE_WIDTH_IN_BITS == TICK_TYPE_WIDTH_32_BITS )
66+ typedef uint32_t TickType_t ;
67+ #define portMAX_DELAY ( TickType_t ) 0xffffffffUL
6868
6969/* 32-bit tick type on a 32-bit architecture, so reads of the tick count do
7070 * not need to be guarded with a critical section. */
71- #define portTICK_TYPE_IS_ATOMIC 1
72- #else
73- #error configTICK_TYPE_WIDTH_IN_BITS set to unsupported tick type width.
74- #endif
71+ #define portTICK_TYPE_IS_ATOMIC 1
72+ #else
73+ #error configTICK_TYPE_WIDTH_IN_BITS set to unsupported tick type width.
74+ #endif
7575/*-----------------------------------------------------------*/
7676
7777/* Architecture specifics. */
78- #define portSTACK_GROWTH ( -1 )
79- #define portTICK_PERIOD_MS ( ( TickType_t ) 1000 / configTICK_RATE_HZ )
80- #define portBYTE_ALIGNMENT 8
78+ #define portSTACK_GROWTH ( -1 )
79+ #define portTICK_PERIOD_MS ( ( TickType_t ) 1000 / configTICK_RATE_HZ )
80+ #define portBYTE_ALIGNMENT 8
8181
8282/*-----------------------------------------------------------*/
8383
8484/* Compiler directives. */
85- #define portWEAK_SYMBOL __attribute__( ( weak ) )
85+ #define portWEAK_SYMBOL __attribute__( ( weak ) )
8686
8787/*-----------------------------------------------------------*/
8888
8989/* Scheduler utilities. */
90- #define portYIELD () \
90+ #define portYIELD () \
9191 { \
9292 /* Set a PendSV to request a context switch. */ \
9393 portNVIC_INT_CTRL_REG = portNVIC_PENDSVSET_BIT ; \
94- __asm( " dsb" ); \
95- __asm( " isb" ); \
94+ __asm( " dsb" ); \
95+ __asm( " isb" ); \
9696 }
9797
9898#define portNVIC_INT_CTRL_REG ( *( ( volatile uint32_t * ) 0xe000ed04 ) )
@@ -115,68 +115,68 @@ typedef unsigned long UBaseType_t;
115115/*-----------------------------------------------------------*/
116116
117117/* Architecture specific optimisations. */
118- #ifndef configUSE_PORT_OPTIMISED_TASK_SELECTION
119- #define configUSE_PORT_OPTIMISED_TASK_SELECTION 1
120- #endif
118+ #ifndef configUSE_PORT_OPTIMISED_TASK_SELECTION
119+ #define configUSE_PORT_OPTIMISED_TASK_SELECTION 1
120+ #endif
121121
122- #if configUSE_PORT_OPTIMISED_TASK_SELECTION == 1
122+ #if configUSE_PORT_OPTIMISED_TASK_SELECTION == 1
123123
124124/* Check the configuration. */
125- #if ( configMAX_PRIORITIES > 32 )
126- #error configUSE_PORT_OPTIMISED_TASK_SELECTION can only be set to 1 when configMAX_PRIORITIES is less than or equal to 32. It is very rare that a system requires more than 10 to 15 difference priorities as tasks that share a priority will time slice.
127- #endif
125+ #if ( configMAX_PRIORITIES > 32 )
126+ #error configUSE_PORT_OPTIMISED_TASK_SELECTION can only be set to 1 when configMAX_PRIORITIES is less than or equal to 32. It is very rare that a system requires more than 10 to 15 difference priorities as tasks that share a priority will time slice.
127+ #endif
128128
129129/* Store/clear the ready priorities in a bit map. */
130- #define portRECORD_READY_PRIORITY ( uxPriority , uxReadyPriorities ) ( uxReadyPriorities ) |= ( 1UL << ( uxPriority ) )
131- #define portRESET_READY_PRIORITY ( uxPriority , uxReadyPriorities ) ( uxReadyPriorities ) &= ~( 1UL << ( uxPriority ) )
130+ #define portRECORD_READY_PRIORITY ( uxPriority , uxReadyPriorities ) ( uxReadyPriorities ) |= ( 1UL << ( uxPriority ) )
131+ #define portRESET_READY_PRIORITY ( uxPriority , uxReadyPriorities ) ( uxReadyPriorities ) &= ~( 1UL << ( uxPriority ) )
132132
133133/*-----------------------------------------------------------*/
134134
135- #define portGET_HIGHEST_PRIORITY ( uxTopPriority , uxReadyPriorities ) uxTopPriority = ( 31 - __clz( ( uxReadyPriorities ) ) )
135+ #define portGET_HIGHEST_PRIORITY ( uxTopPriority , uxReadyPriorities ) uxTopPriority = ( 31 - __clz( ( uxReadyPriorities ) ) )
136136
137- #endif /* configUSE_PORT_OPTIMISED_TASK_SELECTION */
137+ #endif /* configUSE_PORT_OPTIMISED_TASK_SELECTION */
138138/*-----------------------------------------------------------*/
139139
140140/* Critical section management. */
141- extern void vPortEnterCritical ( void );
142- extern void vPortExitCritical ( void );
141+ extern void vPortEnterCritical ( void );
142+ extern void vPortExitCritical ( void );
143143
144- #define portDISABLE_INTERRUPTS () \
144+ #define portDISABLE_INTERRUPTS () \
145145 { \
146146 _set_interrupt_priority( configMAX_SYSCALL_INTERRUPT_PRIORITY ); \
147- __asm( " dsb" ); \
148- __asm( " isb" ); \
147+ __asm( " dsb"); \
148+ __asm( " isb"); \
149149 }
150150
151- #define portENABLE_INTERRUPTS () _set_interrupt_priority( 0 )
152- #define portENTER_CRITICAL () vPortEnterCritical()
153- #define portEXIT_CRITICAL () vPortExitCritical()
154- #define portSET_INTERRUPT_MASK_FROM_ISR () _set_interrupt_priority( configMAX_SYSCALL_INTERRUPT_PRIORITY ); __asm( " dsb" ); __asm( " isb" )
155- #define portCLEAR_INTERRUPT_MASK_FROM_ISR ( x ) _set_interrupt_priority( x )
151+ #define portENABLE_INTERRUPTS () _set_interrupt_priority( 0 )
152+ #define portENTER_CRITICAL () vPortEnterCritical()
153+ #define portEXIT_CRITICAL () vPortExitCritical()
154+ #define portSET_INTERRUPT_MASK_FROM_ISR () _set_interrupt_priority( configMAX_SYSCALL_INTERRUPT_PRIORITY ); __asm( " dsb" ); __asm( " isb")
155+ #define portCLEAR_INTERRUPT_MASK_FROM_ISR ( x ) _set_interrupt_priority( x )
156156/*-----------------------------------------------------------*/
157157
158158/* Tickless idle/low power functionality. */
159- #ifndef portSUPPRESS_TICKS_AND_SLEEP
160- extern void vPortSuppressTicksAndSleep ( TickType_t xExpectedIdleTime );
161- #define portSUPPRESS_TICKS_AND_SLEEP ( xExpectedIdleTime ) vPortSuppressTicksAndSleep( xExpectedIdleTime )
162- #endif
159+ #ifndef portSUPPRESS_TICKS_AND_SLEEP
160+ extern void vPortSuppressTicksAndSleep ( TickType_t xExpectedIdleTime );
161+ #define portSUPPRESS_TICKS_AND_SLEEP ( xExpectedIdleTime ) vPortSuppressTicksAndSleep( xExpectedIdleTime )
162+ #endif
163163
164164/*-----------------------------------------------------------*/
165165
166166/* Task function macros as described on the FreeRTOS.org WEB site. These are
167167 * not necessary for to use this port. They are defined so the common demo files
168168 * (which build with all the ports) will build. */
169- #define portTASK_FUNCTION_PROTO ( vFunction , pvParameters ) void vFunction( void * pvParameters )
170- #define portTASK_FUNCTION ( vFunction , pvParameters ) void vFunction( void * pvParameters )
169+ #define portTASK_FUNCTION_PROTO ( vFunction , pvParameters ) void vFunction( void * pvParameters )
170+ #define portTASK_FUNCTION ( vFunction , pvParameters ) void vFunction( void * pvParameters )
171171/*-----------------------------------------------------------*/
172172
173- #ifdef configASSERT
174- void vPortValidateInterruptPriority ( void );
175- #define portASSERT_IF_INTERRUPT_PRIORITY_INVALID () vPortValidateInterruptPriority()
176- #endif
173+ #ifdef configASSERT
174+ void vPortValidateInterruptPriority ( void );
175+ #define portASSERT_IF_INTERRUPT_PRIORITY_INVALID () vPortValidateInterruptPriority()
176+ #endif
177177
178178/* portNOP() is not required by this port. */
179- #define portNOP ()
179+ #define portNOP ()
180180
181181/*-----------------------------------------------------------*/
182182
0 commit comments