| 
    Prusa MINI Firmware overview
    
   | 
 
 
 
  
  
 
#include <stdlib.h>
#include <string.h>
#include "FreeRTOS.h"
#include "task.h"
#include "timers.h"
#include "StackMacros.h"
 | 
| static PRIVILEGED_FUNCTION void  | prvInitialiseTaskLists (void) | 
|   | 
| static  | portTASK_FUNCTION_PROTO (prvIdleTask, pvParameters) | 
|   | 
| static PRIVILEGED_FUNCTION void  | prvCheckTasksWaitingTermination (void) | 
|   | 
| static PRIVILEGED_FUNCTION void  | prvAddCurrentTaskToDelayedList (TickType_t xTicksToWait, const BaseType_t xCanBlockIndefinitely) | 
|   | 
| static void  | prvResetNextTaskUnblockTime (void) | 
|   | 
| static PRIVILEGED_FUNCTION void  | prvInitialiseNewTask (TaskFunction_t pxTaskCode, const char *const pcName, const uint32_t ulStackDepth, void *const pvParameters, UBaseType_t uxPriority, TaskHandle_t *const pxCreatedTask, TCB_t *pxNewTCB, const MemoryRegion_t *const xRegions) | 
|   | 
| static PRIVILEGED_FUNCTION void  | prvAddNewTaskToReadyList (TCB_t *pxNewTCB) | 
|   | 
| void  | vTaskStartScheduler (void) | 
|   | 
| void  | vTaskEndScheduler (void) | 
|   | 
| void  | vTaskSuspendAll (void) | 
|   | 
| BaseType_t  | xTaskResumeAll (void) | 
|   | 
| TickType_t  | xTaskGetTickCount (void) | 
|   | 
| TickType_t  | xTaskGetTickCountFromISR (void) | 
|   | 
| UBaseType_t  | uxTaskGetNumberOfTasks (void) | 
|   | 
| char *  | pcTaskGetName (TaskHandle_t xTaskToQuery) | 
|   | 
| BaseType_t  | xTaskIncrementTick (void) | 
|   | 
| void  | vTaskSwitchContext (void) | 
|   | 
| void  | vTaskPlaceOnEventList (List_t *const pxEventList, const TickType_t xTicksToWait) | 
|   | 
| void  | vTaskPlaceOnUnorderedEventList (List_t *pxEventList, const TickType_t xItemValue, const TickType_t xTicksToWait) | 
|   | 
| BaseType_t  | xTaskRemoveFromEventList (const List_t *const pxEventList) | 
|   | 
| BaseType_t  | xTaskRemoveFromUnorderedEventList (ListItem_t *pxEventListItem, const TickType_t xItemValue) | 
|   | 
| void  | vTaskSetTimeOutState (TimeOut_t *const pxTimeOut) | 
|   | 
| BaseType_t  | xTaskCheckForTimeOut (TimeOut_t *const pxTimeOut, TickType_t *const pxTicksToWait) | 
|   | 
| void  | vTaskMissedYield (void) | 
|   | 
| static  | portTASK_FUNCTION (prvIdleTask, pvParameters) | 
|   | 
| TickType_t  | uxTaskResetEventItemValue (void) | 
|   | 
◆ MPU_WRAPPERS_INCLUDED_FROM_API_FILE
      
        
          | #define MPU_WRAPPERS_INCLUDED_FROM_API_FILE | 
        
      
 
 
◆ taskYIELD_IF_USING_PREEMPTION
      
        
          | #define taskYIELD_IF_USING_PREEMPTION | 
          ( | 
           | ) | 
           | 
        
      
 
 
◆ taskNOT_WAITING_NOTIFICATION
      
        
          | #define taskNOT_WAITING_NOTIFICATION   ( ( uint8_t ) 0 ) | 
        
      
 
 
◆ taskWAITING_NOTIFICATION
      
        
          | #define taskWAITING_NOTIFICATION   ( ( uint8_t ) 1 ) | 
        
      
 
 
◆ taskNOTIFICATION_RECEIVED
      
        
          | #define taskNOTIFICATION_RECEIVED   ( ( uint8_t ) 2 ) | 
        
      
 
 
◆ tskSTACK_FILL_BYTE
      
        
          | #define tskSTACK_FILL_BYTE   ( 0xa5U ) | 
        
      
 
 
◆ tskSTATIC_AND_DYNAMIC_ALLOCATION_POSSIBLE
◆ tskDYNAMICALLY_ALLOCATED_STACK_AND_TCB
      
        
          | #define tskDYNAMICALLY_ALLOCATED_STACK_AND_TCB   ( ( uint8_t ) 0 ) | 
        
      
 
 
◆ tskSTATICALLY_ALLOCATED_STACK_ONLY
      
        
          | #define tskSTATICALLY_ALLOCATED_STACK_ONLY   ( ( uint8_t ) 1 ) | 
        
      
 
 
◆ tskSTATICALLY_ALLOCATED_STACK_AND_TCB
      
        
          | #define tskSTATICALLY_ALLOCATED_STACK_AND_TCB   ( ( uint8_t ) 2 ) | 
        
      
 
 
◆ tskBLOCKED_CHAR
      
        
          | #define tskBLOCKED_CHAR   ( 'B' ) | 
        
      
 
 
◆ tskREADY_CHAR
      
        
          | #define tskREADY_CHAR   ( 'R' ) | 
        
      
 
 
◆ tskDELETED_CHAR
      
        
          | #define tskDELETED_CHAR   ( 'D' ) | 
        
      
 
 
◆ tskSUSPENDED_CHAR
      
        
          | #define tskSUSPENDED_CHAR   ( 'S' ) | 
        
      
 
 
◆ taskRECORD_READY_PRIORITY
      
        
          | #define taskRECORD_READY_PRIORITY | 
          ( | 
            | 
          uxPriority | ) | 
           | 
        
      
 
Value:{                                                                                                   \
        {                                                                                               \
            uxTopReadyPriority = ( uxPriority );                                                        \
        }                                                                                               \
    } 
 
 
 
◆ taskSELECT_HIGHEST_PRIORITY_TASK
      
        
          | #define taskSELECT_HIGHEST_PRIORITY_TASK | 
          ( | 
           | ) | 
           | 
        
      
 
Value:{                                                                                                   \
                                                                                                        \
                                        \
        {                                                                                               \
            configASSERT( uxTopPriority );                                                              \
            --uxTopPriority;                                                                            \
        }                                                                                               \
                                                                                                        \
        
                                  \
        uxTopReadyPriority = uxTopPriority;                                                             \
    } 
 
 
 
◆ taskRESET_READY_PRIORITY
      
        
          | #define taskRESET_READY_PRIORITY | 
          ( | 
            | 
          uxPriority | ) | 
           | 
        
      
 
 
◆ portRESET_READY_PRIORITY
◆ taskSWITCH_DELAYED_LISTS
      
        
          | #define taskSWITCH_DELAYED_LISTS | 
          ( | 
           | ) | 
           | 
        
      
 
Value:{                                                                                                   \
    List_t *pxTemp;                                                                                 \
                                                                                                    \
                           \
                                                                                                    \
    pxOverflowDelayedTaskList = pxTemp;                                                             \
    xNumOfOverflows++;                                                                              \
    prvResetNextTaskUnblockTime();                                                                  \
}
 
 
 
◆ prvAddTaskToReadyList
      
        
          | #define prvAddTaskToReadyList | 
          ( | 
            | 
          pxTCB | ) | 
           | 
        
      
 
Value:
    taskRECORD_READY_PRIORITY( ( pxTCB )->uxPriority );                                             \
    vListInsertEnd( &( 
pxReadyTasksLists[ ( pxTCB )->uxPriority ] ), &( ( pxTCB )->xStateListItem ) ); \
 
    tracePOST_MOVED_TASK_TO_READY_STATE( pxTCB )
 
 
 
◆ prvGetTCBFromHandle
◆ taskEVENT_LIST_ITEM_VALUE_IN_USE
      
        
          | #define taskEVENT_LIST_ITEM_VALUE_IN_USE   0x80000000UL | 
        
      
 
 
◆ tskTCB
◆ TCB_t
◆ prvInitialiseTaskLists()
  
  
      
        
          | static void prvInitialiseTaskLists  | 
          ( | 
          void  | 
           | ) | 
           | 
         
       
   | 
  
static   | 
  
 
Utility task that simply returns pdTRUE if the task referenced by xTask is currently in the Suspended state, or pdFALSE if the task referenced by xTask is in any other state. 
 3346     #if ( INCLUDE_vTaskDelete == 1 ) 
 3352     #if ( INCLUDE_vTaskSuspend == 1 ) 
 
 
 
◆ portTASK_FUNCTION_PROTO()
  
  
      
        
          | static portTASK_FUNCTION_PROTO  | 
          ( | 
          prvIdleTask  | 
          ,  | 
         
        
           | 
           | 
          pvParameters  | 
            | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
static   | 
  
 
 
◆ prvCheckTasksWaitingTermination()
  
  
      
        
          | static void prvCheckTasksWaitingTermination  | 
          ( | 
          void  | 
           | ) | 
           | 
         
       
   | 
  
static   | 
  
 
THIS FUNCTION IS CALLED FROM THE RTOS IDLE TASK
 3370     #if ( INCLUDE_vTaskDelete == 1 ) 
 3376         while( uxDeletedTasksWaitingCleanUp > ( 
UBaseType_t ) 0U )
 
 3393                     --uxDeletedTasksWaitingCleanUp;
 
 3397                 prvDeleteTCB( pxTCB );
 
 
 
 
◆ prvAddCurrentTaskToDelayedList()
 4697     #if( INCLUDE_xTaskAbortDelay == 1 ) 
 4719     #if ( INCLUDE_vTaskSuspend == 1 ) 
 4733             xTimeToWake = xConstTickCount + xTicksToWait;
 
 4738             if( xTimeToWake < xConstTickCount )
 
 4769         xTimeToWake = xConstTickCount + xTicksToWait;
 
 4774         if( xTimeToWake < xConstTickCount )
 
 4798         ( 
void ) xCanBlockIndefinitely;
 
 
 
 
◆ prvResetNextTaskUnblockTime()
  
  
      
        
          | static void prvResetNextTaskUnblockTime  | 
          ( | 
          void  | 
           | ) | 
           | 
         
       
   | 
  
static   | 
  
 
 
◆ prvInitialiseNewTask()
  779     #if( portUSING_MPU_WRAPPERS == 1 ) 
  794     #if( ( configCHECK_FOR_STACK_OVERFLOW > 1 ) || ( configUSE_TRACE_FACILITY == 1 ) || ( INCLUDE_uxTaskGetStackHighWaterMark == 1 ) ) 
  805     #if( portSTACK_GROWTH < 0 ) 
  807         pxTopOfStack = pxNewTCB->
pxStack + ( ulStackDepth - ( uint32_t ) 1 );
 
  815         pxTopOfStack = pxNewTCB->
pxStack;
 
  822         pxNewTCB->pxEndOfStack = pxNewTCB->
pxStack + ( ulStackDepth - ( uint32_t ) 1 );
 
  834         if( pcName[ x ] == 0x00 )
 
  860     #if ( configUSE_MUTEXES == 1 ) 
  862         pxNewTCB->uxBasePriority = uxPriority;
 
  863         pxNewTCB->uxMutexesHeld = 0;
 
  878     #if ( portCRITICAL_NESTING_IN_TCB == 1 ) 
  884     #if ( configUSE_APPLICATION_TASK_TAG == 1 ) 
  886         pxNewTCB->pxTaskTag = 
NULL;
 
  890     #if ( configGENERATE_RUN_TIME_STATS == 1 ) 
  892         pxNewTCB->ulRunTimeCounter = 0UL;
 
  896     #if ( portUSING_MPU_WRAPPERS == 1 ) 
  898         vPortStoreTaskMPUSettings( &( pxNewTCB->xMPUSettings ), xRegions, pxNewTCB->
pxStack, ulStackDepth );
 
  907     #if( configNUM_THREAD_LOCAL_STORAGE_POINTERS != 0 ) 
  911             pxNewTCB->pvThreadLocalStoragePointers[ x ] = 
NULL;
 
  916     #if ( configUSE_TASK_NOTIFICATIONS == 1 ) 
  918         pxNewTCB->ulNotifiedValue = 0;
 
  923     #if ( configUSE_NEWLIB_REENTRANT == 1 ) 
  926         _REENT_INIT_PTR( ( &( pxNewTCB->xNewLib_reent ) ) );
 
  930     #if( INCLUDE_xTaskAbortDelay == 1 ) 
  932         pxNewTCB->ucDelayAborted = 
pdFALSE;
 
  940     #if( portUSING_MPU_WRAPPERS == 1 ) 
  950     if( ( 
void * ) pxCreatedTask != 
NULL )
 
 
 
 
◆ prvAddNewTaskToReadyList()
  
  
      
        
          | static void prvAddNewTaskToReadyList  | 
          ( | 
          TCB_t *  | 
          pxNewTCB | ) | 
           | 
         
       
   | 
  
static   | 
  
 
 1012         #if ( configUSE_TRACE_FACILITY == 1 ) 
 
 
 
◆ vTaskStartScheduler()
 1831     #if( configSUPPORT_STATIC_ALLOCATION == 1 ) 
 1835         uint32_t ulIdleTaskStackSize;
 
 1839         vApplicationGetIdleTaskMemory( &pxIdleTaskTCBBuffer, &pxIdleTaskStackBuffer, &ulIdleTaskStackSize );
 
 1842                                                 ulIdleTaskStackSize,
 
 1845                                                 pxIdleTaskStackBuffer,
 
 1846                                                 pxIdleTaskTCBBuffer ); 
 
 1860         xReturn = xTaskCreate(  prvIdleTask,
 
 1868     #if ( configUSE_TIMERS == 1 ) 
 1890         #if ( configUSE_NEWLIB_REENTRANT == 1 ) 
 
 
 
◆ vTaskEndScheduler()
◆ vTaskSuspendAll()
◆ xTaskResumeAll()
 2103                     #if( configUSE_PREEMPTION != 0 ) 
 2105                         xAlreadyYielded = 
pdTRUE;
 
 2123     return xAlreadyYielded;
 
 
 
 
◆ xTaskGetTickCount()
◆ xTaskGetTickCountFromISR()
◆ uxTaskGetNumberOfTasks()
◆ pcTaskGetName()
◆ xTaskIncrementTick()
 2555                     if( xConstTickCount < xItemValue )
 
 2590                     #if (  configUSE_PREEMPTION == 1 ) 
 2598                             xSwitchRequired = 
pdTRUE;
 
 2613         #if ( ( configUSE_PREEMPTION == 1 ) && ( configUSE_TIME_SLICING == 1 ) ) 
 2617                 xSwitchRequired = 
pdTRUE;
 
 2626         #if ( configUSE_TICK_HOOK == 1 ) 
 2647         #if ( configUSE_TICK_HOOK == 1 ) 
 2654     #if ( configUSE_PREEMPTION == 1 ) 
 2658             xSwitchRequired = 
pdTRUE;
 
 2667     return xSwitchRequired;
 
 
 
 
◆ vTaskSwitchContext()
 2774         #if ( configGENERATE_RUN_TIME_STATS == 1 ) 
 2776                 #ifdef portALT_GET_RUN_TIME_COUNTER_VALUE 
 2777                     portALT_GET_RUN_TIME_COUNTER_VALUE( ulTotalRunTime );
 
 2779                     ulTotalRunTime = portGET_RUN_TIME_COUNTER_VALUE();
 
 2789                 if( ulTotalRunTime > ulTaskSwitchedInTime )
 
 2791                     pxCurrentTCB->ulRunTimeCounter += ( ulTotalRunTime - ulTaskSwitchedInTime );
 
 2797                 ulTaskSwitchedInTime = ulTotalRunTime;
 
 2809         #if ( configUSE_NEWLIB_REENTRANT == 1 ) 
 
 
 
◆ vTaskPlaceOnEventList()
◆ vTaskPlaceOnUnorderedEventList()
◆ xTaskRemoveFromEventList()
 2896 TCB_t *pxUnblockedTCB;
 
 2944     #if( configUSE_TICKLESS_IDLE != 0 ) 
 
 
 
◆ xTaskRemoveFromUnorderedEventList()
 2964 TCB_t *pxUnblockedTCB;
 
 
 
 
◆ vTaskSetTimeOutState()
◆ xTaskCheckForTimeOut()
 3027         #if( INCLUDE_xTaskAbortDelay == 1 ) 
 3038         #if ( INCLUDE_vTaskSuspend == 1 ) 
 
 
 
◆ vTaskMissedYield()
◆ portTASK_FUNCTION()
  
  
      
        
          | static portTASK_FUNCTION  | 
          ( | 
          prvIdleTask  | 
          ,  | 
         
        
           | 
           | 
          pvParameters  | 
            | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
static   | 
  
 
THIS IS THE RTOS IDLE TASK - WHICH IS CREATED AUTOMATICALLY WHEN THE SCHEDULER IS STARTED.
 3134     ( 
void ) pvParameters;
 
 3145         #if ( configUSE_PREEMPTION == 0 ) 
 3155         #if ( ( configUSE_PREEMPTION == 1 ) && ( configIDLE_SHOULD_YIELD == 1 ) ) 
 3177         #if ( configUSE_IDLE_HOOK == 1 ) 
 3194         #if ( configUSE_TICKLESS_IDLE != 0 ) 
 3203             xExpectedIdleTime = prvGetExpectedIdleTime();
 
 3213                     xExpectedIdleTime = prvGetExpectedIdleTime();
 
 
 
 
◆ uxTaskResetEventItemValue()
◆ pxCurrentTCB
◆ pxReadyTasksLists
◆ xDelayedTaskList1
◆ xDelayedTaskList2
◆ pxDelayedTaskList
◆ pxOverflowDelayedTaskList
◆ xPendingReadyList
◆ uxCurrentNumberOfTasks
◆ xTickCount
◆ uxTopReadyPriority
◆ xSchedulerRunning
◆ uxPendedTicks
◆ xYieldPending
◆ xNumOfOverflows
◆ uxTaskNumber
◆ xNextTaskUnblockTime
◆ xIdleTaskHandle
◆ uxSchedulerSuspended
 
 
#define taskYIELD_IF_USING_PREEMPTION()
Definition: tasks.c:104
 
static PRIVILEGED_INITIALIZED_DATA UBaseType_t uxTaskNumber
Definition: tasks.c:403
 
PRIVILEGED_FUNCTION void vListInitialiseItem(ListItem_t *const pxItem)
Definition: list.c:104
 
#define taskSELECT_HIGHEST_PRIORITY_TASK()
Definition: tasks.c:174
 
static PRIVILEGED_DATA List_t *volatile pxDelayedTaskList
Definition: tasks.c:378
 
#define listSET_LIST_ITEM_OWNER(pxListItem, pxOwner)
Definition: list.h:221
 
BaseType_t xTaskResumeAll(void)
Definition: tasks.c:2017
 
#define portMAX_DELAY
Definition: portmacro.h:106
 
static PRIVILEGED_DATA List_t xPendingReadyList
Definition: tasks.c:380
 
ListItem_t xStateListItem
Definition: tasks.c:301
 
void vApplicationIdleHook(void)
Application Idle Hook.
Definition: cpu_utils.c:75
 
UBaseType_t uxPriority
Definition: tasks.c:303
 
#define portPRIVILEGE_BIT
Definition: FreeRTOS.h:688
 
#define portTICK_TYPE_CLEAR_INTERRUPT_MASK_FROM_ISR(x)
Definition: FreeRTOS.h:807
 
#define configASSERT(x)
Definition: FreeRTOSConfig.h:162
 
static PRIVILEGED_INITIALIZED_DATA volatile TickType_t xNextTaskUnblockTime
Definition: tasks.c:404
 
#define listCURRENT_LIST_LENGTH(pxList)
Definition: list.h:296
 
#define taskSWITCH_DELAYED_LISTS()
Definition: tasks.c:239
 
#define errCOULD_NOT_ALLOCATE_REQUIRED_MEMORY
Definition: projdefs.h:95
 
#define pdFAIL
Definition: projdefs.h:90
 
PRIVILEGED_FUNCTION void vListInsert(List_t *const pxList, ListItem_t *const pxNewListItem)
Definition: list.c:145
 
#define tskSTACK_FILL_BYTE
Definition: tasks.c:118
 
#define portTICK_TYPE_EXIT_CRITICAL()
Definition: FreeRTOS.h:805
 
static PRIVILEGED_FUNCTION void prvCheckTasksWaitingTermination(void)
Definition: tasks.c:3365
 
#define configNUM_THREAD_LOCAL_STORAGE_POINTERS
Definition: FreeRTOS.h:236
 
static PRIVILEGED_INITIALIZED_DATA volatile BaseType_t xSchedulerRunning
Definition: tasks.c:399
 
static PRIVILEGED_INITIALIZED_DATA volatile TickType_t xTickCount
Definition: tasks.c:397
 
#define listGET_OWNER_OF_HEAD_ENTRY(pxList)
Definition: list.h:348
 
PRIVILEGED_FUNCTION void vListInitialise(List_t *const pxList)
Definition: list.c:79
 
PRIVILEGED_FUNCTION void vListInsertEnd(List_t *const pxList, ListItem_t *const pxNewListItem)
Definition: list.c:116
 
#define NULL
Definition: usbd_def.h:53
 
#define pdPASS
Definition: projdefs.h:89
 
#define portSUPPRESS_TICKS_AND_SLEEP(xExpectedIdleTime)
Definition: FreeRTOS.h:696
 
#define portCONFIGURE_TIMER_FOR_RUN_TIME_STATS()
Definition: FreeRTOS.h:680
 
uint32_t TickType_t
Definition: portmacro.h:105
 
static PRIVILEGED_DATA List_t xDelayedTaskList2
Definition: tasks.c:377
 
StackType_t * pxStack
Definition: tasks.c:304
 
#define listGET_LIST_ITEM_VALUE(pxListItem)
Definition: list.h:249
 
volatile StackType_t * pxTopOfStack
Definition: tasks.c:295
 
#define listSET_LIST_ITEM_VALUE(pxListItem, xValue)
Definition: list.h:239
 
#define taskENTER_CRITICAL()
Definition: task.h:217
 
static PRIVILEGED_INITIALIZED_DATA TaskHandle_t xIdleTaskHandle
Definition: tasks.c:405
 
void * TaskHandle_t
Definition: task.h:103
 
#define pdFALSE
Definition: projdefs.h:86
 
#define portTICK_TYPE_SET_INTERRUPT_MASK_FROM_ISR()
Definition: FreeRTOS.h:806
 
static PRIVILEGED_FUNCTION void prvAddCurrentTaskToDelayedList(TickType_t xTicksToWait, const BaseType_t xCanBlockIndefinitely)
Definition: tasks.c:4692
 
static PRIVILEGED_FUNCTION void prvInitialiseTaskLists(void)
Definition: tasks.c:3333
 
unsigned long UBaseType_t
Definition: portmacro.h:99
 
#define traceLOW_POWER_IDLE_END()
Definition: FreeRTOS.h:365
 
#define traceTASK_SWITCHED_OUT()
Definition: FreeRTOSConfig.h:92
 
PRIVILEGED_FUNCTION UBaseType_t uxListRemove(ListItem_t *const pxItemToRemove)
Definition: list.c:212
 
#define prvAddTaskToReadyList(pxTCB)
Definition: tasks.c:259
 
#define listGET_LIST_ITEM_OWNER(pxListItem)
Definition: list.h:230
 
#define configMINIMAL_STACK_SIZE
Definition: FreeRTOSConfig.h:111
 
#define configMAX_PRIORITIES
Definition: FreeRTOSConfig.h:110
 
PRIVILEGED_FUNCTION BaseType_t xPortStartScheduler(void)
Definition: port.c:312
 
void
Definition: png.h:1083
 
static PRIVILEGED_INITIALIZED_DATA volatile UBaseType_t uxSchedulerSuspended
Definition: tasks.c:415
 
#define portDISABLE_INTERRUPTS()
Definition: portmacro.h:143
 
static PRIVILEGED_DATA List_t xDelayedTaskList1
Definition: tasks.c:376
 
portSTACK_TYPE StackType_t
Definition: portmacro.h:97
 
PRIVILEGED_FUNCTION BaseType_t xTimerCreateTimerTask(void)
 
#define traceTASK_SWITCHED_IN()
Definition: FreeRTOSConfig.h:89
 
#define listLIST_IS_EMPTY(pxList)
Definition: list.h:291
 
#define portRESET_READY_PRIORITY(uxPriority, uxTopReadyPriority)
Definition: tasks.c:197
 
#define taskYIELD()
Definition: task.h:203
 
#define portPOINTER_SIZE_TYPE
Definition: FreeRTOS.h:330
 
Definition: FreeRTOS.h:910
 
ListItem_t xEventListItem
Definition: tasks.c:302
 
char pcTaskName[configMAX_TASK_NAME_LEN]
Definition: tasks.c:305
 
void vTaskSetTimeOutState(TimeOut_t *const pxTimeOut)
Definition: tasks.c:3007
 
PRIVILEGED_INITIALIZED_DATA TCB_t *volatile pxCurrentTCB
Definition: tasks.c:372
 
static void prvResetNextTaskUnblockTime(void)
Definition: tasks.c:3635
 
#define taskCHECK_FOR_STACK_OVERFLOW()
Definition: StackMacros.h:165
 
#define prvGetTCBFromHandle(pxHandle)
Definition: tasks.c:272
 
#define portASSERT_IF_INTERRUPT_PRIORITY_INVALID()
Definition: FreeRTOS.h:740
 
#define taskNOT_WAITING_NOTIFICATION
Definition: tasks.c:110
 
static PRIVILEGED_INITIALIZED_DATA volatile UBaseType_t uxCurrentNumberOfTasks
Definition: tasks.c:396
 
#define configMAX_TASK_NAME_LEN
Definition: FreeRTOSConfig.h:113
 
PRIVILEGED_FUNCTION void vPortEndScheduler(void)
Definition: port.c:399
 
long BaseType_t
Definition: portmacro.h:98
 
#define pdTRUE
Definition: projdefs.h:87
 
static PRIVILEGED_INITIALIZED_DATA volatile BaseType_t xNumOfOverflows
Definition: tasks.c:402
 
static PRIVILEGED_INITIALIZED_DATA volatile UBaseType_t uxPendedTicks
Definition: tasks.c:400
 
#define traceTASK_INCREMENT_TICK(xTickCount)
Definition: FreeRTOS.h:546
 
void vApplicationTickHook(void)
Application Idle Hook.
Definition: cpu_utils.c:89
 
#define traceLOW_POWER_IDLE_BEGIN()
Definition: FreeRTOS.h:360
 
BaseType_t xOverflowCount
Definition: task.h:137
 
#define traceMOVED_TASK_TO_READY_STATE(pxTCB)
Definition: FreeRTOS.h:414
 
#define taskEXIT_CRITICAL()
Definition: task.h:232
 
static PRIVILEGED_DATA List_t pxReadyTasksLists[configMAX_PRIORITIES]
Definition: tasks.c:375
 
#define portTICK_TYPE_ENTER_CRITICAL()
Definition: FreeRTOS.h:804
 
#define listLIST_ITEM_CONTAINER(pxListItem)
Definition: list.h:367
 
BaseType_t xTaskIncrementTick(void)
Definition: tasks.c:2499
 
void vTaskSuspendAll(void)
Definition: tasks.c:1944
 
PRIVILEGED_FUNCTION StackType_t * pxPortInitialiseStack(StackType_t *pxTopOfStack, TaskFunction_t pxCode, void *pvParameters)
 
#define portSETUP_TCB(pxTCB)
Definition: FreeRTOS.h:316
 
#define configEXPECTED_IDLE_TIME_BEFORE_SLEEP
Definition: FreeRTOS.h:700
 
static PRIVILEGED_INITIALIZED_DATA volatile UBaseType_t uxTopReadyPriority
Definition: tasks.c:398
 
TickType_t xTimeOnEntering
Definition: task.h:138
 
#define taskEVENT_LIST_ITEM_VALUE_IN_USE
Definition: tasks.c:285
 
#define traceTASK_CREATE(pxNewTCB)
Definition: FreeRTOS.h:510
 
static PRIVILEGED_INITIALIZED_DATA volatile BaseType_t xYieldPending
Definition: tasks.c:401
 
#define tskIDLE_PRIORITY
Definition: task.h:193
 
static PRIVILEGED_DATA List_t *volatile pxOverflowDelayedTaskList
Definition: tasks.c:379
 
#define mtCOVERAGE_TEST_MARKER()
Definition: FreeRTOS.h:748