uxAutoReload replaced with xAutoReload to improve MISRA compliance (#429)

* Created xTimerGetReloadMode and uxTimerGetReloadMode.

* Changed the use of uxAutoReload to xAutoReload

* updated history.txt

* Update History.txt

Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>

* Update timers.c

Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>

* Added xTimerGetReloadMode to lexicon.txt

* uncrustified timers.c

* Fix formatting check

Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>

Co-authored-by: Gaurav-Aggarwal-AWS <33462878+aggarg@users.noreply.github.com>
Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
This commit is contained in:
Joseph Julicher 2021-12-27 11:36:59 -07:00 committed by GitHub
parent 53b9a80b8e
commit 455df7a07a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 54 additions and 27 deletions

3
.github/lexicon.txt vendored
View file

@ -2398,7 +2398,6 @@ utf
utilised utilised
utilises utilises
uxarraysize uxarraysize
uxautoreload
uxbasepriority uxbasepriority
uxbits uxbits
uxbitstoclear uxbitstoclear
@ -2674,6 +2673,7 @@ xabab
xabac xabac
xactivetimerlist xactivetimerlist
xaltregions xaltregions
xautoreload
xavailableheapspaceinbytes xavailableheapspaceinbytes
xb xb
xbacklighttimer xbacklighttimer
@ -3070,6 +3070,7 @@ xtimercreatestatic
xtimerdelete xtimerdelete
xtimergetexpirytime xtimergetexpirytime
xtimergetperiod xtimergetperiod
xtimergetreloadmode
xtimergettimerdaemontaskhandle xtimergettimerdaemontaskhandle
xtimeristimeractive xtimeristimeractive
xtimerlistitem xtimerlistitem

View file

@ -2,6 +2,13 @@ Changes between FreeRTOS V10.4.5 and TBD
Documentation and download available at https://www.FreeRTOS.org/ Documentation and download available at https://www.FreeRTOS.org/
+ Changed uxAutoReload parameter in timer functions to xAutoReload. The
type is now BaseType_t. This matches the type of pdTRUE and pdFALSE.
The new function xTimerGetAutoReload() provides the auto-reload state as
a BaseType_t. The legacy function uxTimerGetAutoReload is retained with the
original UBaseType_t return value.
Changes between FreeRTOS V10.4.4 and FreeRTOS V10.4.5 released September 10 2021 Changes between FreeRTOS V10.4.4 and FreeRTOS V10.4.5 released September 10 2021
See https://www.FreeRTOS.org/FreeRTOS-V10.4.5.html See https://www.FreeRTOS.org/FreeRTOS-V10.4.5.html

View file

@ -94,7 +94,7 @@ typedef void (* PendedFunction_t)( void *,
/** /**
* TimerHandle_t xTimerCreate( const char * const pcTimerName, * TimerHandle_t xTimerCreate( const char * const pcTimerName,
* TickType_t xTimerPeriodInTicks, * TickType_t xTimerPeriodInTicks,
* UBaseType_t uxAutoReload, * BaseType_t xAutoReload,
* void * pvTimerID, * void * pvTimerID,
* TimerCallbackFunction_t pxCallbackFunction ); * TimerCallbackFunction_t pxCallbackFunction );
* *
@ -127,9 +127,9 @@ typedef void (* PendedFunction_t)( void *,
* to ( 500 / portTICK_PERIOD_MS ) provided configTICK_RATE_HZ is less than or * to ( 500 / portTICK_PERIOD_MS ) provided configTICK_RATE_HZ is less than or
* equal to 1000. Time timer period must be greater than 0. * equal to 1000. Time timer period must be greater than 0.
* *
* @param uxAutoReload If uxAutoReload is set to pdTRUE then the timer will * @param xAutoReload If xAutoReload is set to pdTRUE then the timer will
* expire repeatedly with a frequency set by the xTimerPeriodInTicks parameter. * expire repeatedly with a frequency set by the xTimerPeriodInTicks parameter.
* If uxAutoReload is set to pdFALSE then the timer will be a one-shot timer and * If xAutoReload is set to pdFALSE then the timer will be a one-shot timer and
* enter the dormant state after it expires. * enter the dormant state after it expires.
* *
* @param pvTimerID An identifier that is assigned to the timer being created. * @param pvTimerID An identifier that is assigned to the timer being created.
@ -231,7 +231,7 @@ typedef void (* PendedFunction_t)( void *,
#if ( configSUPPORT_DYNAMIC_ALLOCATION == 1 ) #if ( configSUPPORT_DYNAMIC_ALLOCATION == 1 )
TimerHandle_t xTimerCreate( const char * const pcTimerName, /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ TimerHandle_t xTimerCreate( const char * const pcTimerName, /*lint !e971 Unqualified char types are allowed for strings and single characters only. */
const TickType_t xTimerPeriodInTicks, const TickType_t xTimerPeriodInTicks,
const UBaseType_t uxAutoReload, const BaseType_t xAutoReload,
void * const pvTimerID, void * const pvTimerID,
TimerCallbackFunction_t pxCallbackFunction ) PRIVILEGED_FUNCTION; TimerCallbackFunction_t pxCallbackFunction ) PRIVILEGED_FUNCTION;
#endif #endif
@ -239,7 +239,7 @@ typedef void (* PendedFunction_t)( void *,
/** /**
* TimerHandle_t xTimerCreateStatic(const char * const pcTimerName, * TimerHandle_t xTimerCreateStatic(const char * const pcTimerName,
* TickType_t xTimerPeriodInTicks, * TickType_t xTimerPeriodInTicks,
* UBaseType_t uxAutoReload, * BaseType_t xAutoReload,
* void * pvTimerID, * void * pvTimerID,
* TimerCallbackFunction_t pxCallbackFunction, * TimerCallbackFunction_t pxCallbackFunction,
* StaticTimer_t *pxTimerBuffer ); * StaticTimer_t *pxTimerBuffer );
@ -273,9 +273,9 @@ typedef void (* PendedFunction_t)( void *,
* to ( 500 / portTICK_PERIOD_MS ) provided configTICK_RATE_HZ is less than or * to ( 500 / portTICK_PERIOD_MS ) provided configTICK_RATE_HZ is less than or
* equal to 1000. The timer period must be greater than 0. * equal to 1000. The timer period must be greater than 0.
* *
* @param uxAutoReload If uxAutoReload is set to pdTRUE then the timer will * @param xAutoReload If xAutoReload is set to pdTRUE then the timer will
* expire repeatedly with a frequency set by the xTimerPeriodInTicks parameter. * expire repeatedly with a frequency set by the xTimerPeriodInTicks parameter.
* If uxAutoReload is set to pdFALSE then the timer will be a one-shot timer and * If xAutoReload is set to pdFALSE then the timer will be a one-shot timer and
* enter the dormant state after it expires. * enter the dormant state after it expires.
* *
* @param pvTimerID An identifier that is assigned to the timer being created. * @param pvTimerID An identifier that is assigned to the timer being created.
@ -361,7 +361,7 @@ typedef void (* PendedFunction_t)( void *,
#if ( configSUPPORT_STATIC_ALLOCATION == 1 ) #if ( configSUPPORT_STATIC_ALLOCATION == 1 )
TimerHandle_t xTimerCreateStatic( const char * const pcTimerName, /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ TimerHandle_t xTimerCreateStatic( const char * const pcTimerName, /*lint !e971 Unqualified char types are allowed for strings and single characters only. */
const TickType_t xTimerPeriodInTicks, const TickType_t xTimerPeriodInTicks,
const UBaseType_t uxAutoReload, const BaseType_t xAutoReload,
void * const pvTimerID, void * const pvTimerID,
TimerCallbackFunction_t pxCallbackFunction, TimerCallbackFunction_t pxCallbackFunction,
StaticTimer_t * pxTimerBuffer ) PRIVILEGED_FUNCTION; StaticTimer_t * pxTimerBuffer ) PRIVILEGED_FUNCTION;
@ -1252,7 +1252,7 @@ BaseType_t xTimerPendFunctionCall( PendedFunction_t xFunctionToPend,
const char * pcTimerGetName( TimerHandle_t xTimer ) PRIVILEGED_FUNCTION; /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ const char * pcTimerGetName( TimerHandle_t xTimer ) PRIVILEGED_FUNCTION; /*lint !e971 Unqualified char types are allowed for strings and single characters only. */
/** /**
* void vTimerSetReloadMode( TimerHandle_t xTimer, const UBaseType_t uxAutoReload ); * void vTimerSetReloadMode( TimerHandle_t xTimer, const BaseType_t xAutoReload );
* *
* Updates a timer to be either an auto-reload timer, in which case the timer * Updates a timer to be either an auto-reload timer, in which case the timer
* automatically resets itself each time it expires, or a one-shot timer, in * automatically resets itself each time it expires, or a one-shot timer, in
@ -1260,14 +1260,28 @@ const char * pcTimerGetName( TimerHandle_t xTimer ) PRIVILEGED_FUNCTION; /*lint
* *
* @param xTimer The handle of the timer being updated. * @param xTimer The handle of the timer being updated.
* *
* @param uxAutoReload If uxAutoReload is set to pdTRUE then the timer will * @param xAutoReload If xAutoReload is set to pdTRUE then the timer will
* expire repeatedly with a frequency set by the timer's period (see the * expire repeatedly with a frequency set by the timer's period (see the
* xTimerPeriodInTicks parameter of the xTimerCreate() API function). If * xTimerPeriodInTicks parameter of the xTimerCreate() API function). If
* uxAutoReload is set to pdFALSE then the timer will be a one-shot timer and * xAutoReload is set to pdFALSE then the timer will be a one-shot timer and
* enter the dormant state after it expires. * enter the dormant state after it expires.
*/ */
void vTimerSetReloadMode( TimerHandle_t xTimer, void vTimerSetReloadMode( TimerHandle_t xTimer,
const UBaseType_t uxAutoReload ) PRIVILEGED_FUNCTION; const BaseType_t xAutoReload ) PRIVILEGED_FUNCTION;
/**
* BaseType_t xTimerGetReloadMode( TimerHandle_t xTimer );
*
* Queries a timer to determine if it is an auto-reload timer, in which case the timer
* automatically resets itself each time it expires, or a one-shot timer, in
* which case the timer will only expire once unless it is manually restarted.
*
* @param xTimer The handle of the timer being queried.
*
* @return If the timer is an auto-reload timer then pdTRUE is returned, otherwise
* pdFALSE is returned.
*/
BaseType_t xTimerGetReloadMode( TimerHandle_t xTimer ) PRIVILEGED_FUNCTION;
/** /**
* UBaseType_t uxTimerGetReloadMode( TimerHandle_t xTimer ); * UBaseType_t uxTimerGetReloadMode( TimerHandle_t xTimer );

View file

@ -224,7 +224,7 @@
*/ */
static void prvInitialiseNewTimer( const char * const pcTimerName, /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ static void prvInitialiseNewTimer( const char * const pcTimerName, /*lint !e971 Unqualified char types are allowed for strings and single characters only. */
const TickType_t xTimerPeriodInTicks, const TickType_t xTimerPeriodInTicks,
const UBaseType_t uxAutoReload, const BaseType_t xAutoReload,
void * const pvTimerID, void * const pvTimerID,
TimerCallbackFunction_t pxCallbackFunction, TimerCallbackFunction_t pxCallbackFunction,
Timer_t * pxNewTimer ) PRIVILEGED_FUNCTION; Timer_t * pxNewTimer ) PRIVILEGED_FUNCTION;
@ -287,7 +287,7 @@
TimerHandle_t xTimerCreate( const char * const pcTimerName, /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ TimerHandle_t xTimerCreate( const char * const pcTimerName, /*lint !e971 Unqualified char types are allowed for strings and single characters only. */
const TickType_t xTimerPeriodInTicks, const TickType_t xTimerPeriodInTicks,
const UBaseType_t uxAutoReload, const BaseType_t xAutoReload,
void * const pvTimerID, void * const pvTimerID,
TimerCallbackFunction_t pxCallbackFunction ) TimerCallbackFunction_t pxCallbackFunction )
{ {
@ -301,7 +301,7 @@
* and has not been started. The auto-reload bit may get set in * and has not been started. The auto-reload bit may get set in
* prvInitialiseNewTimer. */ * prvInitialiseNewTimer. */
pxNewTimer->ucStatus = 0x00; pxNewTimer->ucStatus = 0x00;
prvInitialiseNewTimer( pcTimerName, xTimerPeriodInTicks, uxAutoReload, pvTimerID, pxCallbackFunction, pxNewTimer ); prvInitialiseNewTimer( pcTimerName, xTimerPeriodInTicks, xAutoReload, pvTimerID, pxCallbackFunction, pxNewTimer );
} }
return pxNewTimer; return pxNewTimer;
@ -314,7 +314,7 @@
TimerHandle_t xTimerCreateStatic( const char * const pcTimerName, /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ TimerHandle_t xTimerCreateStatic( const char * const pcTimerName, /*lint !e971 Unqualified char types are allowed for strings and single characters only. */
const TickType_t xTimerPeriodInTicks, const TickType_t xTimerPeriodInTicks,
const UBaseType_t uxAutoReload, const BaseType_t xAutoReload,
void * const pvTimerID, void * const pvTimerID,
TimerCallbackFunction_t pxCallbackFunction, TimerCallbackFunction_t pxCallbackFunction,
StaticTimer_t * pxTimerBuffer ) StaticTimer_t * pxTimerBuffer )
@ -343,7 +343,7 @@
* auto-reload bit may get set in prvInitialiseNewTimer(). */ * auto-reload bit may get set in prvInitialiseNewTimer(). */
pxNewTimer->ucStatus = tmrSTATUS_IS_STATICALLY_ALLOCATED; pxNewTimer->ucStatus = tmrSTATUS_IS_STATICALLY_ALLOCATED;
prvInitialiseNewTimer( pcTimerName, xTimerPeriodInTicks, uxAutoReload, pvTimerID, pxCallbackFunction, pxNewTimer ); prvInitialiseNewTimer( pcTimerName, xTimerPeriodInTicks, xAutoReload, pvTimerID, pxCallbackFunction, pxNewTimer );
} }
return pxNewTimer; return pxNewTimer;
@ -354,7 +354,7 @@
static void prvInitialiseNewTimer( const char * const pcTimerName, /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ static void prvInitialiseNewTimer( const char * const pcTimerName, /*lint !e971 Unqualified char types are allowed for strings and single characters only. */
const TickType_t xTimerPeriodInTicks, const TickType_t xTimerPeriodInTicks,
const UBaseType_t uxAutoReload, const BaseType_t xAutoReload,
void * const pvTimerID, void * const pvTimerID,
TimerCallbackFunction_t pxCallbackFunction, TimerCallbackFunction_t pxCallbackFunction,
Timer_t * pxNewTimer ) Timer_t * pxNewTimer )
@ -374,7 +374,7 @@
pxNewTimer->pxCallbackFunction = pxCallbackFunction; pxNewTimer->pxCallbackFunction = pxCallbackFunction;
vListInitialiseItem( &( pxNewTimer->xTimerListItem ) ); vListInitialiseItem( &( pxNewTimer->xTimerListItem ) );
if( uxAutoReload != pdFALSE ) if( xAutoReload != pdFALSE )
{ {
pxNewTimer->ucStatus |= tmrSTATUS_IS_AUTORELOAD; pxNewTimer->ucStatus |= tmrSTATUS_IS_AUTORELOAD;
} }
@ -449,14 +449,14 @@
/*-----------------------------------------------------------*/ /*-----------------------------------------------------------*/
void vTimerSetReloadMode( TimerHandle_t xTimer, void vTimerSetReloadMode( TimerHandle_t xTimer,
const UBaseType_t uxAutoReload ) const BaseType_t xAutoReload )
{ {
Timer_t * pxTimer = xTimer; Timer_t * pxTimer = xTimer;
configASSERT( xTimer ); configASSERT( xTimer );
taskENTER_CRITICAL(); taskENTER_CRITICAL();
{ {
if( uxAutoReload != pdFALSE ) if( xAutoReload != pdFALSE )
{ {
pxTimer->ucStatus |= tmrSTATUS_IS_AUTORELOAD; pxTimer->ucStatus |= tmrSTATUS_IS_AUTORELOAD;
} }
@ -469,10 +469,10 @@
} }
/*-----------------------------------------------------------*/ /*-----------------------------------------------------------*/
UBaseType_t uxTimerGetReloadMode( TimerHandle_t xTimer ) BaseType_t xTimerGetReloadMode( TimerHandle_t xTimer )
{ {
Timer_t * pxTimer = xTimer; Timer_t * pxTimer = xTimer;
UBaseType_t uxReturn; BaseType_t xReturn;
configASSERT( xTimer ); configASSERT( xTimer );
taskENTER_CRITICAL(); taskENTER_CRITICAL();
@ -480,17 +480,22 @@
if( ( pxTimer->ucStatus & tmrSTATUS_IS_AUTORELOAD ) == 0 ) if( ( pxTimer->ucStatus & tmrSTATUS_IS_AUTORELOAD ) == 0 )
{ {
/* Not an auto-reload timer. */ /* Not an auto-reload timer. */
uxReturn = ( UBaseType_t ) pdFALSE; xReturn = pdFALSE;
} }
else else
{ {
/* Is an auto-reload timer. */ /* Is an auto-reload timer. */
uxReturn = ( UBaseType_t ) pdTRUE; xReturn = pdTRUE;
} }
} }
taskEXIT_CRITICAL(); taskEXIT_CRITICAL();
return uxReturn; return xReturn;
}
UBaseType_t uxTimerGetReloadMode( TimerHandle_t xTimer )
{
return ( UBaseType_t ) xTimerGetReloadMode( xTimer );
} }
/*-----------------------------------------------------------*/ /*-----------------------------------------------------------*/