Skip to content

Commit 2dfc514

Browse files
Skptakkar-rahul-awsaggarg
authored
Revert the formatting changes on MikroC ports. (#882)
Co-authored-by: Rahul Kar <118818625+kar-rahul-aws@users.noreply.github.com> Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
1 parent a8a17dc commit 2dfc514

File tree

2 files changed

+94
-98
lines changed

2 files changed

+94
-98
lines changed

portable/MikroC/ARM_CM4F/port.c

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -345,22 +345,22 @@ BaseType_t xPortStartScheduler( void )
345345
if( ulImplementedPrioBits == 8 )
346346
{
347347
/* When the hardware implements 8 priority bits, there is no way for
348-
* the software to configure PRIGROUP to not have sub-priorities. As
349-
* a result, the least significant bit is always used for sub-priority
350-
* and there are 128 preemption priorities and 2 sub-priorities.
351-
*
352-
* This may cause some confusion in some cases - for example, if
353-
* configMAX_SYSCALL_INTERRUPT_PRIORITY is set to 5, both 5 and 4
354-
* priority interrupts will be masked in Critical Sections as those
355-
* are at the same preemption priority. This may appear confusing as
356-
* 4 is higher (numerically lower) priority than
357-
* configMAX_SYSCALL_INTERRUPT_PRIORITY and therefore, should not
358-
* have been masked. Instead, if we set configMAX_SYSCALL_INTERRUPT_PRIORITY
359-
* to 4, this confusion does not happen and the behaviour remains the same.
360-
*
361-
* The following assert ensures that the sub-priority bit in the
362-
* configMAX_SYSCALL_INTERRUPT_PRIORITY is clear to avoid the above mentioned
363-
* confusion. */
348+
* the software to configure PRIGROUP to not have sub-priorities. As
349+
* a result, the least significant bit is always used for sub-priority
350+
* and there are 128 preemption priorities and 2 sub-priorities.
351+
*
352+
* This may cause some confusion in some cases - for example, if
353+
* configMAX_SYSCALL_INTERRUPT_PRIORITY is set to 5, both 5 and 4
354+
* priority interrupts will be masked in Critical Sections as those
355+
* are at the same preemption priority. This may appear confusing as
356+
* 4 is higher (numerically lower) priority than
357+
* configMAX_SYSCALL_INTERRUPT_PRIORITY and therefore, should not
358+
* have been masked. Instead, if we set configMAX_SYSCALL_INTERRUPT_PRIORITY
359+
* to 4, this confusion does not happen and the behaviour remains the same.
360+
*
361+
* The following assert ensures that the sub-priority bit in the
362+
* configMAX_SYSCALL_INTERRUPT_PRIORITY is clear to avoid the above mentioned
363+
* confusion. */
364364
configASSERT( ( configMAX_SYSCALL_INTERRUPT_PRIORITY & 0x1U ) == 0U );
365365
ulMaxPRIGROUPValue = 0;
366366
}

portable/MikroC/ARM_CM4F/portmacro.h

Lines changed: 78 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
*/
2828

2929
#ifndef PORTMACRO_H
30-
#define PORTMACRO_H
30+
#define PORTMACRO_H
3131

3232
/* *INDENT-OFF* */
3333
#ifdef __cplusplus
@@ -48,53 +48,53 @@
4848
/* The compiler needs to be told functions that are only referenced by pointer
4949
* are to be included in the build. NOTE: Omitting these lines will result in a
5050
* run-time crash, not a linker error! */
51-
#pragma funcall vTaskStartScheduler prvIdleTask
52-
#pragma funcall xTimerCreateTimerTask prvTimerTask
51+
#pragma funcall vTaskStartScheduler prvIdleTask
52+
#pragma funcall xTimerCreateTimerTask prvTimerTask
5353

5454
/* Type definitions. */
55-
#define portCHAR char
56-
#define portFLOAT float
57-
#define portDOUBLE double
58-
#define portLONG long
59-
#define portSHORT short
60-
#define portSTACK_TYPE uint32_t
61-
#define portBASE_TYPE long
62-
63-
typedef portSTACK_TYPE StackType_t;
64-
typedef long BaseType_t;
65-
typedef unsigned long UBaseType_t;
66-
67-
#if ( configTICK_TYPE_WIDTH_IN_BITS == TICK_TYPE_WIDTH_16_BITS )
68-
typedef uint16_t TickType_t;
69-
#define portMAX_DELAY ( TickType_t ) 0xffff
70-
#elif ( configTICK_TYPE_WIDTH_IN_BITS == TICK_TYPE_WIDTH_32_BITS )
71-
typedef uint32_t TickType_t;
72-
#define portMAX_DELAY ( TickType_t ) 0xffffffffUL
55+
#define portCHAR char
56+
#define portFLOAT float
57+
#define portDOUBLE double
58+
#define portLONG long
59+
#define portSHORT short
60+
#define portSTACK_TYPE uint32_t
61+
#define portBASE_TYPE long
62+
63+
typedef portSTACK_TYPE StackType_t;
64+
typedef long BaseType_t;
65+
typedef unsigned long UBaseType_t;
66+
67+
#if ( configTICK_TYPE_WIDTH_IN_BITS == TICK_TYPE_WIDTH_16_BITS )
68+
typedef uint16_t TickType_t;
69+
#define portMAX_DELAY ( TickType_t ) 0xffff
70+
#elif ( configTICK_TYPE_WIDTH_IN_BITS == TICK_TYPE_WIDTH_32_BITS )
71+
typedef uint32_t TickType_t;
72+
#define portMAX_DELAY ( TickType_t ) 0xffffffffUL
7373

7474
/* 32-bit tick type on a 32-bit architecture, so reads of the tick count do
7575
* not need to be guarded with a critical section. */
76-
#define portTICK_TYPE_IS_ATOMIC 1
77-
#else
78-
#error configTICK_TYPE_WIDTH_IN_BITS set to unsupported tick type width.
79-
#endif
76+
#define portTICK_TYPE_IS_ATOMIC 1
77+
#else
78+
#error configTICK_TYPE_WIDTH_IN_BITS set to unsupported tick type width.
79+
#endif
8080
/*-----------------------------------------------------------*/
8181

8282
/* Architecture specifics. */
83-
#define portSTACK_GROWTH ( -1 )
84-
#define portTICK_PERIOD_MS ( ( TickType_t ) 1000 / configTICK_RATE_HZ )
85-
#define portBYTE_ALIGNMENT 8
83+
#define portSTACK_GROWTH ( -1 )
84+
#define portTICK_PERIOD_MS ( ( TickType_t ) 1000 / configTICK_RATE_HZ )
85+
#define portBYTE_ALIGNMENT 8
8686
/*-----------------------------------------------------------*/
8787

8888
/* Scheduler utilities. */
89-
#define portYIELD() \
89+
#define portYIELD() \
9090
{ \
9191
/* Set a PendSV to request a context switch. */ \
9292
portNVIC_INT_CTRL_REG = portNVIC_PENDSVSET_BIT; \
9393
\
9494
/* Barriers are normally not required but do ensure the code is completely \
9595
* within the specified behaviour for the architecture. */ \
96-
__asm { dsb }; \
97-
__asm { isb }; \
96+
__asm{ dsb }; \
97+
__asm{ isb }; \
9898
}
9999

100100
#define portNVIC_INT_CTRL_REG ( *( ( volatile uint32_t * ) 0xe000ed04 ) )
@@ -116,91 +116,87 @@ typedef unsigned long UBaseType_t;
116116
/*-----------------------------------------------------------*/
117117

118118
/* Critical section management. */
119-
extern void vPortEnterCritical( void );
120-
extern void vPortExitCritical( void );
121-
#define portDISABLE_INTERRUPTS() CPU_REG_SET( CPU_BASEPRI, configMAX_SYSCALL_INTERRUPT_PRIORITY ); __asm { dsb }; __asm { isb }
122-
#define portENABLE_INTERRUPTS() CPU_REG_SET( CPU_BASEPRI, 0 );
123-
#define portENTER_CRITICAL() vPortEnterCritical()
124-
#define portEXIT_CRITICAL() vPortExitCritical()
125-
#define portSET_INTERRUPT_MASK_FROM_ISR() ulPortRaiseBASEPRI()
126-
#define portCLEAR_INTERRUPT_MASK_FROM_ISR( x ) CPU_REG_SET( CPU_BASEPRI, x ); /* Barrier instructions not used as this is only used to lower the basepri. */
119+
extern void vPortEnterCritical( void );
120+
extern void vPortExitCritical( void );
121+
#define portDISABLE_INTERRUPTS() CPU_REG_SET( CPU_BASEPRI, configMAX_SYSCALL_INTERRUPT_PRIORITY ); __asm{ dsb }; __asm{ isb }
122+
#define portENABLE_INTERRUPTS() CPU_REG_SET( CPU_BASEPRI, 0 );
123+
#define portENTER_CRITICAL() vPortEnterCritical()
124+
#define portEXIT_CRITICAL() vPortExitCritical()
125+
#define portSET_INTERRUPT_MASK_FROM_ISR() ulPortRaiseBASEPRI()
126+
#define portCLEAR_INTERRUPT_MASK_FROM_ISR( x ) CPU_REG_SET( CPU_BASEPRI, x ); /* Barrier instructions not used as this is only used to lower the basepri. */
127127

128128
/*-----------------------------------------------------------*/
129129

130130
/* Task function macros as described on the FreeRTOS.org WEB site. These are
131131
* not necessary for to use this port. They are defined so the common demo files
132132
* (which build with all the ports) will build. */
133-
#define portTASK_FUNCTION_PROTO( vFunction, pvParameters ) void vFunction( void * pvParameters )
134-
#define portTASK_FUNCTION( vFunction, pvParameters ) void vFunction( void * pvParameters )
133+
#define portTASK_FUNCTION_PROTO( vFunction, pvParameters ) void vFunction( void * pvParameters )
134+
#define portTASK_FUNCTION( vFunction, pvParameters ) void vFunction( void * pvParameters )
135135
/*-----------------------------------------------------------*/
136136

137137
/* Tickless idle/low power functionality. */
138-
#ifndef portSUPPRESS_TICKS_AND_SLEEP
139-
extern void vPortSuppressTicksAndSleep( TickType_t xExpectedIdleTime );
140-
#define portSUPPRESS_TICKS_AND_SLEEP( xExpectedIdleTime ) vPortSuppressTicksAndSleep( xExpectedIdleTime )
141-
#endif
138+
#ifndef portSUPPRESS_TICKS_AND_SLEEP
139+
extern void vPortSuppressTicksAndSleep( TickType_t xExpectedIdleTime );
140+
#define portSUPPRESS_TICKS_AND_SLEEP( xExpectedIdleTime ) vPortSuppressTicksAndSleep( xExpectedIdleTime )
141+
#endif
142142
/*-----------------------------------------------------------*/
143143

144144
/* Architecture specific optimisations. */
145-
#ifndef configUSE_PORT_OPTIMISED_TASK_SELECTION
146-
#define configUSE_PORT_OPTIMISED_TASK_SELECTION 1
147-
#endif
145+
#ifndef configUSE_PORT_OPTIMISED_TASK_SELECTION
146+
#define configUSE_PORT_OPTIMISED_TASK_SELECTION 1
147+
#endif
148148

149-
#if configUSE_PORT_OPTIMISED_TASK_SELECTION == 1
149+
#if configUSE_PORT_OPTIMISED_TASK_SELECTION == 1
150150

151151
/* Generic helper function. */
152-
__attribute__( ( always_inline ) ) static inline uint8_t ucPortCountLeadingZeros( uint32_t ulBitmap )
153-
{
154-
uint8_t ucReturn;
152+
__attribute__( ( always_inline ) ) static inline uint8_t ucPortCountLeadingZeros( uint32_t ulBitmap )
153+
{
154+
uint8_t ucReturn;
155155

156-
__asm volatile ( "clz %0, %1" : "=r" ( ucReturn ) : "r" ( ulBitmap ) );
156+
__asm volatile ( "clz %0, %1" : "=r" ( ucReturn ) : "r" ( ulBitmap ) );
157157

158-
return ucReturn;
159-
}
158+
return ucReturn;
159+
}
160160

161161
/* Check the configuration. */
162-
#if ( configMAX_PRIORITIES > 32 )
163-
#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.
164-
#endif
162+
#if ( configMAX_PRIORITIES > 32 )
163+
#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.
164+
#endif
165165

166166
/* Store/clear the ready priorities in a bit map. */
167-
#define portRECORD_READY_PRIORITY( uxPriority, uxReadyPriorities ) ( uxReadyPriorities ) |= ( 1UL << ( uxPriority ) )
168-
#define portRESET_READY_PRIORITY( uxPriority, uxReadyPriorities ) ( uxReadyPriorities ) &= ~( 1UL << ( uxPriority ) )
167+
#define portRECORD_READY_PRIORITY( uxPriority, uxReadyPriorities ) ( uxReadyPriorities ) |= ( 1UL << ( uxPriority ) )
168+
#define portRESET_READY_PRIORITY( uxPriority, uxReadyPriorities ) ( uxReadyPriorities ) &= ~( 1UL << ( uxPriority ) )
169169

170170
/*-----------------------------------------------------------*/
171171

172-
#define portGET_HIGHEST_PRIORITY( uxTopPriority, uxReadyPriorities ) uxTopPriority = ( 31UL - ( uint32_t ) ucPortCountLeadingZeros( ( uxReadyPriorities ) ) )
172+
#define portGET_HIGHEST_PRIORITY( uxTopPriority, uxReadyPriorities ) uxTopPriority = ( 31UL - ( uint32_t ) ucPortCountLeadingZeros( ( uxReadyPriorities ) ) )
173173

174-
#endif /* configUSE_PORT_OPTIMISED_TASK_SELECTION */
174+
#endif /* configUSE_PORT_OPTIMISED_TASK_SELECTION */
175175

176176
/*-----------------------------------------------------------*/
177177

178-
#ifdef configASSERT
179-
void vPortValidateInterruptPriority( void );
180-
#define portASSERT_IF_INTERRUPT_PRIORITY_INVALID() vPortValidateInterruptPriority()
181-
#endif
178+
#ifdef configASSERT
179+
void vPortValidateInterruptPriority( void );
180+
#define portASSERT_IF_INTERRUPT_PRIORITY_INVALID() vPortValidateInterruptPriority()
181+
#endif
182182

183183
/* portNOP() is not required by this port. */
184-
#define portNOP()
184+
#define portNOP()
185185

186-
BaseType_t xPortIsInsideInterrupt( void );
186+
BaseType_t xPortIsInsideInterrupt( void );
187187

188188
/*-----------------------------------------------------------*/
189189

190-
static inline uint32_t ulPortRaiseBASEPRI( void )
191-
{
192-
uint32_t ulOriginalBASEPRI;
193-
194-
ulOriginalBASEPRI = CPU_REG_GET( CPU_BASEPRI );
195-
CPU_REG_SET( CPU_BASEPRI, configMAX_SYSCALL_INTERRUPT_PRIORITY );
196-
__asm {
197-
dsb
198-
};
199-
__asm {
200-
isb
201-
};
202-
return ulOriginalBASEPRI;
203-
}
190+
static inline uint32_t ulPortRaiseBASEPRI( void )
191+
{
192+
uint32_t ulOriginalBASEPRI;
193+
194+
ulOriginalBASEPRI = CPU_REG_GET( CPU_BASEPRI );
195+
CPU_REG_SET( CPU_BASEPRI, configMAX_SYSCALL_INTERRUPT_PRIORITY );
196+
__asm{ dsb };
197+
__asm{ isb };
198+
return ulOriginalBASEPRI;
199+
}
204200
/*-----------------------------------------------------------*/
205201

206202
/* *INDENT-OFF* */

0 commit comments

Comments
 (0)