From: rtel Date: Fri, 27 Dec 2013 12:10:23 +0000 (+0000) Subject: Change the type used for strings and single characters from signed char to just char. X-Git-Tag: V8.0.0rc1~19 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=187bf77c03f73cb4e43b706b14b00e1a88a1f843;p=freertos Change the type used for strings and single characters from signed char to just char. git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@2142 1d2547de-c912-0410-9cb9-b8ca96c0e9e2 --- diff --git a/FreeRTOS/Source/include/queue.h b/FreeRTOS/Source/include/queue.h index 559f19e6e..5a4b81ae7 100644 --- a/FreeRTOS/Source/include/queue.h +++ b/FreeRTOS/Source/include/queue.h @@ -1514,7 +1514,7 @@ portBASE_TYPE xQueueGiveMutexRecursive( xQueueHandle pxMutex ) PRIVILEGED_FUNCTI * preferably in ROM/Flash), not on the stack. */ #if configQUEUE_REGISTRY_SIZE > 0 - void vQueueAddToRegistry( xQueueHandle xQueue, signed char *pcName ) PRIVILEGED_FUNCTION; + void vQueueAddToRegistry( xQueueHandle xQueue, char *pcName ) PRIVILEGED_FUNCTION; /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ #endif /* diff --git a/FreeRTOS/Source/include/task.h b/FreeRTOS/Source/include/task.h index 184366df2..12fc1980b 100644 --- a/FreeRTOS/Source/include/task.h +++ b/FreeRTOS/Source/include/task.h @@ -130,7 +130,7 @@ typedef struct xMEMORY_REGION typedef struct xTASK_PARAMETERS { pdTASK_CODE pvTaskCode; - const signed char * const pcName; + const char * const pcName; /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ unsigned short usStackDepth; void *pvParameters; unsigned portBASE_TYPE uxPriority; @@ -143,7 +143,7 @@ in the system. */ typedef struct xTASK_STATUS { xTaskHandle xHandle; /* The handle of the task to which the rest of the information in the structure relates. */ - const signed char *pcTaskName; /* A pointer to the task's name. This value will be invalid if the task was deleted since the structure was populated! */ + const char *pcTaskName; /* A pointer to the task's name. This value will be invalid if the task was deleted since the structure was populated! */ /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ unsigned portBASE_TYPE xTaskNumber; /* A number unique to the task. */ eTaskState eCurrentState; /* The state in which the task existed when the structure was populated. */ unsigned portBASE_TYPE uxCurrentPriority; /* The priority at which the task was running (may be inherited) when the structure was populated. */ @@ -243,7 +243,7 @@ is used in assert() statements. */ *
  portBASE_TYPE xTaskCreate(
 							  pdTASK_CODE pvTaskCode,
-							  const signed char * const pcName,
+							  const char * const pcName,
 							  unsigned short usStackDepth,
 							  void *pvParameters,
 							  unsigned portBASE_TYPE uxPriority,
@@ -1077,7 +1077,7 @@ unsigned portBASE_TYPE uxTaskGetNumberOfTasks( void ) PRIVILEGED_FUNCTION;
 
 /**
  * task. h
- * 
signed char *pcTaskGetTaskName( xTaskHandle xTaskToQuery );
+ *
char *pcTaskGetTaskName( xTaskHandle xTaskToQuery );
* * @return The text (human readable) name of the task referenced by the handle * xTaskToQuery. A task can query its own name by either passing in its own @@ -1087,7 +1087,7 @@ unsigned portBASE_TYPE uxTaskGetNumberOfTasks( void ) PRIVILEGED_FUNCTION; * \defgroup pcTaskGetTaskName pcTaskGetTaskName * \ingroup TaskUtils */ -signed char *pcTaskGetTaskName( xTaskHandle xTaskToQuery ); +char *pcTaskGetTaskName( xTaskHandle xTaskToQuery ) PRIVILEGED_FUNCTION; /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ /** * task.h @@ -1199,7 +1199,7 @@ xTaskHandle xTaskGetIdleTaskHandle( void ); // This example demonstrates how a human readable table of run time stats // information is generated from raw data provided by uxTaskGetSystemState(). // The human readable table is written to pcWriteBuffer - void vTaskGetRunTimeStats( signed char *pcWriteBuffer ) + void vTaskGetRunTimeStats( char *pcWriteBuffer ) { xTaskStatusType *pxTaskStatusArray; volatile unsigned portBASE_TYPE uxArraySize, x; @@ -1238,13 +1238,13 @@ xTaskHandle xTaskGetIdleTaskHandle( void ); if( ulStatsAsPercentage > 0UL ) { - sprintf( ( char * ) pcWriteBuffer, ( char * ) "%s\t\t%lu\t\t%lu%%\r\n", pxTaskStatusArray[ x ].pcTaskName, pxTaskStatusArray[ x ].ulRunTimeCounter, ulStatsAsPercentage ); + sprintf( pcWriteBuffer, "%s\t\t%lu\t\t%lu%%\r\n", pxTaskStatusArray[ x ].pcTaskName, pxTaskStatusArray[ x ].ulRunTimeCounter, ulStatsAsPercentage ); } else { // If the percentage is zero here then the task has // consumed less than 1% of the total run time. - sprintf( ( char * ) pcWriteBuffer, ( char * ) "%s\t\t%lu\t\t<1%%\r\n", pxTaskStatusArray[ x ].pcTaskName, pxTaskStatusArray[ x ].ulRunTimeCounter ); + sprintf( pcWriteBuffer, "%s\t\t%lu\t\t<1%%\r\n", pxTaskStatusArray[ x ].pcTaskName, pxTaskStatusArray[ x ].ulRunTimeCounter ); } pcWriteBuffer += strlen( ( char * ) pcWriteBuffer ); @@ -1304,7 +1304,7 @@ unsigned portBASE_TYPE uxTaskGetSystemState( xTaskStatusType * const pxTaskStatu * \defgroup vTaskList vTaskList * \ingroup TaskUtils */ -void vTaskList( signed char * pcWriteBuffer ) PRIVILEGED_FUNCTION; +void vTaskList( char * pcWriteBuffer ) PRIVILEGED_FUNCTION; /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ /** * task. h @@ -1358,7 +1358,7 @@ void vTaskList( signed char * pcWriteBuffer ) PRIVILEGED_FUNCTION; * \defgroup vTaskGetRunTimeStats vTaskGetRunTimeStats * \ingroup TaskUtils */ -void vTaskGetRunTimeStats( signed char *pcWriteBuffer ) PRIVILEGED_FUNCTION; +void vTaskGetRunTimeStats( char *pcWriteBuffer ) PRIVILEGED_FUNCTION; /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ /*----------------------------------------------------------- * SCHEDULER INTERNALS AVAILABLE FOR PORTING PURPOSES @@ -1515,7 +1515,7 @@ void vTaskPriorityDisinherit( xTaskHandle const pxMutexHolder ) PRIVILEGED_FUNCT * Generic version of the task creation function which is in turn called by the * xTaskCreate() and xTaskCreateRestricted() macros. */ -signed portBASE_TYPE xTaskGenericCreate( pdTASK_CODE pxTaskCode, const signed char * const pcName, const unsigned short usStackDepth, void * const pvParameters, unsigned portBASE_TYPE uxPriority, xTaskHandle * const pxCreatedTask, portSTACK_TYPE * const puxStackBuffer, const xMemoryRegion * const xRegions ) PRIVILEGED_FUNCTION; +signed portBASE_TYPE xTaskGenericCreate( pdTASK_CODE pxTaskCode, const char * const pcName, const unsigned short usStackDepth, void * const pvParameters, unsigned portBASE_TYPE uxPriority, xTaskHandle * const pxCreatedTask, portSTACK_TYPE * const puxStackBuffer, const xMemoryRegion * const xRegions ) PRIVILEGED_FUNCTION; /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ /* * Get the uxTCBNumber assigned to the task referenced by the xTask parameter. diff --git a/FreeRTOS/Source/include/timers.h b/FreeRTOS/Source/include/timers.h index 8b6e95216..ddb876391 100644 --- a/FreeRTOS/Source/include/timers.h +++ b/FreeRTOS/Source/include/timers.h @@ -105,7 +105,7 @@ typedef void * xTimerHandle; typedef void (*tmrTIMER_CALLBACK)( xTimerHandle xTimer ); /** - * xTimerHandle xTimerCreate( const signed char * const pcTimerName, + * xTimerHandle xTimerCreate( const char * const pcTimerName, * portTickType xTimerPeriodInTicks, * unsigned portBASE_TYPE uxAutoReload, * void * pvTimerID, @@ -232,7 +232,7 @@ typedef void (*tmrTIMER_CALLBACK)( xTimerHandle xTimer ); * } * @endverbatim */ -xTimerHandle xTimerCreate( const signed char * const pcTimerName, const portTickType xTimerPeriodInTicks, const unsigned portBASE_TYPE uxAutoReload, void * const pvTimerID, tmrTIMER_CALLBACK pxCallbackFunction ) PRIVILEGED_FUNCTION; +xTimerHandle xTimerCreate( const char * const pcTimerName, const portTickType xTimerPeriodInTicks, const unsigned portBASE_TYPE uxAutoReload, void * const pvTimerID, tmrTIMER_CALLBACK pxCallbackFunction ) PRIVILEGED_FUNCTION; /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ /** * void *pvTimerGetTimerID( xTimerHandle xTimer ); diff --git a/FreeRTOS/Source/portable/GCC/ARM_CM3_MPU/port.c b/FreeRTOS/Source/portable/GCC/ARM_CM3_MPU/port.c index 140812a31..e776faf24 100644 --- a/FreeRTOS/Source/portable/GCC/ARM_CM3_MPU/port.c +++ b/FreeRTOS/Source/portable/GCC/ARM_CM3_MPU/port.c @@ -170,7 +170,7 @@ static void prvSVCHandler( unsigned long *pulRegisters ) __attribute__(( noinlin /* * Prototypes for all the MPU wrappers. */ -signed portBASE_TYPE MPU_xTaskGenericCreate( pdTASK_CODE pvTaskCode, const signed char * const pcName, unsigned short usStackDepth, void *pvParameters, unsigned portBASE_TYPE uxPriority, xTaskHandle *pxCreatedTask, portSTACK_TYPE *puxStackBuffer, const xMemoryRegion * const xRegions ); +signed portBASE_TYPE MPU_xTaskGenericCreate( pdTASK_CODE pvTaskCode, const char * const pcName, unsigned short usStackDepth, void *pvParameters, unsigned portBASE_TYPE uxPriority, xTaskHandle *pxCreatedTask, portSTACK_TYPE *puxStackBuffer, const xMemoryRegion * const xRegions ); void MPU_vTaskAllocateMPURegions( xTaskHandle xTask, const xMemoryRegion * const xRegions ); void MPU_vTaskDelete( xTaskHandle pxTaskToDelete ); void MPU_vTaskDelayUntil( portTickType * const pxPreviousWakeTime, portTickType xTimeIncrement ); @@ -185,8 +185,8 @@ void MPU_vTaskSuspendAll( void ); signed portBASE_TYPE MPU_xTaskResumeAll( void ); portTickType MPU_xTaskGetTickCount( void ); unsigned portBASE_TYPE MPU_uxTaskGetNumberOfTasks( void ); -void MPU_vTaskList( signed char *pcWriteBuffer ); -void MPU_vTaskGetRunTimeStats( signed char *pcWriteBuffer ); +void MPU_vTaskList( char *pcWriteBuffer ); +void MPU_vTaskGetRunTimeStats( char *pcWriteBuffer ); void MPU_vTaskSetApplicationTaskTag( xTaskHandle xTask, pdTASK_HOOK_CODE pxTagValue ); pdTASK_HOOK_CODE MPU_xTaskGetApplicationTaskTag( xTaskHandle xTask ); portBASE_TYPE MPU_xTaskCallApplicationTaskHook( xTaskHandle xTask, void *pvParameter ); @@ -206,7 +206,7 @@ portBASE_TYPE MPU_xQueueTakeMutexRecursive( xQueueHandle xMutex, portTickType xB portBASE_TYPE MPU_xQueueGiveMutexRecursive( xQueueHandle xMutex ); signed portBASE_TYPE MPU_xQueueAltGenericSend( xQueueHandle pxQueue, const void * const pvItemToQueue, portTickType xTicksToWait, portBASE_TYPE xCopyPosition ); signed portBASE_TYPE MPU_xQueueAltGenericReceive( xQueueHandle pxQueue, void * const pvBuffer, portTickType xTicksToWait, portBASE_TYPE xJustPeeking ); -void MPU_vQueueAddToRegistry( xQueueHandle xQueue, signed char *pcName ); +void MPU_vQueueAddToRegistry( xQueueHandle xQueue, char *pcName ); void MPU_vQueueDelete( xQueueHandle xQueue ); void *MPU_pvPortMalloc( size_t xSize ); void MPU_vPortFree( void *pv ); @@ -673,7 +673,7 @@ unsigned long ul; } /*-----------------------------------------------------------*/ -signed portBASE_TYPE MPU_xTaskGenericCreate( pdTASK_CODE pvTaskCode, const signed char * const pcName, unsigned short usStackDepth, void *pvParameters, unsigned portBASE_TYPE uxPriority, xTaskHandle *pxCreatedTask, portSTACK_TYPE *puxStackBuffer, const xMemoryRegion * const xRegions ) +signed portBASE_TYPE MPU_xTaskGenericCreate( pdTASK_CODE pvTaskCode, const char * const pcName, unsigned short usStackDepth, void *pvParameters, unsigned portBASE_TYPE uxPriority, xTaskHandle *pxCreatedTask, portSTACK_TYPE *puxStackBuffer, const xMemoryRegion * const xRegions ) { signed portBASE_TYPE xReturn; portBASE_TYPE xRunningPrivileged = prvRaisePrivilege(); @@ -854,7 +854,7 @@ portBASE_TYPE xRunningPrivileged = prvRaisePrivilege(); /*-----------------------------------------------------------*/ #if ( configUSE_TRACE_FACILITY == 1 ) - void MPU_vTaskList( signed char *pcWriteBuffer ) + void MPU_vTaskList( char *pcWriteBuffer ) { portBASE_TYPE xRunningPrivileged = prvRaisePrivilege(); @@ -865,7 +865,7 @@ portBASE_TYPE xRunningPrivileged = prvRaisePrivilege(); /*-----------------------------------------------------------*/ #if ( configGENERATE_RUN_TIME_STATS == 1 ) - void MPU_vTaskGetRunTimeStats( signed char *pcWriteBuffer ) + void MPU_vTaskGetRunTimeStats( char *pcWriteBuffer ) { portBASE_TYPE xRunningPrivileged = prvRaisePrivilege(); @@ -1161,7 +1161,7 @@ signed portBASE_TYPE xReturn; /*-----------------------------------------------------------*/ #if configQUEUE_REGISTRY_SIZE > 0 - void MPU_vQueueAddToRegistry( xQueueHandle xQueue, signed char *pcName ) + void MPU_vQueueAddToRegistry( xQueueHandle xQueue, char *pcName ) { portBASE_TYPE xRunningPrivileged = prvRaisePrivilege(); diff --git a/FreeRTOS/Source/portable/MSVC-MingW/port.c b/FreeRTOS/Source/portable/MSVC-MingW/port.c index 39fc22664..e7d98984d 100644 --- a/FreeRTOS/Source/portable/MSVC-MingW/port.c +++ b/FreeRTOS/Source/portable/MSVC-MingW/port.c @@ -1,5 +1,5 @@ /* - FreeRTOS V7.6.0 - Copyright (C) 2013 Real Time Engineers Ltd. + FreeRTOS V7.6.0 - Copyright (C) 2013 Real Time Engineers Ltd. All rights reserved VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION. @@ -80,13 +80,13 @@ /* * Created as a high priority thread, this function uses a timer to simulate * a tick interrupt being generated on an embedded target. In this Windows - * environment the timer does not achieve anything approaching real time + * environment the timer does not achieve anything approaching real time * performance though. */ static DWORD WINAPI prvSimulatedPeripheralTimer( LPVOID lpParameter ); -/* - * Process all the simulated interrupts - each represented by a bit in +/* + * Process all the simulated interrupts - each represented by a bit in * ulPendingInterrupts variable. */ static void prvProcessSimulatedInterrupts( void ); @@ -109,7 +109,7 @@ static BOOL WINAPI prvEndProcess( DWORD dwCtrlType ); /* The WIN32 simulator runs each task in a thread. The context switching is managed by the threads, so the task stack does not have to be managed directly, although the task stack is still used to hold an xThreadState structure this is -the only thing it will ever hold. The structure indirectly maps the task handle +the only thing it will ever hold. The structure indirectly maps the task handle to a thread handle. */ typedef struct { @@ -122,21 +122,21 @@ typedef struct bit represents one interrupt, so a maximum of 32 interrupts can be simulated. */ static volatile unsigned long ulPendingInterrupts = 0UL; -/* An event used to inform the simulated interrupt processing thread (a high +/* An event used to inform the simulated interrupt processing thread (a high priority thread that simulated interrupt processing) that an interrupt is pending. */ static void *pvInterruptEvent = NULL; -/* Mutex used to protect all the simulated interrupt variables that are accessed +/* Mutex used to protect all the simulated interrupt variables that are accessed by multiple threads. */ static void *pvInterruptEventMutex = NULL; -/* The critical nesting count for the currently executing task. This is -initialised to a non-zero value so interrupts do not become enabled during -the initialisation phase. As each task has its own critical nesting value -ulCriticalNesting will get set to zero when the first task runs. This +/* The critical nesting count for the currently executing task. This is +initialised to a non-zero value so interrupts do not become enabled during +the initialisation phase. As each task has its own critical nesting value +ulCriticalNesting will get set to zero when the first task runs. This initialisation is probably not critical in this simulated environment as the -simulated interrupt handlers do not get created until the FreeRTOS scheduler is +simulated interrupt handlers do not get created until the FreeRTOS scheduler is started anyway. */ static unsigned long ulCriticalNesting = 9999UL; @@ -178,11 +178,11 @@ TIMECAPS xTimeCaps; for(;;) { - /* Wait until the timer expires and we can access the simulated interrupt - variables. *NOTE* this is not a 'real time' way of generating tick - events as the next wake time should be relative to the previous wake - time, not the time that Sleep() is called. It is done this way to - prevent overruns in this very non real time simulated/emulated + /* Wait until the timer expires and we can access the simulated interrupt + variables. *NOTE* this is not a 'real time' way of generating tick + events as the next wake time should be relative to the previous wake + time, not the time that Sleep() is called. It is done this way to + prevent overruns in this very non real time simulated/emulated environment. */ if( portTICK_RATE_MS < xMinimumWindowsBlockTime ) { @@ -200,14 +200,14 @@ TIMECAPS xTimeCaps; /* The timer has expired, generate the simulated tick event. */ ulPendingInterrupts |= ( 1 << portINTERRUPT_TICK ); - /* The interrupt is now pending - notify the simulated interrupt + /* The interrupt is now pending - notify the simulated interrupt handler thread. */ if( ulCriticalNesting == 0 ) { SetEvent( pvInterruptEvent ); } - /* Give back the mutex so the simulated interrupt handler unblocks + /* Give back the mutex so the simulated interrupt handler unblocks and can access the interrupt handler variables. */ ReleaseMutex( pvInterruptEventMutex ); } @@ -240,7 +240,7 @@ TIMECAPS xTimeCaps; portSTACK_TYPE *pxPortInitialiseStack( portSTACK_TYPE *pxTopOfStack, pdTASK_CODE pxCode, void *pvParameters ) { xThreadState *pxThreadState = NULL; -char *pcTopOfStack = ( char * ) pxTopOfStack; +signed char *pcTopOfStack = ( char * ) pxTopOfStack; /* In this simulated case a stack is not initialised, but instead a thread is created that will execute the task being created. The thread handles @@ -256,7 +256,7 @@ char *pcTopOfStack = ( char * ) pxTopOfStack; SetThreadAffinityMask( pxThreadState->pvThread, 0x01 ); SetThreadPriorityBoost( pxThreadState->pvThread, TRUE ); SetThreadPriority( pxThreadState->pvThread, THREAD_PRIORITY_IDLE ); - + return ( portSTACK_TYPE * ) pxThreadState; } /*-----------------------------------------------------------*/ @@ -281,7 +281,7 @@ xThreadState *pxThreadState; lSuccess = pdFAIL; } - /* Set the priority of this thread such that it is above the priority of + /* Set the priority of this thread such that it is above the priority of the threads that run tasks. This higher priority is required to ensure simulated interrupts take priority over tasks. */ pvHandle = GetCurrentThread(); @@ -289,7 +289,7 @@ xThreadState *pxThreadState; { lSuccess = pdFAIL; } - + if( lSuccess == pdPASS ) { if( SetThreadPriority( pvHandle, THREAD_PRIORITY_NORMAL ) == 0 ) @@ -303,7 +303,7 @@ xThreadState *pxThreadState; if( lSuccess == pdPASS ) { /* Start the thread that simulates the timer peripheral to generate - tick interrupts. The priority is set below that of the simulated + tick interrupts. The priority is set below that of the simulated interrupt handler so the interrupt event mutex is used for the handshake / overrun protection. */ pvHandle = CreateThread( NULL, 0, prvSimulatedPeripheralTimer, NULL, 0, NULL ); @@ -313,8 +313,8 @@ xThreadState *pxThreadState; SetThreadPriorityBoost( pvHandle, TRUE ); SetThreadAffinityMask( pvHandle, 0x01 ); } - - /* Start the highest priority task by obtaining its associated thread + + /* Start the highest priority task by obtaining its associated thread state structure, in which is stored the thread handle. */ pxThreadState = ( xThreadState * ) *( ( unsigned long * ) pxCurrentTCB ); ulCriticalNesting = portNO_CRITICAL_NESTING; @@ -324,12 +324,12 @@ xThreadState *pxThreadState; behave as an embedded engineer might expect. */ ResumeThread( pxThreadState->pvThread ); - /* Handle all simulated interrupts - including yield requests and + /* Handle all simulated interrupts - including yield requests and simulated ticks. */ prvProcessSimulatedInterrupts(); - } - - /* Would not expect to return from prvProcessSimulatedInterrupts(), so should + } + + /* Would not expect to return from prvProcessSimulatedInterrupts(), so should not get here. */ return 0; } @@ -359,7 +359,7 @@ unsigned long ulSwitchRequired, i; xThreadState *pxThreadState; void *pvObjectList[ 2 ]; - /* Going to block on the mutex that ensured exclusive access to the simulated + /* Going to block on the mutex that ensured exclusive access to the simulated interrupt objects, and the event that signals that a simulated interrupt should be processed. */ pvObjectList[ 0 ] = pvInterruptEventMutex; @@ -419,7 +419,7 @@ void *pvObjectList[ 2 ]; pxThreadState = ( xThreadState *) *( ( unsigned long * ) pvOldCurrentTCB ); SuspendThread( pxThreadState->pvThread ); - /* Obtain the state of the task now selected to enter the + /* Obtain the state of the task now selected to enter the Running state. */ pxThreadState = ( xThreadState * ) ( *( unsigned long *) pxCurrentTCB ); ResumeThread( pxThreadState->pvThread ); @@ -484,7 +484,7 @@ unsigned long ulErrorCode; ensure a context switch occurs away from this thread on the next tick. */ *pxPendYield = pdTRUE; - /* Mark the thread associated with this task as invalid so + /* Mark the thread associated with this task as invalid so vPortDeleteThread() does not try to terminate it. */ pxThreadState->pvThread = NULL; @@ -518,7 +518,7 @@ void vPortGenerateSimulatedInterrupt( unsigned long ulInterruptNumber ) be in a critical section as calls to wait for mutexes are accumulative. */ if( ulCriticalNesting == 0 ) { - SetEvent( pvInterruptEvent ); + SetEvent( pvInterruptEvent ); } ReleaseMutex( pvInterruptEventMutex ); @@ -556,7 +556,7 @@ void vPortEnterCritical( void ) else { ulCriticalNesting++; - } + } } /*-----------------------------------------------------------*/ @@ -575,7 +575,7 @@ long lMutexNeedsReleasing; { ulCriticalNesting--; - /* Were any interrupts set to pending while interrupts were + /* Were any interrupts set to pending while interrupts were (simulated) disabled? */ if( ulPendingInterrupts != 0UL ) { diff --git a/FreeRTOS/Source/queue.c b/FreeRTOS/Source/queue.c index c23abed3c..6b7a91a25 100644 --- a/FreeRTOS/Source/queue.c +++ b/FreeRTOS/Source/queue.c @@ -167,7 +167,7 @@ typedef struct QueueDefinition more user friendly. */ typedef struct QUEUE_REGISTRY_ITEM { - signed char *pcQueueName; + char *pcQueueName; /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ xQueueHandle xHandle; } xQueueRegistryItem; @@ -2143,7 +2143,7 @@ signed portBASE_TYPE xReturn; #if ( configQUEUE_REGISTRY_SIZE > 0 ) - void vQueueAddToRegistry( xQueueHandle xQueue, signed char *pcQueueName ) + void vQueueAddToRegistry( xQueueHandle xQueue, char *pcQueueName ) /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ { unsigned portBASE_TYPE ux; diff --git a/FreeRTOS/Source/tasks.c b/FreeRTOS/Source/tasks.c index a3ccc4a89..3b6c60447 100644 --- a/FreeRTOS/Source/tasks.c +++ b/FreeRTOS/Source/tasks.c @@ -129,7 +129,7 @@ typedef struct tskTaskControlBlock xListItem xEventListItem; /*< Used to reference a task from an event list. */ unsigned portBASE_TYPE uxPriority; /*< The priority of the task. 0 is the lowest priority. */ portSTACK_TYPE *pxStack; /*< Points to the start of the stack. */ - signed char pcTaskName[ configMAX_TASK_NAME_LEN ];/*< Descriptive name given to the task when created. Facilitates debugging only. */ + char pcTaskName[ configMAX_TASK_NAME_LEN ];/*< Descriptive name given to the task when created. Facilitates debugging only. */ /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ #if ( portSTACK_GROWTH > 0 ) portSTACK_TYPE *pxEndOfStack; /*< Points to the end of the stack on architectures where the stack grows up from low memory. */ @@ -241,10 +241,10 @@ PRIVILEGED_DATA static volatile portTickType xNextTaskUnblockTime = portMAX_D /* * Macros used by vListTask to indicate which state a task is in. */ -#define tskBLOCKED_CHAR ( ( signed char ) 'B' ) -#define tskREADY_CHAR ( ( signed char ) 'R' ) -#define tskDELETED_CHAR ( ( signed char ) 'D' ) -#define tskSUSPENDED_CHAR ( ( signed char ) 'S' ) +#define tskBLOCKED_CHAR ( 'B' ) +#define tskREADY_CHAR ( 'R' ) +#define tskDELETED_CHAR ( 'D' ) +#define tskSUSPENDED_CHAR ( 'S' ) /*-----------------------------------------------------------*/ @@ -378,7 +378,7 @@ to its original value when it is released. */ /* Callback function prototypes. --------------------------*/ #if configCHECK_FOR_STACK_OVERFLOW > 0 - extern void vApplicationStackOverflowHook( xTaskHandle xTask, signed char *pcTaskName ); + extern void vApplicationStackOverflowHook( xTaskHandle xTask, char *pcTaskName ); #endif #if configUSE_TICK_HOOK > 0 @@ -391,7 +391,7 @@ to its original value when it is released. */ * Utility to ready a TCB for a given task. Mainly just copies the parameters * into the TCB structure. */ -static void prvInitialiseTCBVariables( tskTCB * const pxTCB, const signed char * const pcName, unsigned portBASE_TYPE uxPriority, const xMemoryRegion * const xRegions, const unsigned short usStackDepth ) PRIVILEGED_FUNCTION; +static void prvInitialiseTCBVariables( tskTCB * const pxTCB, const char * const pcName, unsigned portBASE_TYPE uxPriority, const xMemoryRegion * const xRegions, const unsigned short usStackDepth ) PRIVILEGED_FUNCTION; /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ /* * Utility to ready all the lists used by the scheduler. This is called @@ -492,7 +492,7 @@ static void prvResetNextTaskUnblockTime( void ); /*-----------------------------------------------------------*/ -signed portBASE_TYPE xTaskGenericCreate( pdTASK_CODE pxTaskCode, const signed char * const pcName, const unsigned short usStackDepth, void * const pvParameters, unsigned portBASE_TYPE uxPriority, xTaskHandle * const pxCreatedTask, portSTACK_TYPE * const puxStackBuffer, const xMemoryRegion * const xRegions ) +signed portBASE_TYPE xTaskGenericCreate( pdTASK_CODE pxTaskCode, const char * const pcName, const unsigned short usStackDepth, void * const pvParameters, unsigned portBASE_TYPE uxPriority, xTaskHandle * const pxCreatedTask, portSTACK_TYPE * const puxStackBuffer, const xMemoryRegion * const xRegions ) /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ { signed portBASE_TYPE xReturn; tskTCB * pxNewTCB; @@ -1111,7 +1111,7 @@ tskTCB * pxNewTCB; /* Only reset the event list item value if the value is not being used for anything else. */ - if( ( listGET_LIST_ITEM_VALUE( &( pxTCB->xEventListItem ) ) & taskEVENT_LIST_ITEM_VALUE_IN_USE ) == 0 ) + if( ( listGET_LIST_ITEM_VALUE( &( pxTCB->xEventListItem ) ) & taskEVENT_LIST_ITEM_VALUE_IN_USE ) == 0UL ) { listSET_LIST_ITEM_VALUE( &( pxTCB->xEventListItem ), ( ( portTickType ) configMAX_PRIORITIES - ( portTickType ) uxNewPriority ) ); /*lint !e961 MISRA exception as the casts are only redundant for some ports. */ } @@ -1430,12 +1430,12 @@ portBASE_TYPE xReturn; { /* Create the idle task, storing its handle in xIdleTaskHandle so it can be returned by the xTaskGetIdleTaskHandle() function. */ - xReturn = xTaskCreate( prvIdleTask, ( signed char * ) "IDLE", tskIDLE_STACK_SIZE, ( void * ) NULL, ( tskIDLE_PRIORITY | portPRIVILEGE_BIT ), &xIdleTaskHandle ); /*lint !e961 MISRA exception, justified as it is not a redundant explicit cast to all supported compilers. */ + xReturn = xTaskCreate( prvIdleTask, "IDLE", tskIDLE_STACK_SIZE, ( void * ) NULL, ( tskIDLE_PRIORITY | portPRIVILEGE_BIT ), &xIdleTaskHandle ); /*lint !e961 MISRA exception, justified as it is not a redundant explicit cast to all supported compilers. */ } #else { /* Create the idle task without storing its handle. */ - xReturn = xTaskCreate( prvIdleTask, ( signed char * ) "IDLE", tskIDLE_STACK_SIZE, ( void * ) NULL, ( tskIDLE_PRIORITY | portPRIVILEGE_BIT ), NULL ); /*lint !e961 MISRA exception, justified as it is not a redundant explicit cast to all supported compilers. */ + xReturn = xTaskCreate( prvIdleTask, "IDLE", tskIDLE_STACK_SIZE, ( void * ) NULL, ( tskIDLE_PRIORITY | portPRIVILEGE_BIT ), NULL ); /*lint !e961 MISRA exception, justified as it is not a redundant explicit cast to all supported compilers. */ } #endif /* INCLUDE_xTaskGetIdleTaskHandle */ @@ -1695,7 +1695,7 @@ unsigned portBASE_TYPE uxTaskGetNumberOfTasks( void ) #if ( INCLUDE_pcTaskGetTaskName == 1 ) - signed char *pcTaskGetTaskName( xTaskHandle xTaskToQuery ) + char *pcTaskGetTaskName( xTaskHandle xTaskToQuery ) { tskTCB *pxTCB; @@ -2659,7 +2659,7 @@ static portTASK_FUNCTION( prvIdleTask, pvParameters ) #endif /* configUSE_TICKLESS_IDLE */ /*-----------------------------------------------------------*/ -static void prvInitialiseTCBVariables( tskTCB * const pxTCB, const signed char * const pcName, unsigned portBASE_TYPE uxPriority, const xMemoryRegion * const xRegions, const unsigned short usStackDepth ) +static void prvInitialiseTCBVariables( tskTCB * const pxTCB, const char * const pcName, unsigned portBASE_TYPE uxPriority, const xMemoryRegion * const xRegions, const unsigned short usStackDepth ) /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ { unsigned portBASE_TYPE x; @@ -2683,7 +2683,7 @@ unsigned portBASE_TYPE x; /* Ensure the name string is terminated in the case that the string length was greater or equal to configMAX_TASK_NAME_LEN. */ - pxTCB->pcTaskName[ configMAX_TASK_NAME_LEN - 1 ] = ( signed char ) '\0'; + pxTCB->pcTaskName[ configMAX_TASK_NAME_LEN - 1 ] = '\0'; /* This is used as an array index so must ensure it's not too large. First remove the privilege bit if one is present. */ @@ -2925,7 +2925,7 @@ tskTCB *pxNewTCB; listGET_OWNER_OF_NEXT_ENTRY( pxNextTCB, pxList ); pxTaskStatusArray[ uxTask ].xHandle = ( xTaskHandle ) pxNextTCB; - pxTaskStatusArray[ uxTask ].pcTaskName = ( const signed char * ) &( pxNextTCB->pcTaskName [ 0 ] ); + pxTaskStatusArray[ uxTask ].pcTaskName = ( const char * ) &( pxNextTCB->pcTaskName [ 0 ] ); pxTaskStatusArray[ uxTask ].xTaskNumber = pxNextTCB->uxTCBNumber; pxTaskStatusArray[ uxTask ].eCurrentState = eState; pxTaskStatusArray[ uxTask ].uxCurrentPriority = pxNextTCB->uxPriority; @@ -3000,22 +3000,22 @@ tskTCB *pxNewTCB; unsigned portBASE_TYPE uxTaskGetStackHighWaterMark( xTaskHandle xTask ) { tskTCB *pxTCB; - unsigned char *pcEndOfStack; + unsigned char *pucEndOfStack; unsigned portBASE_TYPE uxReturn; pxTCB = prvGetTCBFromHandle( xTask ); #if portSTACK_GROWTH < 0 { - pcEndOfStack = ( unsigned char * ) pxTCB->pxStack; + pucEndOfStack = ( unsigned char * ) pxTCB->pxStack; } #else { - pcEndOfStack = ( unsigned char * ) pxTCB->pxEndOfStack; + pucEndOfStack = ( unsigned char * ) pxTCB->pxEndOfStack; } #endif - uxReturn = ( unsigned portBASE_TYPE ) prvTaskCheckFreeStackSpace( pcEndOfStack ); + uxReturn = ( unsigned portBASE_TYPE ) prvTaskCheckFreeStackSpace( pucEndOfStack ); return uxReturn; } @@ -3126,7 +3126,7 @@ tskTCB *pxTCB; /* Adjust the mutex holder state to account for its new priority. Only reset the event list item value if the value is not being used for anything else. */ - if( ( listGET_LIST_ITEM_VALUE( &( pxTCB->xEventListItem ) ) & taskEVENT_LIST_ITEM_VALUE_IN_USE ) == 0 ) + if( ( listGET_LIST_ITEM_VALUE( &( pxTCB->xEventListItem ) ) & taskEVENT_LIST_ITEM_VALUE_IN_USE ) == 0UL ) { listSET_LIST_ITEM_VALUE( &( pxTCB->xEventListItem ), ( portTickType ) configMAX_PRIORITIES - ( portTickType ) pxCurrentTCB->uxPriority ); /*lint !e961 MISRA exception as the casts are only redundant for some ports. */ } @@ -3202,7 +3202,7 @@ tskTCB *pxTCB; /* Only reset the event list item value if the value is not being used for anything else. */ - if( ( listGET_LIST_ITEM_VALUE( &( pxTCB->xEventListItem ) ) & taskEVENT_LIST_ITEM_VALUE_IN_USE ) == 0 ) + if( ( listGET_LIST_ITEM_VALUE( &( pxTCB->xEventListItem ) ) & taskEVENT_LIST_ITEM_VALUE_IN_USE ) == 0UL ) { listSET_LIST_ITEM_VALUE( &( pxTCB->xEventListItem ), ( portTickType ) configMAX_PRIORITIES - ( portTickType ) pxTCB->uxPriority ); /*lint !e961 MISRA exception as the casts are only redundant for some ports. */ } @@ -3280,11 +3280,11 @@ tskTCB *pxTCB; #if ( ( configUSE_TRACE_FACILITY == 1 ) && ( configUSE_STATS_FORMATTING_FUNCTIONS == 1 ) ) - void vTaskList( signed char * pcWriteBuffer ) + void vTaskList( char * pcWriteBuffer ) { xTaskStatusType *pxTaskStatusArray; volatile unsigned portBASE_TYPE uxArraySize, x; - signed char cStatus; + char cStatus; /* * PLEASE NOTE: @@ -3349,8 +3349,8 @@ tskTCB *pxTCB; break; } - sprintf( ( char * ) pcWriteBuffer, ( char * ) "%s\t\t%c\t%u\t%u\t%u\r\n", pxTaskStatusArray[ x ].pcTaskName, ( char ) cStatus, ( unsigned int ) pxTaskStatusArray[ x ].uxCurrentPriority, ( unsigned int ) pxTaskStatusArray[ x ].usStackHighWaterMark, ( unsigned int ) pxTaskStatusArray[ x ].xTaskNumber ); - pcWriteBuffer += strlen( ( char * ) pcWriteBuffer ); + sprintf( pcWriteBuffer, "%s\t\t%c\t%u\t%u\t%u\r\n", pxTaskStatusArray[ x ].pcTaskName, cStatus, ( unsigned int ) pxTaskStatusArray[ x ].uxCurrentPriority, ( unsigned int ) pxTaskStatusArray[ x ].usStackHighWaterMark, ( unsigned int ) pxTaskStatusArray[ x ].xTaskNumber ); + pcWriteBuffer += strlen( pcWriteBuffer ); } /* Free the array again. */ @@ -3367,7 +3367,7 @@ tskTCB *pxTCB; #if ( ( configGENERATE_RUN_TIME_STATS == 1 ) && ( configUSE_STATS_FORMATTING_FUNCTIONS == 1 ) ) - void vTaskGetRunTimeStats( signed char *pcWriteBuffer ) + void vTaskGetRunTimeStats( char *pcWriteBuffer ) { xTaskStatusType *pxTaskStatusArray; volatile unsigned portBASE_TYPE uxArraySize, x; @@ -3431,13 +3431,13 @@ tskTCB *pxTCB; { #ifdef portLU_PRINTF_SPECIFIER_REQUIRED { - sprintf( ( char * ) pcWriteBuffer, ( char * ) "%s\t\t%lu\t\t%lu%%\r\n", pxTaskStatusArray[ x ].pcTaskName, pxTaskStatusArray[ x ].ulRunTimeCounter, ulStatsAsPercentage ); + sprintf( pcWriteBuffer, "%s\t\t%lu\t\t%lu%%\r\n", pxTaskStatusArray[ x ].pcTaskName, pxTaskStatusArray[ x ].ulRunTimeCounter, ulStatsAsPercentage ); } #else { /* sizeof( int ) == sizeof( long ) so a smaller printf() library can be used. */ - sprintf( ( char * ) pcWriteBuffer, ( char * ) "%s\t\t%u\t\t%u%%\r\n", pxTaskStatusArray[ x ].pcTaskName, ( unsigned int ) pxTaskStatusArray[ x ].ulRunTimeCounter, ( unsigned int ) ulStatsAsPercentage ); + sprintf( pcWriteBuffer, "%s\t\t%u\t\t%u%%\r\n", pxTaskStatusArray[ x ].pcTaskName, ( unsigned int ) pxTaskStatusArray[ x ].ulRunTimeCounter, ( unsigned int ) ulStatsAsPercentage ); } #endif } @@ -3447,18 +3447,18 @@ tskTCB *pxTCB; consumed less than 1% of the total run time. */ #ifdef portLU_PRINTF_SPECIFIER_REQUIRED { - sprintf( ( char * ) pcWriteBuffer, ( char * ) "%s\t\t%lu\t\t<1%%\r\n", pxTaskStatusArray[ x ].pcTaskName, pxTaskStatusArray[ x ].ulRunTimeCounter ); + sprintf( pcWriteBuffer, "%s\t\t%lu\t\t<1%%\r\n", pxTaskStatusArray[ x ].pcTaskName, pxTaskStatusArray[ x ].ulRunTimeCounter ); } #else { /* sizeof( int ) == sizeof( long ) so a smaller printf() library can be used. */ - sprintf( ( char * ) pcWriteBuffer, ( char * ) "%s\t\t%u\t\t<1%%\r\n", pxTaskStatusArray[ x ].pcTaskName, ( unsigned int ) pxTaskStatusArray[ x ].ulRunTimeCounter ); + sprintf( pcWriteBuffer, "%s\t\t%u\t\t<1%%\r\n", pxTaskStatusArray[ x ].pcTaskName, ( unsigned int ) pxTaskStatusArray[ x ].ulRunTimeCounter ); } #endif } - pcWriteBuffer += strlen( ( char * ) pcWriteBuffer ); + pcWriteBuffer += strlen( pcWriteBuffer ); } } else diff --git a/FreeRTOS/Source/timers.c b/FreeRTOS/Source/timers.c index 45d9351cd..d7f38b46c 100644 --- a/FreeRTOS/Source/timers.c +++ b/FreeRTOS/Source/timers.c @@ -99,7 +99,7 @@ configUSE_TIMERS is set to 1 in FreeRTOSConfig.h. */ /* The definition of the timers themselves. */ typedef struct tmrTimerControl { - const signed char *pcTimerName; /*<< Text name. This is not used by the kernel, it is included simply to make debugging easier. */ + const char *pcTimerName; /*<< Text name. This is not used by the kernel, it is included simply to make debugging easier. */ /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ xListItem xTimerListItem; /*<< Standard linked list item as used by all kernel features for event management. */ portTickType xTimerPeriodInTicks;/*<< How quickly and often the timer expires. */ unsigned portBASE_TYPE uxAutoReload; /*<< Set to pdTRUE if the timer should be automatically restarted once expired. Set to pdFALSE if the timer is, in effect, a one-shot timer. */ @@ -242,12 +242,12 @@ portBASE_TYPE xReturn = pdFAIL; { /* Create the timer task, storing its handle in xTimerTaskHandle so it can be returned by the xTimerGetTimerDaemonTaskHandle() function. */ - xReturn = xTaskCreate( prvTimerTask, ( signed char * ) "Tmr Svc", ( unsigned short ) configTIMER_TASK_STACK_DEPTH, NULL, ( ( unsigned portBASE_TYPE ) configTIMER_TASK_PRIORITY ) | portPRIVILEGE_BIT, &xTimerTaskHandle ); + xReturn = xTaskCreate( prvTimerTask, "Tmr Svc", ( unsigned short ) configTIMER_TASK_STACK_DEPTH, NULL, ( ( unsigned portBASE_TYPE ) configTIMER_TASK_PRIORITY ) | portPRIVILEGE_BIT, &xTimerTaskHandle ); } #else { /* Create the timer task without storing its handle. */ - xReturn = xTaskCreate( prvTimerTask, ( signed char * ) "Tmr Svc", ( unsigned short ) configTIMER_TASK_STACK_DEPTH, NULL, ( ( unsigned portBASE_TYPE ) configTIMER_TASK_PRIORITY ) | portPRIVILEGE_BIT, NULL); + xReturn = xTaskCreate( prvTimerTask, "Tmr Svc", ( unsigned short ) configTIMER_TASK_STACK_DEPTH, NULL, ( ( unsigned portBASE_TYPE ) configTIMER_TASK_PRIORITY ) | portPRIVILEGE_BIT, NULL); } #endif } @@ -261,7 +261,7 @@ portBASE_TYPE xReturn = pdFAIL; } /*-----------------------------------------------------------*/ -xTimerHandle xTimerCreate( const signed char * const pcTimerName, const portTickType xTimerPeriodInTicks, const unsigned portBASE_TYPE uxAutoReload, void * const pvTimerID, tmrTIMER_CALLBACK pxCallbackFunction ) +xTimerHandle xTimerCreate( const char * const pcTimerName, const portTickType xTimerPeriodInTicks, const unsigned portBASE_TYPE uxAutoReload, void * const pvTimerID, tmrTIMER_CALLBACK pxCallbackFunction ) /*lint !e971 Unqualified char types are allowed for strings and single characters only. */ { xTIMER *pxNewTimer; @@ -758,7 +758,7 @@ static void prvCheckForValidListAndQueue( void ) { if( xTimerQueue != NULL ) { - vQueueAddToRegistry( xTimerQueue, ( signed char * ) "TmrQ" ); + vQueueAddToRegistry( xTimerQueue, "TmrQ" ); } else {