| 
									
										
										
										
											2022-12-01 23:23:40 +08:00
										 |  |  | # ---------------------------------------------------------------------------------------------------------------------- | 
					
						
							| 
									
										
										
										
											2022-06-21 17:58:22 +08:00
										 |  |  | # Linker fragment file for IDF FreeRTOS (i.e., CONFIG_FREERTOS_SMP=n) | 
					
						
							| 
									
										
										
										
											2022-12-01 23:23:40 +08:00
										 |  |  | # Flash function placements are listed per source file, in the order that they appear in the source file. | 
					
						
							|  |  |  | # | 
					
						
							|  |  |  | # Placement Rules: | 
					
						
							|  |  |  | #   - Default: Place all functions in internal RAM. | 
					
						
							|  |  |  | #   - CONFIG_FREERTOS_PLACE_FUNCTIONS_INTO_FLASH: | 
					
						
							|  |  |  | #       - Place functions in flash if they are never called from an ISR context (directly or indirectly). | 
					
						
							|  |  |  | #       - Some functions that are called often (such as critical sections) are placed in internal RAM for speed. | 
					
						
							|  |  |  | # ---------------------------------------------------------------------------------------------------------------------- | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [mapping:freertos_idf] | 
					
						
							| 
									
										
										
										
											2018-04-18 10:57:45 +08:00
										 |  |  | archive: libfreertos.a | 
					
						
							|  |  |  | entries: | 
					
						
							| 
									
										
										
										
											2022-12-01 23:23:40 +08:00
										 |  |  |     * (noflash_text)        # Default all FreeRTOS functions to IRAM | 
					
						
							| 
									
										
										
										
											2022-06-21 17:58:22 +08:00
										 |  |  |     if FREERTOS_PLACE_FUNCTIONS_INTO_FLASH = y: | 
					
						
							| 
									
										
										
										
											2022-12-01 23:23:40 +08:00
										 |  |  |         # -------------------------------------------------------------------------------------------------------------- | 
					
						
							|  |  |  |         # event_groups.c | 
					
						
							|  |  |  |         # - Exclude all ...FromISR() functions and their dependents | 
					
						
							|  |  |  |         # -------------------------------------------------------------------------------------------------------------- | 
					
						
							|  |  |  |         event_groups:xEventGroupCreateStatic (default) | 
					
						
							|  |  |  |         event_groups:xEventGroupCreate (default) | 
					
						
							|  |  |  |         event_groups:xEventGroupSync (default) | 
					
						
							|  |  |  |         event_groups:xEventGroupWaitBits (default) | 
					
						
							|  |  |  |         event_groups:xEventGroupClearBits (default) | 
					
						
							|  |  |  |         event_groups:xEventGroupSetBits (default) | 
					
						
							|  |  |  |         event_groups:vEventGroupDelete (default) | 
					
						
							|  |  |  |         event_groups:vEventGroupSetBitsCallback (default) | 
					
						
							|  |  |  |         event_groups:vEventGroupClearBitsCallback (default) | 
					
						
							|  |  |  |         event_groups:prvTestWaitCondition (default) | 
					
						
							| 
									
										
										
										
											2022-06-21 17:58:22 +08:00
										 |  |  |         if FREERTOS_USE_TRACE_FACILITY = y: | 
					
						
							| 
									
										
										
										
											2022-12-01 23:23:40 +08:00
										 |  |  |             event_groups: uxEventGroupGetNumber (default) | 
					
						
							|  |  |  |             event_groups: vEventGroupSetNumber (default) | 
					
						
							|  |  |  |         # -------------------------------------------------------------------------------------------------------------- | 
					
						
							|  |  |  |         # list.c | 
					
						
							|  |  |  |         # - List/List Item initialization functions are never called from ISR | 
					
						
							|  |  |  |         # -------------------------------------------------------------------------------------------------------------- | 
					
						
							|  |  |  |         list:vListInitialise (default) | 
					
						
							|  |  |  |         list:vListInitialiseItem (default) | 
					
						
							|  |  |  |         # -------------------------------------------------------------------------------------------------------------- | 
					
						
							|  |  |  |         # queue.c | 
					
						
							|  |  |  |         # - Keep all ...FromISR() functions (and their prv... calls) in internal RAM | 
					
						
							|  |  |  |         # - All other functions can be moved to flash | 
					
						
							|  |  |  |         # - Queue lock related functions are only used in single core builds | 
					
						
							|  |  |  |         # -------------------------------------------------------------------------------------------------------------- | 
					
						
							|  |  |  |         queue:xQueueGenericReset (default) | 
					
						
							|  |  |  |         queue:xQueueGenericCreateStatic (default) | 
					
						
							|  |  |  |         queue:xQueueGenericCreate (default) | 
					
						
							|  |  |  |         queue:prvInitialiseNewQueue (default) | 
					
						
							|  |  |  |         queue:prvInitialiseMutex (default) | 
					
						
							|  |  |  |         queue:xQueueCreateMutex (default) | 
					
						
							|  |  |  |         queue:xQueueCreateMutexStatic (default) | 
					
						
							|  |  |  |         queue:xQueueGetMutexHolder (default) | 
					
						
							|  |  |  |         queue:xQueueGiveMutexRecursive (default) | 
					
						
							|  |  |  |         queue:xQueueTakeMutexRecursive (default) | 
					
						
							|  |  |  |         queue:xQueueCreateCountingSemaphoreStatic (default) | 
					
						
							|  |  |  |         queue:xQueueCreateCountingSemaphore (default) | 
					
						
							|  |  |  |         queue:xQueueGenericSend (default) | 
					
						
							|  |  |  |         queue:xQueueReceive (default) | 
					
						
							|  |  |  |         queue:xQueueSemaphoreTake (default) | 
					
						
							|  |  |  |         queue:xQueuePeek (default) | 
					
						
							|  |  |  |         queue:uxQueueMessagesWaiting (default) | 
					
						
							|  |  |  |         queue:uxQueueSpacesAvailable (default) | 
					
						
							|  |  |  |         queue:vQueueDelete (default) | 
					
						
							| 
									
										
										
										
											2022-06-21 17:58:22 +08:00
										 |  |  |         if FREERTOS_USE_TRACE_FACILITY = y: | 
					
						
							| 
									
										
										
										
											2022-12-01 23:23:40 +08:00
										 |  |  |             queue:uxQueueGetQueueNumber (default) | 
					
						
							|  |  |  |             queue:vQueueSetQueueNumber (default) | 
					
						
							|  |  |  |             queue:ucQueueGetQueueType (default) | 
					
						
							|  |  |  |         queue:prvGetDisinheritPriorityAfterTimeout (default) | 
					
						
							| 
									
										
										
										
											2022-11-04 22:43:25 +08:00
										 |  |  |         if FREERTOS_UNICORE = y: | 
					
						
							| 
									
										
										
										
											2022-12-01 23:23:40 +08:00
										 |  |  |             queue:prvUnlockQueue (default) | 
					
						
							|  |  |  |             queue:prvIsQueueEmpty (default) | 
					
						
							|  |  |  |             queue:prvIsQueueFull (default) | 
					
						
							| 
									
										
										
										
											2022-06-21 17:58:22 +08:00
										 |  |  |         if FREERTOS_QUEUE_REGISTRY_SIZE > 0: | 
					
						
							| 
									
										
										
										
											2022-12-01 23:23:40 +08:00
										 |  |  |             queue:vQueueAddToRegistry (default) | 
					
						
							|  |  |  |             queue:pcQueueGetName (default) | 
					
						
							|  |  |  |             queue:vQueueUnregisterQueue (default) | 
					
						
							|  |  |  |         queue:vQueueWaitForMessageRestricted (default) | 
					
						
							|  |  |  |         queue:xQueueCreateSet (default) | 
					
						
							|  |  |  |         queue:xQueueAddToSet (default) | 
					
						
							|  |  |  |         queue:xQueueRemoveFromSet (default) | 
					
						
							|  |  |  |         queue:xQueueSelectFromSet (default) | 
					
						
							|  |  |  |         # -------------------------------------------------------------------------------------------------------------- | 
					
						
							|  |  |  |         # stream_buffer.c | 
					
						
							|  |  |  |         # -------------------------------------------------------------------------------------------------------------- | 
					
						
							|  |  |  |         stream_buffer:xStreamBufferGenericCreate (default) | 
					
						
							|  |  |  |         stream_buffer:xStreamBufferGenericCreateStatic (default) | 
					
						
							|  |  |  |         stream_buffer:vStreamBufferDelete (default) | 
					
						
							|  |  |  |         stream_buffer:xStreamBufferReset (default) | 
					
						
							|  |  |  |         stream_buffer:xStreamBufferSetTriggerLevel (default) | 
					
						
							|  |  |  |         stream_buffer:xStreamBufferBytesAvailable (default) | 
					
						
							|  |  |  |         stream_buffer:xStreamBufferSend (default) | 
					
						
							|  |  |  |         stream_buffer:xStreamBufferReceive (default) | 
					
						
							|  |  |  |         stream_buffer:xStreamBufferNextMessageLengthBytes (default) | 
					
						
							|  |  |  |         stream_buffer:xStreamBufferIsEmpty (default) | 
					
						
							|  |  |  |         stream_buffer:xStreamBufferIsFull (default) | 
					
						
							|  |  |  |         stream_buffer:prvWriteBytesToBuffer (default) | 
					
						
							|  |  |  |         stream_buffer:prvReadBytesFromBuffer (default) | 
					
						
							|  |  |  |         stream_buffer:prvInitialiseNewStreamBuffer (default) | 
					
						
							|  |  |  |         if FREERTOS_USE_TRACE_FACILITY = y: | 
					
						
							|  |  |  |             stream_buffer:uxStreamBufferGetStreamBufferNumber (default) | 
					
						
							|  |  |  |             stream_buffer:vStreamBufferSetStreamBufferNumber (default) | 
					
						
							|  |  |  |             stream_buffer:ucStreamBufferGetStreamBufferType (default) | 
					
						
							|  |  |  |         # -------------------------------------------------------------------------------------------------------------- | 
					
						
							|  |  |  |         # tasks.c | 
					
						
							|  |  |  |         # - Tickless idle functions (i.e., step tick) are left in internal RAM for speed | 
					
						
							|  |  |  |         # - The following functions are called when the cache is disabled, thus they are excluded from the list below | 
					
						
							|  |  |  |         #   (i.e., called after "spi_flash_disable_interrupts_caches_and_other_cpu()" is called). | 
					
						
							|  |  |  |         #   - "xTaskGetSchedulerState" | 
					
						
							|  |  |  |         #   - "xTaskGetTickCount" | 
					
						
							|  |  |  |         # -------------------------------------------------------------------------------------------------------------- | 
					
						
							|  |  |  |         tasks:xTaskCreateStaticPinnedToCore (default) | 
					
						
							|  |  |  |         tasks:xTaskCreatePinnedToCore (default) | 
					
						
							|  |  |  |         tasks:prvInitialiseNewTask (default) | 
					
						
							|  |  |  |         tasks:prvAddNewTaskToReadyList (default) | 
					
						
							|  |  |  |         tasks:vTaskDelete (default) | 
					
						
							|  |  |  |         tasks:vTaskDelayUntil (default) | 
					
						
							|  |  |  |         tasks:xTaskDelayUntil (default) | 
					
						
							|  |  |  |         tasks:vTaskDelay (default) | 
					
						
							|  |  |  |         tasks:eTaskGetState (default) | 
					
						
							|  |  |  |         tasks:uxTaskPriorityGet (default) | 
					
						
							|  |  |  |         tasks:vTaskPrioritySet (default) | 
					
						
							|  |  |  |         tasks:vTaskSuspend (default) | 
					
						
							|  |  |  |         tasks:vTaskResume (default) | 
					
						
							|  |  |  |         tasks:vTaskStartScheduler (default) | 
					
						
							|  |  |  |         tasks:vTaskEndScheduler (default) | 
					
						
							|  |  |  |         tasks:vTaskSuspendAll (default) | 
					
						
							|  |  |  |         if CONFIG_FREERTOS_USE_TICKLESS_IDLE = y: | 
					
						
							|  |  |  |             tasks:prvGetExpectedIdleTime (default) | 
					
						
							|  |  |  |         tasks:xTaskResumeAll (default) | 
					
						
							|  |  |  |         tasks:uxTaskGetNumberOfTasks (default) | 
					
						
							|  |  |  |         tasks:pcTaskGetName (default) | 
					
						
							|  |  |  |         tasks:prvSearchForNameWithinSingleList (default) | 
					
						
							|  |  |  |         tasks:xTaskGetHandle (default) | 
					
						
							|  |  |  |         tasks:xTaskGetIdleTaskHandle (default) | 
					
						
							|  |  |  |         tasks:xTaskGetIdleTaskHandleForCPU (default) | 
					
						
							|  |  |  |         tasks:xTaskAbortDelay (default) | 
					
						
							|  |  |  |         # IDF-6410 Application tags not supported yet | 
					
						
							|  |  |  |         #tasks:vTaskSetApplicationTaskTag (default) | 
					
						
							|  |  |  |         #tasks:xTaskGetApplicationTaskTag (default) | 
					
						
							|  |  |  |         #tasks:xTaskCallApplicationTaskHook (default) | 
					
						
							|  |  |  |         tasks:vTaskPlaceOnEventList (default) | 
					
						
							|  |  |  |         tasks:vTaskPlaceOnUnorderedEventList (default) | 
					
						
							|  |  |  |         tasks:vTaskPlaceOnEventListRestricted (default) | 
					
						
							|  |  |  |         if FREERTOS_UNICORE = n: | 
					
						
							|  |  |  |             tasks:vTaskTakeKernelLock (default) | 
					
						
							|  |  |  |             tasks:vTaskReleaseKernelLock (default) | 
					
						
							|  |  |  |         tasks:vTaskRemoveFromUnorderedEventList (default) | 
					
						
							|  |  |  |         tasks:vTaskSetTimeOutState (default) | 
					
						
							|  |  |  |         tasks:vTaskInternalSetTimeOutState (default) | 
					
						
							|  |  |  |         tasks:xTaskCheckForTimeOut (default) | 
					
						
							|  |  |  |         tasks:vTaskMissedYield (default) | 
					
						
							|  |  |  |         tasks:prvIdleTask (default) | 
					
						
							|  |  |  |         if FREERTOS_TLSP_DELETION_CALLBACKS = y: | 
					
						
							|  |  |  |             tasks:vTaskSetThreadLocalStoragePointerAndDelCallback (default) | 
					
						
							|  |  |  |             tasks:prvDeleteTLS (default) | 
					
						
							|  |  |  |         if FREERTOS_THREAD_LOCAL_STORAGE_POINTERS != 0: | 
					
						
							|  |  |  |             tasks:vTaskSetThreadLocalStoragePointer (default) | 
					
						
							|  |  |  |             tasks:pvTaskGetThreadLocalStoragePointer (default) | 
					
						
							|  |  |  |         tasks:prvInitialiseTaskLists (default) | 
					
						
							|  |  |  |         tasks:prvCheckTasksWaitingTermination (default) | 
					
						
							|  |  |  |         tasks:xTaskGetAffinity (default) | 
					
						
							|  |  |  |         tasks:prvTaskCheckFreeStackSpace (default) | 
					
						
							|  |  |  |         tasks:uxTaskGetStackHighWaterMark2 (default) | 
					
						
							|  |  |  |         tasks:uxTaskGetStackHighWaterMark (default) | 
					
						
							|  |  |  |         tasks:pxTaskGetStackStart (default) | 
					
						
							|  |  |  |         tasks:prvDeleteTCB (default) | 
					
						
							|  |  |  |         tasks:xTaskGetCurrentTaskHandle (default) | 
					
						
							|  |  |  |         tasks:xTaskGetCurrentTaskHandleForCPU (default) | 
					
						
							|  |  |  |         tasks:xTaskPriorityInherit (default) | 
					
						
							|  |  |  |         tasks:xTaskPriorityDisinherit (default) | 
					
						
							|  |  |  |         tasks:vTaskPriorityDisinheritAfterTimeout (default) | 
					
						
							|  |  |  |         if FREERTOS_USE_TRACE_FACILITY = y && FREERTOS_USE_STATS_FORMATTING_FUNCTIONS = y: | 
					
						
							|  |  |  |             tasks:prvWriteNameToBuffer (default) | 
					
						
							|  |  |  |             tasks:vTaskList (default) | 
					
						
							|  |  |  |         if FREERTOS_GENERATE_RUN_TIME_STATS = y && FREERTOS_USE_STATS_FORMATTING_FUNCTIONS = y: | 
					
						
							|  |  |  |             tasks:vTaskGetRunTimeStats (default) | 
					
						
							|  |  |  |         tasks:uxTaskResetEventItemValue (default) | 
					
						
							|  |  |  |         tasks:pvTaskIncrementMutexHeldCount (default) | 
					
						
							|  |  |  |         tasks:ulTaskNotifyTake (default) | 
					
						
							|  |  |  |         tasks:ulTaskGenericNotifyTake (default) | 
					
						
							|  |  |  |         tasks:xTaskNotifyWait (default) | 
					
						
							|  |  |  |         tasks:xTaskGenericNotifyWait (default) | 
					
						
							|  |  |  |         tasks:xTaskGenericNotify (default) | 
					
						
							|  |  |  |         tasks:xTaskGenericNotifyStateClear (default) | 
					
						
							|  |  |  |         tasks:ulTaskGenericNotifyValueClear (default) | 
					
						
							|  |  |  |         if FREERTOS_GENERATE_RUN_TIME_STATS = y: | 
					
						
							|  |  |  |             tasks:ulTaskGetIdleRunTimeCounter (default) | 
					
						
							|  |  |  |         tasks:prvAddCurrentTaskToDelayedList (default) | 
					
						
							|  |  |  |         if FREERTOS_USE_TRACE_FACILITY = y: | 
					
						
							|  |  |  |             tasks:uxTaskGetSystemState (default) | 
					
						
							|  |  |  |             tasks:uxTaskGetTaskNumber (default) | 
					
						
							|  |  |  |             tasks:vTaskSetTaskNumber (default) | 
					
						
							|  |  |  |             tasks:vTaskGetInfo (default) | 
					
						
							|  |  |  |             tasks:prvListTasksWithinSingleList (default) | 
					
						
							|  |  |  |         # -------------------------------------------------------------------------------------------------------------- | 
					
						
							|  |  |  |         # timers.c | 
					
						
							|  |  |  |         # - xTimerGenericCommand() is used for ISR calls as well. Thus leave it (and its dependents) in internal RAM | 
					
						
							|  |  |  |         # -------------------------------------------------------------------------------------------------------------- | 
					
						
							|  |  |  |         timers:xTimerCreateTimerTask (default) | 
					
						
							|  |  |  |         timers:xTimerCreate (default) | 
					
						
							|  |  |  |         timers:xTimerCreateStatic (default) | 
					
						
							|  |  |  |         timers:prvInitialiseNewTimer (default) | 
					
						
							|  |  |  |         timers:xTimerGenericCommand (default) | 
					
						
							|  |  |  |         timers:xTimerGetTimerDaemonTaskHandle (default) | 
					
						
							|  |  |  |         timers:xTimerGetPeriod (default) | 
					
						
							|  |  |  |         timers:vTimerSetReloadMode (default) | 
					
						
							|  |  |  |         timers:uxTimerGetReloadMode (default) | 
					
						
							|  |  |  |         timers:xTimerGetExpiryTime (default) | 
					
						
							|  |  |  |         timers:pcTimerGetName (default) | 
					
						
							|  |  |  |         timers:prvProcessExpiredTimer (default) | 
					
						
							|  |  |  |         timers:prvTimerTask (default) | 
					
						
							|  |  |  |         timers:prvProcessTimerOrBlockTask (default) | 
					
						
							|  |  |  |         timers:prvGetNextExpireTime (default) | 
					
						
							|  |  |  |         timers:prvSampleTimeNow (default) | 
					
						
							|  |  |  |         timers:prvInsertTimerInActiveList (default) | 
					
						
							|  |  |  |         timers:prvProcessReceivedCommands (default) | 
					
						
							|  |  |  |         timers:prvSwitchTimerLists (default) | 
					
						
							|  |  |  |         timers:prvCheckForValidListAndQueue (default) | 
					
						
							|  |  |  |         timers:xTimerIsTimerActive (default) | 
					
						
							|  |  |  |         timers:pvTimerGetTimerID (default) | 
					
						
							|  |  |  |         timers:vTimerSetTimerID (default) | 
					
						
							|  |  |  |         timers:xTimerPendFunctionCall (default) | 
					
						
							| 
									
										
										
										
											2022-06-21 17:58:22 +08:00
										 |  |  |         if FREERTOS_USE_TRACE_FACILITY = y: | 
					
						
							| 
									
										
										
										
											2022-12-01 23:23:40 +08:00
										 |  |  |             timers:uxTimerGetTimerNumber (default) | 
					
						
							|  |  |  |             timers:vTimerSetTimerNumber (default) | 
					
						
							|  |  |  |         # -------------------------------------------------------------------------------------------------------------- | 
					
						
							|  |  |  |         # portable/xtensa/port.c | 
					
						
							|  |  |  |         # - Most functions are called from an ISR context, except for scheduler/task init/deinit functions | 
					
						
							|  |  |  |         # - MPU/Coproc currently only exists on ESP32/S3 | 
					
						
							|  |  |  |         # -------------------------------------------------------------------------------------------------------------- | 
					
						
							|  |  |  |         if IDF_TARGET_ARCH_XTENSA = y: | 
					
						
							|  |  |  |             port:xPortStartScheduler (default) | 
					
						
							|  |  |  |             port:vPortEndScheduler (default) | 
					
						
							|  |  |  |             port:pxPortInitialiseStack (default) | 
					
						
							|  |  |  |             if IDF_TARGET_ESP32 = y || IDF_TARGET_ESP32S3 = y : | 
					
						
							|  |  |  |                 port:vPortCleanUpCoprocArea (default) | 
					
						
							|  |  |  |             port:xPortGetTickRateHz (default) | 
					
						
							|  |  |  |         # -------------------------------------------------------------------------------------------------------------- | 
					
						
							|  |  |  |         # portable/riscv/port.c | 
					
						
							|  |  |  |         # - Most functions are called from an ISR context, except for scheduler/task init/deinit functions | 
					
						
							|  |  |  |         # -------------------------------------------------------------------------------------------------------------- | 
					
						
							|  |  |  |         if IDF_TARGET_ARCH_RISCV = y: | 
					
						
							|  |  |  |             port:xPortStartScheduler (default) | 
					
						
							|  |  |  |             port:vPortEndScheduler (default) | 
					
						
							|  |  |  |             port:pxPortInitialiseStack (default) | 
					
						
							|  |  |  |             port:xPortGetTickRateHz (default) |