firmware
IEM Firmware Documentation
Loading...
Searching...
No Matches
mpu_prototypes.h
Go to the documentation of this file.
1/*
2 * FreeRTOS Kernel V11.1.0
3 * Copyright (C) 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
4 *
5 * SPDX-License-Identifier: MIT
6 *
7 * Permission is hereby granted, free of charge, to any person obtaining a copy of
8 * this software and associated documentation files (the "Software"), to deal in
9 * the Software without restriction, including without limitation the rights to
10 * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
11 * the Software, and to permit persons to whom the Software is furnished to do so,
12 * subject to the following conditions:
13 *
14 * The above copyright notice and this permission notice shall be included in all
15 * copies or substantial portions of the Software.
16 *
17 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
19 * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
20 * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
21 * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
22 * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23 *
24 * https://www.FreeRTOS.org
25 * https://github.com/FreeRTOS
26 *
27 */
28
29/*
30 * When the MPU is used the standard (non MPU) API functions are mapped to
31 * equivalents that start "MPU_", the prototypes for which are defined in this
32 * header files. This will cause the application code to call the MPU_ version
33 * which wraps the non-MPU version with privilege promoting then demoting code,
34 * so the kernel code always runs will full privileges.
35 */
36
37
38#ifndef MPU_PROTOTYPES_H
39#define MPU_PROTOTYPES_H
40
49
58
67
76
77/* MPU versions of task.h API functions. */
79BaseType_t MPU_xTaskDelayUntil( TickType_t * const pxPreviousWakeTime,
80 const TickType_t xTimeIncrement ) FREERTOS_SYSTEM_CALL;
85 TaskStatus_t * pxTaskStatus,
86 BaseType_t xGetFreeStackSpace,
98 BaseType_t xIndex,
99 void * pvValue ) FREERTOS_SYSTEM_CALL;
104 const UBaseType_t uxArraySize,
105 configRUN_TIME_COUNTER_TYPE * const pulTotalRunTime ) FREERTOS_SYSTEM_CALL;
111 UBaseType_t uxIndexToNotify,
112 uint32_t ulValue,
113 eNotifyAction eAction,
114 uint32_t * pulPreviousNotificationValue ) FREERTOS_SYSTEM_CALL;
117 uint32_t ulBitsToClearOnEntry,
118 uint32_t ulBitsToClearOnExit,
119 uint32_t * pulNotificationValue,
120 TickType_t xTicksToWait ) FREERTOS_SYSTEM_CALL;
122uint32_t MPU_ulTaskGenericNotifyTake( UBaseType_t uxIndexToWaitOn,
123 BaseType_t xClearCountOnExit,
124 TickType_t xTicksToWait ) FREERTOS_SYSTEM_CALL;
126 UBaseType_t uxIndexToClear ) FREERTOS_SYSTEM_CALL;
128 UBaseType_t uxIndexToClear,
129 uint32_t ulBitsToClear ) FREERTOS_SYSTEM_CALL;
132 TickType_t * const pxTicksToWait ) FREERTOS_SYSTEM_CALL;
135
136/* Privileged only wrappers for Task APIs. These are needed so that
137 * the application can use opaque handles maintained in mpu_wrappers.c
138 * with all the APIs. */
140 const char * const pcName,
141 const configSTACK_DEPTH_TYPE uxStackDepth,
142 void * const pvParameters,
143 UBaseType_t uxPriority,
144 TaskHandle_t * const pxCreatedTask ) PRIVILEGED_FUNCTION;
146 const char * const pcName,
147 const configSTACK_DEPTH_TYPE uxStackDepth,
148 void * const pvParameters,
149 UBaseType_t uxPriority,
150 StackType_t * const puxStackBuffer,
151 StaticTask_t * const pxTaskBuffer ) PRIVILEGED_FUNCTION;
154 UBaseType_t uxNewPriority ) PRIVILEGED_FUNCTION;
157 void * pvParameter ) PRIVILEGED_FUNCTION;
160 TaskHandle_t * pxCreatedTask ) PRIVILEGED_FUNCTION;
162 TaskHandle_t * pxCreatedTask ) PRIVILEGED_FUNCTION;
164 const MemoryRegion_t * const xRegions ) PRIVILEGED_FUNCTION;
166 StackType_t ** ppuxStackBuffer,
167 StaticTask_t ** ppxTaskBuffer ) PRIVILEGED_FUNCTION;
174 UBaseType_t uxIndexToNotify,
175 uint32_t ulValue,
176 eNotifyAction eAction,
177 uint32_t * pulPreviousNotificationValue,
178 BaseType_t * pxHigherPriorityTaskWoken ) PRIVILEGED_FUNCTION;
180 UBaseType_t uxIndexToNotify,
181 BaseType_t * pxHigherPriorityTaskWoken ) PRIVILEGED_FUNCTION;
182
183/* MPU versions of queue.h API functions. */
185 const void * const pvItemToQueue,
186 TickType_t xTicksToWait,
187 const BaseType_t xCopyPosition ) FREERTOS_SYSTEM_CALL;
189 void * const pvBuffer,
190 TickType_t xTicksToWait ) FREERTOS_SYSTEM_CALL;
192 void * const pvBuffer,
193 TickType_t xTicksToWait ) FREERTOS_SYSTEM_CALL;
195 TickType_t xTicksToWait ) FREERTOS_SYSTEM_CALL;
200 TickType_t xTicksToWait ) FREERTOS_SYSTEM_CALL;
203 const char * pcName ) FREERTOS_SYSTEM_CALL;
209 const TickType_t xTicksToWait ) FREERTOS_SYSTEM_CALL;
211 UBaseType_t uxQueueNumber ) FREERTOS_SYSTEM_CALL;
214
215/* Privileged only wrappers for Queue APIs. These are needed so that
216 * the application can use opaque handles maintained in mpu_wrappers.c
217 * with all the APIs. */
221 StaticQueue_t * pxStaticQueue ) PRIVILEGED_FUNCTION;
223 const UBaseType_t uxInitialCount ) PRIVILEGED_FUNCTION;
225 const UBaseType_t uxInitialCount,
226 StaticQueue_t * pxStaticQueue ) PRIVILEGED_FUNCTION;
228 const UBaseType_t uxItemSize,
229 const uint8_t ucQueueType ) PRIVILEGED_FUNCTION;
231 const UBaseType_t uxItemSize,
232 uint8_t * pucQueueStorage,
233 StaticQueue_t * pxStaticQueue,
234 const uint8_t ucQueueType ) PRIVILEGED_FUNCTION;
241 uint8_t ** ppucQueueStorage,
242 StaticQueue_t ** ppxStaticQueue ) PRIVILEGED_FUNCTION;
244 const void * const pvItemToQueue,
245 BaseType_t * const pxHigherPriorityTaskWoken,
246 const BaseType_t xCopyPosition ) PRIVILEGED_FUNCTION;
248 BaseType_t * const pxHigherPriorityTaskWoken ) PRIVILEGED_FUNCTION;
250 void * const pvBuffer ) PRIVILEGED_FUNCTION;
252 void * const pvBuffer,
253 BaseType_t * const pxHigherPriorityTaskWoken ) PRIVILEGED_FUNCTION;
259
260/* MPU versions of timers.h API functions. */
263 void * pvNewID ) FREERTOS_SYSTEM_CALL;
267 const BaseType_t xCommandID,
268 const TickType_t xOptionalValue,
269 BaseType_t * const pxHigherPriorityTaskWoken,
270 const TickType_t xTicksToWait ) FREERTOS_SYSTEM_CALL;
274 const BaseType_t uxAutoReload ) FREERTOS_SYSTEM_CALL;
279
280/* Privileged only wrappers for Timer APIs. These are needed so that
281 * the application can use opaque handles maintained in mpu_wrappers.c
282 * with all the APIs. */
283TimerHandle_t MPU_xTimerCreate( const char * const pcTimerName,
284 const TickType_t xTimerPeriodInTicks,
285 const UBaseType_t uxAutoReload,
286 void * const pvTimerID,
287 TimerCallbackFunction_t pxCallbackFunction ) PRIVILEGED_FUNCTION;
288TimerHandle_t MPU_xTimerCreateStatic( const char * const pcTimerName,
289 const TickType_t xTimerPeriodInTicks,
290 const UBaseType_t uxAutoReload,
291 void * const pvTimerID,
292 TimerCallbackFunction_t pxCallbackFunction,
293 StaticTimer_t * pxTimerBuffer ) PRIVILEGED_FUNCTION;
295 StaticTimer_t ** ppxTimerBuffer ) PRIVILEGED_FUNCTION;
297 const BaseType_t xCommandID,
298 const TickType_t xOptionalValue,
299 BaseType_t * const pxHigherPriorityTaskWoken,
300 const TickType_t xTicksToWait ) PRIVILEGED_FUNCTION;
301
302/* MPU versions of event_group.h API functions. */
304 const EventBits_t uxBitsToWaitFor,
305 const BaseType_t xClearOnExit,
306 const BaseType_t xWaitForAllBits,
307 TickType_t xTicksToWait ) FREERTOS_SYSTEM_CALL;
310 const EventBits_t uxBitsToClear ) FREERTOS_SYSTEM_CALL;
312 const EventBits_t uxBitsToSet ) FREERTOS_SYSTEM_CALL;
314 const EventBits_t uxBitsToSet,
315 const EventBits_t uxBitsToWaitFor,
316 TickType_t xTicksToWait ) FREERTOS_SYSTEM_CALL;
317#if ( configUSE_TRACE_FACILITY == 1 )
318 UBaseType_t MPU_uxEventGroupGetNumber( void * xEventGroup ) FREERTOS_SYSTEM_CALL;
319 void MPU_vEventGroupSetNumber( void * xEventGroup,
320 UBaseType_t uxEventGroupNumber ) FREERTOS_SYSTEM_CALL;
321#endif /* ( configUSE_TRACE_FACILITY == 1 )*/
322
323/* Privileged only wrappers for Event Group APIs. These are needed so that
324 * the application can use opaque handles maintained in mpu_wrappers.c
325 * with all the APIs. */
330 StaticEventGroup_t ** ppxEventGroupBuffer ) PRIVILEGED_FUNCTION;
332 const EventBits_t uxBitsToClear ) PRIVILEGED_FUNCTION;
334 const EventBits_t uxBitsToSet,
335 BaseType_t * pxHigherPriorityTaskWoken ) PRIVILEGED_FUNCTION;
337
338/* MPU versions of message/stream_buffer.h API functions. */
340 const void * pvTxData,
341 size_t xDataLengthBytes,
342 TickType_t xTicksToWait ) FREERTOS_SYSTEM_CALL;
344 void * pvRxData,
345 size_t xBufferLengthBytes,
346 TickType_t xTicksToWait ) FREERTOS_SYSTEM_CALL;
352 size_t xTriggerLevel ) FREERTOS_SYSTEM_CALL;
354
355/* Privileged only wrappers for Stream Buffer APIs. These are needed so that
356 * the application can use opaque handles maintained in mpu_wrappers.c
357 * with all the APIs. */
359 size_t xTriggerLevelBytes,
360 BaseType_t xStreamBufferType,
361 StreamBufferCallbackFunction_t pxSendCompletedCallback,
362 StreamBufferCallbackFunction_t pxReceiveCompletedCallback ) PRIVILEGED_FUNCTION;
364 size_t xTriggerLevelBytes,
365 BaseType_t xStreamBufferType,
366 uint8_t * const pucStreamBufferStorageArea,
367 StaticStreamBuffer_t * const pxStaticStreamBuffer,
368 StreamBufferCallbackFunction_t pxSendCompletedCallback,
369 StreamBufferCallbackFunction_t pxReceiveCompletedCallback ) PRIVILEGED_FUNCTION;
373 uint8_t * ppucStreamBufferStorageArea,
374 StaticStreamBuffer_t * ppxStaticStreamBuffer ) PRIVILEGED_FUNCTION;
376 const void * pvTxData,
377 size_t xDataLengthBytes,
378 BaseType_t * const pxHigherPriorityTaskWoken ) PRIVILEGED_FUNCTION;
380 void * pvRxData,
381 size_t xBufferLengthBytes,
382 BaseType_t * const pxHigherPriorityTaskWoken ) PRIVILEGED_FUNCTION;
384 BaseType_t * pxHigherPriorityTaskWoken ) PRIVILEGED_FUNCTION;
386 BaseType_t * pxHigherPriorityTaskWoken ) PRIVILEGED_FUNCTION;
388
389#endif /* MPU_PROTOTYPES_H */
struct xSTATIC_QUEUE StaticQueue_t
struct xSTATIC_STREAM_BUFFER StaticStreamBuffer_t
struct xSTATIC_TIMER StaticTimer_t
struct xSTATIC_TCB StaticTask_t
struct xSTATIC_EVENT_GROUP StaticEventGroup_t
#define configRUN_TIME_COUNTER_TYPE
Definition FreeRTOSConfig.h:99
TickType_t EventBits_t
Definition event_groups.h:113
struct EventGroupDef_t * EventGroupHandle_t
Definition event_groups.h:103
#define configSTACK_DEPTH_TYPE
Definition FreeRTOSConfig.h:107
UBaseType_t MPU_uxTaskGetNumberOfTasks(void) FREERTOS_SYSTEM_CALL
const char * MPU_pcTimerGetName(TimerHandle_t xTimer) FREERTOS_SYSTEM_CALL
configRUN_TIME_COUNTER_TYPE MPU_ulTaskGetIdleRunTimePercent(void) FREERTOS_SYSTEM_CALL
UBaseType_t MPU_uxTaskBasePriorityGetFromISR(const TaskHandle_t xTask) PRIVILEGED_FUNCTION
UBaseType_t MPU_uxTaskPriorityGetFromISR(const TaskHandle_t xTask) PRIVILEGED_FUNCTION
QueueHandle_t MPU_xQueueCreateMutexStatic(const uint8_t ucQueueType, StaticQueue_t *pxStaticQueue) PRIVILEGED_FUNCTION
BaseType_t MPU_xTaskGenericNotifyEntry(const xTaskGenericNotifyParams_t *pxParams) FREERTOS_SYSTEM_CALL
void MPU_vTaskSetThreadLocalStoragePointer(TaskHandle_t xTaskToSet, BaseType_t xIndex, void *pvValue) FREERTOS_SYSTEM_CALL
void MPU_vTaskSuspend(TaskHandle_t xTaskToSuspend) FREERTOS_SYSTEM_CALL
UBaseType_t MPU_uxTaskPriorityGet(const TaskHandle_t xTask) FREERTOS_SYSTEM_CALL
TickType_t MPU_xTimerGetPeriod(TimerHandle_t xTimer) FREERTOS_SYSTEM_CALL
size_t MPU_xStreamBufferNextMessageLengthBytes(StreamBufferHandle_t xStreamBuffer) FREERTOS_SYSTEM_CALL
void * MPU_pvTaskGetThreadLocalStoragePointer(TaskHandle_t xTaskToQuery, BaseType_t xIndex) FREERTOS_SYSTEM_CALL
QueueHandle_t MPU_xQueueGenericCreate(const UBaseType_t uxQueueLength, const UBaseType_t uxItemSize, const uint8_t ucQueueType) PRIVILEGED_FUNCTION
char * MPU_pcTaskGetName(TaskHandle_t xTaskToQuery) PRIVILEGED_FUNCTION
EventBits_t MPU_xEventGroupSetBits(EventGroupHandle_t xEventGroup, const EventBits_t uxBitsToSet) FREERTOS_SYSTEM_CALL
struct xTaskGenericNotifyWaitParams xTaskGenericNotifyWaitParams_t
eTaskState MPU_eTaskGetState(TaskHandle_t xTask) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xTimerGenericCommandFromTaskEntry(const xTimerGenericCommandFromTaskParams_t *pxParams) FREERTOS_SYSTEM_CALL
void MPU_vEventGroupDelete(EventGroupHandle_t xEventGroup) PRIVILEGED_FUNCTION
void MPU_vTaskGenericNotifyGiveFromISR(TaskHandle_t xTaskToNotify, UBaseType_t uxIndexToNotify, BaseType_t *pxHigherPriorityTaskWoken) PRIVILEGED_FUNCTION
BaseType_t MPU_xQueueGenericSendFromISR(QueueHandle_t xQueue, const void *const pvItemToQueue, BaseType_t *const pxHigherPriorityTaskWoken, const BaseType_t xCopyPosition) PRIVILEGED_FUNCTION
BaseType_t MPU_xTaskGenericNotifyFromISR(TaskHandle_t xTaskToNotify, UBaseType_t uxIndexToNotify, uint32_t ulValue, eNotifyAction eAction, uint32_t *pulPreviousNotificationValue, BaseType_t *pxHigherPriorityTaskWoken) PRIVILEGED_FUNCTION
size_t MPU_xStreamBufferReceive(StreamBufferHandle_t xStreamBuffer, void *pvRxData, size_t xBufferLengthBytes, TickType_t xTicksToWait) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xQueueRemoveFromSet(QueueSetMemberHandle_t xQueueOrSemaphore, QueueSetHandle_t xQueueSet) PRIVILEGED_FUNCTION
TickType_t MPU_xTaskGetTickCount(void) FREERTOS_SYSTEM_CALL
TaskHookFunction_t MPU_xTaskGetApplicationTaskTagFromISR(TaskHandle_t xTask) PRIVILEGED_FUNCTION
uint32_t MPU_ulTaskGenericNotifyTake(UBaseType_t uxIndexToWaitOn, BaseType_t xClearCountOnExit, TickType_t xTicksToWait) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xStreamBufferIsFull(StreamBufferHandle_t xStreamBuffer) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xQueueSemaphoreTake(QueueHandle_t xQueue, TickType_t xTicksToWait) FREERTOS_SYSTEM_CALL
TickType_t MPU_xTimerGetExpiryTime(TimerHandle_t xTimer) FREERTOS_SYSTEM_CALL
StreamBufferHandle_t MPU_xStreamBufferGenericCreateStatic(size_t xBufferSizeBytes, size_t xTriggerLevelBytes, BaseType_t xStreamBufferType, uint8_t *const pucStreamBufferStorageArea, StaticStreamBuffer_t *const pxStaticStreamBuffer, StreamBufferCallbackFunction_t pxSendCompletedCallback, StreamBufferCallbackFunction_t pxReceiveCompletedCallback) PRIVILEGED_FUNCTION
BaseType_t MPU_xTaskCreate(TaskFunction_t pxTaskCode, const char *const pcName, const configSTACK_DEPTH_TYPE uxStackDepth, void *const pvParameters, UBaseType_t uxPriority, TaskHandle_t *const pxCreatedTask) PRIVILEGED_FUNCTION
UBaseType_t MPU_uxTaskBasePriorityGet(const TaskHandle_t xTask) PRIVILEGED_FUNCTION
void MPU_vTaskDelete(TaskHandle_t xTaskToDelete) PRIVILEGED_FUNCTION
EventBits_t MPU_xEventGroupGetBitsFromISR(EventGroupHandle_t xEventGroup) PRIVILEGED_FUNCTION
BaseType_t MPU_xTaskGenericNotifyWaitEntry(const xTaskGenericNotifyWaitParams_t *pxParams) FREERTOS_SYSTEM_CALL
void MPU_vTaskResume(TaskHandle_t xTaskToResume) FREERTOS_SYSTEM_CALL
size_t MPU_xStreamBufferSend(StreamBufferHandle_t xStreamBuffer, const void *pvTxData, size_t xDataLengthBytes, TickType_t xTicksToWait) FREERTOS_SYSTEM_CALL
QueueHandle_t MPU_xQueueGenericCreateStatic(const UBaseType_t uxQueueLength, const UBaseType_t uxItemSize, uint8_t *pucQueueStorage, StaticQueue_t *pxStaticQueue, const uint8_t ucQueueType) PRIVILEGED_FUNCTION
BaseType_t MPU_xTaskAbortDelay(TaskHandle_t xTask) FREERTOS_SYSTEM_CALL
size_t MPU_xStreamBufferReceiveFromISR(StreamBufferHandle_t xStreamBuffer, void *pvRxData, size_t xBufferLengthBytes, BaseType_t *const pxHigherPriorityTaskWoken) PRIVILEGED_FUNCTION
BaseType_t MPU_xQueueGiveFromISR(QueueHandle_t xQueue, BaseType_t *const pxHigherPriorityTaskWoken) PRIVILEGED_FUNCTION
struct xEventGroupWaitBitsParams xEventGroupWaitBitsParams_t
BaseType_t MPU_xQueueIsQueueFullFromISR(const QueueHandle_t xQueue) PRIVILEGED_FUNCTION
EventGroupHandle_t MPU_xEventGroupCreate(void) PRIVILEGED_FUNCTION
BaseType_t MPU_xStreamBufferIsEmpty(StreamBufferHandle_t xStreamBuffer) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xStreamBufferResetFromISR(StreamBufferHandle_t xStreamBuffer) PRIVILEGED_FUNCTION
void MPU_vTaskDelay(const TickType_t xTicksToDelay) FREERTOS_SYSTEM_CALL
QueueHandle_t MPU_xQueueCreateCountingSemaphoreStatic(const UBaseType_t uxMaxCount, const UBaseType_t uxInitialCount, StaticQueue_t *pxStaticQueue) PRIVILEGED_FUNCTION
UBaseType_t MPU_uxQueueSpacesAvailable(const QueueHandle_t xQueue) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xTaskGenericNotifyStateClear(TaskHandle_t xTask, UBaseType_t uxIndexToClear) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xTaskCheckForTimeOut(TimeOut_t *const pxTimeOut, TickType_t *const pxTicksToWait) FREERTOS_SYSTEM_CALL
void MPU_vTaskAllocateMPURegions(TaskHandle_t xTaskToModify, const MemoryRegion_t *const xRegions) PRIVILEGED_FUNCTION
EventBits_t MPU_xEventGroupSync(EventGroupHandle_t xEventGroup, const EventBits_t uxBitsToSet, const EventBits_t uxBitsToWaitFor, TickType_t xTicksToWait) FREERTOS_SYSTEM_CALL
void MPU_vQueueAddToRegistry(QueueHandle_t xQueue, const char *pcName) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xQueueTakeMutexRecursive(QueueHandle_t xMutex, TickType_t xTicksToWait) FREERTOS_SYSTEM_CALL
TimerHandle_t MPU_xTimerCreateStatic(const char *const pcTimerName, const TickType_t xTimerPeriodInTicks, const UBaseType_t uxAutoReload, void *const pvTimerID, TimerCallbackFunction_t pxCallbackFunction, StaticTimer_t *pxTimerBuffer) PRIVILEGED_FUNCTION
void MPU_vTaskPrioritySet(TaskHandle_t xTask, UBaseType_t uxNewPriority) PRIVILEGED_FUNCTION
TaskHandle_t MPU_xTimerGetTimerDaemonTaskHandle(void) FREERTOS_SYSTEM_CALL
UBaseType_t MPU_uxQueueMessagesWaiting(const QueueHandle_t xQueue) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xTaskGenericNotify(TaskHandle_t xTaskToNotify, UBaseType_t uxIndexToNotify, uint32_t ulValue, eNotifyAction eAction, uint32_t *pulPreviousNotificationValue) FREERTOS_SYSTEM_CALL
void MPU_vQueueDelete(QueueHandle_t xQueue) PRIVILEGED_FUNCTION
BaseType_t MPU_xTaskGenericNotifyWait(UBaseType_t uxIndexToWaitOn, uint32_t ulBitsToClearOnEntry, uint32_t ulBitsToClearOnExit, uint32_t *pulNotificationValue, TickType_t xTicksToWait) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xTimerGetReloadMode(TimerHandle_t xTimer) FREERTOS_SYSTEM_CALL
UBaseType_t MPU_uxQueueGetQueueNumber(QueueHandle_t xQueue) FREERTOS_SYSTEM_CALL
void MPU_vQueueUnregisterQueue(QueueHandle_t xQueue) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xQueueGenericSend(QueueHandle_t xQueue, const void *const pvItemToQueue, TickType_t xTicksToWait, const BaseType_t xCopyPosition) FREERTOS_SYSTEM_CALL
TaskHandle_t MPU_xTaskCreateStatic(TaskFunction_t pxTaskCode, const char *const pcName, const configSTACK_DEPTH_TYPE uxStackDepth, void *const pvParameters, UBaseType_t uxPriority, StackType_t *const puxStackBuffer, StaticTask_t *const pxTaskBuffer) PRIVILEGED_FUNCTION
BaseType_t MPU_xEventGroupSetBitsFromISR(EventGroupHandle_t xEventGroup, const EventBits_t uxBitsToSet, BaseType_t *pxHigherPriorityTaskWoken) PRIVILEGED_FUNCTION
void MPU_vTaskGetInfo(TaskHandle_t xTask, TaskStatus_t *pxTaskStatus, BaseType_t xGetFreeStackSpace, eTaskState eState) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xTaskResumeFromISR(TaskHandle_t xTaskToResume) PRIVILEGED_FUNCTION
configRUN_TIME_COUNTER_TYPE MPU_ulTaskGetIdleRunTimeCounter(void) FREERTOS_SYSTEM_CALL
size_t MPU_xStreamBufferBytesAvailable(StreamBufferHandle_t xStreamBuffer) FREERTOS_SYSTEM_CALL
configSTACK_DEPTH_TYPE MPU_uxTaskGetStackHighWaterMark2(TaskHandle_t xTask) FREERTOS_SYSTEM_CALL
void MPU_vQueueSetQueueNumber(QueueHandle_t xQueue, UBaseType_t uxQueueNumber) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xStreamBufferReceiveCompletedFromISR(StreamBufferHandle_t xStreamBuffer, BaseType_t *pxHigherPriorityTaskWoken) PRIVILEGED_FUNCTION
BaseType_t MPU_xTimerGenericCommandFromISR(TimerHandle_t xTimer, const BaseType_t xCommandID, const TickType_t xOptionalValue, BaseType_t *const pxHigherPriorityTaskWoken, const TickType_t xTicksToWait) PRIVILEGED_FUNCTION
void MPU_vTaskSetApplicationTaskTag(TaskHandle_t xTask, TaskHookFunction_t pxHookFunction) FREERTOS_SYSTEM_CALL
QueueSetHandle_t MPU_xQueueCreateSet(const UBaseType_t uxEventQueueLength) PRIVILEGED_FUNCTION
BaseType_t MPU_xTaskGetStaticBuffers(TaskHandle_t xTask, StackType_t **ppuxStackBuffer, StaticTask_t **ppxTaskBuffer) PRIVILEGED_FUNCTION
BaseType_t MPU_xQueueGenericGetStaticBuffers(QueueHandle_t xQueue, uint8_t **ppucQueueStorage, StaticQueue_t **ppxStaticQueue) PRIVILEGED_FUNCTION
size_t MPU_xStreamBufferSpacesAvailable(StreamBufferHandle_t xStreamBuffer) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xStreamBufferGetStaticBuffers(StreamBufferHandle_t xStreamBuffers, uint8_t *ppucStreamBufferStorageArea, StaticStreamBuffer_t *ppxStaticStreamBuffer) PRIVILEGED_FUNCTION
UBaseType_t MPU_uxTaskGetSystemState(TaskStatus_t *const pxTaskStatusArray, const UBaseType_t uxArraySize, configRUN_TIME_COUNTER_TYPE *const pulTotalRunTime) FREERTOS_SYSTEM_CALL
StreamBufferHandle_t MPU_xStreamBufferGenericCreate(size_t xBufferSizeBytes, size_t xTriggerLevelBytes, BaseType_t xStreamBufferType, StreamBufferCallbackFunction_t pxSendCompletedCallback, StreamBufferCallbackFunction_t pxReceiveCompletedCallback) PRIVILEGED_FUNCTION
BaseType_t MPU_xStreamBufferSendCompletedFromISR(StreamBufferHandle_t xStreamBuffer, BaseType_t *pxHigherPriorityTaskWoken) PRIVILEGED_FUNCTION
BaseType_t MPU_xQueuePeekFromISR(QueueHandle_t xQueue, void *const pvBuffer) PRIVILEGED_FUNCTION
BaseType_t MPU_xEventGroupGetStaticBuffer(EventGroupHandle_t xEventGroup, StaticEventGroup_t **ppxEventGroupBuffer) PRIVILEGED_FUNCTION
BaseType_t MPU_xQueuePeek(QueueHandle_t xQueue, void *const pvBuffer, TickType_t xTicksToWait) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xQueueGenericReset(QueueHandle_t xQueue, BaseType_t xNewQueue) PRIVILEGED_FUNCTION
QueueHandle_t MPU_xQueueCreateCountingSemaphore(const UBaseType_t uxMaxCount, const UBaseType_t uxInitialCount) PRIVILEGED_FUNCTION
QueueSetMemberHandle_t MPU_xQueueSelectFromSetFromISR(QueueSetHandle_t xQueueSet) PRIVILEGED_FUNCTION
TaskHookFunction_t MPU_xTaskGetApplicationTaskTag(TaskHandle_t xTask) FREERTOS_SYSTEM_CALL
const char * MPU_pcQueueGetName(QueueHandle_t xQueue) FREERTOS_SYSTEM_CALL
EventBits_t MPU_xEventGroupWaitBitsEntry(const xEventGroupWaitBitsParams_t *pxParams) FREERTOS_SYSTEM_CALL
void * MPU_pvTimerGetTimerID(const TimerHandle_t xTimer) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xTaskCreateRestrictedStatic(const TaskParameters_t *const pxTaskDefinition, TaskHandle_t *pxCreatedTask) PRIVILEGED_FUNCTION
struct xTimerGenericCommandFromTaskParams xTimerGenericCommandFromTaskParams_t
BaseType_t MPU_xStreamBufferSetTriggerLevel(StreamBufferHandle_t xStreamBuffer, size_t xTriggerLevel) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xQueueIsQueueEmptyFromISR(const QueueHandle_t xQueue) PRIVILEGED_FUNCTION
BaseType_t MPU_xTimerGenericCommandFromTask(TimerHandle_t xTimer, const BaseType_t xCommandID, const TickType_t xOptionalValue, BaseType_t *const pxHigherPriorityTaskWoken, const TickType_t xTicksToWait) FREERTOS_SYSTEM_CALL
configRUN_TIME_COUNTER_TYPE MPU_ulTaskGetRunTimePercent(const TaskHandle_t xTask) FREERTOS_SYSTEM_CALL
struct xTaskGenericNotifyParams xTaskGenericNotifyParams_t
EventGroupHandle_t MPU_xEventGroupCreateStatic(StaticEventGroup_t *pxEventGroupBuffer) PRIVILEGED_FUNCTION
void MPU_vTaskSetTimeOutState(TimeOut_t *const pxTimeOut) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xTaskCallApplicationTaskHook(TaskHandle_t xTask, void *pvParameter) PRIVILEGED_FUNCTION
TaskHandle_t MPU_xQueueGetMutexHolderFromISR(QueueHandle_t xSemaphore) PRIVILEGED_FUNCTION
BaseType_t MPU_xQueueReceive(QueueHandle_t xQueue, void *const pvBuffer, TickType_t xTicksToWait) FREERTOS_SYSTEM_CALL
uint8_t MPU_ucQueueGetQueueType(QueueHandle_t xQueue) FREERTOS_SYSTEM_CALL
UBaseType_t MPU_uxTimerGetReloadMode(TimerHandle_t xTimer) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xEventGroupClearBitsFromISR(EventGroupHandle_t xEventGroup, const EventBits_t uxBitsToClear) PRIVILEGED_FUNCTION
QueueSetMemberHandle_t MPU_xQueueSelectFromSet(QueueSetHandle_t xQueueSet, const TickType_t xTicksToWait) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xStreamBufferReset(StreamBufferHandle_t xStreamBuffer) PRIVILEGED_FUNCTION
BaseType_t MPU_xTimerIsTimerActive(TimerHandle_t xTimer) FREERTOS_SYSTEM_CALL
UBaseType_t MPU_uxTaskGetStackHighWaterMark(TaskHandle_t xTask) FREERTOS_SYSTEM_CALL
UBaseType_t MPU_uxQueueMessagesWaitingFromISR(const QueueHandle_t xQueue) PRIVILEGED_FUNCTION
TaskHandle_t MPU_xTaskGetIdleTaskHandle(void) FREERTOS_SYSTEM_CALL
EventBits_t MPU_xEventGroupClearBits(EventGroupHandle_t xEventGroup, const EventBits_t uxBitsToClear) FREERTOS_SYSTEM_CALL
void MPU_vTimerSetTimerID(TimerHandle_t xTimer, void *pvNewID) FREERTOS_SYSTEM_CALL
void MPU_vStreamBufferDelete(StreamBufferHandle_t xStreamBuffer) PRIVILEGED_FUNCTION
BaseType_t MPU_xTaskCreateRestricted(const TaskParameters_t *const pxTaskDefinition, TaskHandle_t *pxCreatedTask) PRIVILEGED_FUNCTION
TaskHandle_t MPU_xTaskGetCurrentTaskHandle(void) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xTaskGetSchedulerState(void) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xQueueGiveMutexRecursive(QueueHandle_t pxMutex) FREERTOS_SYSTEM_CALL
size_t MPU_xStreamBufferSendFromISR(StreamBufferHandle_t xStreamBuffer, const void *pvTxData, size_t xDataLengthBytes, BaseType_t *const pxHigherPriorityTaskWoken) PRIVILEGED_FUNCTION
BaseType_t MPU_xQueueAddToSet(QueueSetMemberHandle_t xQueueOrSemaphore, QueueSetHandle_t xQueueSet) FREERTOS_SYSTEM_CALL
void MPU_vTimerSetReloadMode(TimerHandle_t xTimer, const BaseType_t uxAutoReload) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xQueueReceiveFromISR(QueueHandle_t xQueue, void *const pvBuffer, BaseType_t *const pxHigherPriorityTaskWoken) PRIVILEGED_FUNCTION
configRUN_TIME_COUNTER_TYPE MPU_ulTaskGetRunTimeCounter(const TaskHandle_t xTask) FREERTOS_SYSTEM_CALL
TaskHandle_t MPU_xQueueGetMutexHolder(QueueHandle_t xSemaphore) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xTimerGetStaticBuffer(TimerHandle_t xTimer, StaticTimer_t **ppxTimerBuffer) PRIVILEGED_FUNCTION
QueueHandle_t MPU_xQueueCreateMutex(const uint8_t ucQueueType) PRIVILEGED_FUNCTION
EventBits_t MPU_xEventGroupWaitBits(EventGroupHandle_t xEventGroup, const EventBits_t uxBitsToWaitFor, const BaseType_t xClearOnExit, const BaseType_t xWaitForAllBits, TickType_t xTicksToWait) FREERTOS_SYSTEM_CALL
TimerHandle_t MPU_xTimerCreate(const char *const pcTimerName, const TickType_t xTimerPeriodInTicks, const UBaseType_t uxAutoReload, void *const pvTimerID, TimerCallbackFunction_t pxCallbackFunction) PRIVILEGED_FUNCTION
uint32_t MPU_ulTaskGenericNotifyValueClear(TaskHandle_t xTask, UBaseType_t uxIndexToClear, uint32_t ulBitsToClear) FREERTOS_SYSTEM_CALL
BaseType_t MPU_xTaskDelayUntil(TickType_t *const pxPreviousWakeTime, const TickType_t xTimeIncrement) FREERTOS_SYSTEM_CALL
TaskHandle_t MPU_xTaskGetHandle(const char *pcNameToQuery) PRIVILEGED_FUNCTION
#define PRIVILEGED_FUNCTION
Definition mpu_wrappers.h:269
#define FREERTOS_SYSTEM_CALL
Definition mpu_wrappers.h:271
long BaseType_t
Definition portmacro.h:59
unsigned long UBaseType_t
Definition portmacro.h:60
uint16_t TickType_t
Definition portmacro.h:63
portSTACK_TYPE StackType_t
Definition portmacro.h:58
void(* TaskFunction_t)(void *arg)
Definition projdefs.h:36
struct QueueDefinition * QueueSetHandle_t
Definition queue.h:58
struct QueueDefinition * QueueHandle_t
Definition queue.h:51
struct QueueDefinition * QueueSetMemberHandle_t
Definition queue.h:65
void(* StreamBufferCallbackFunction_t)(StreamBufferHandle_t xStreamBuffer, BaseType_t xIsInsideISR, BaseType_t *const pxHigherPriorityTaskWoken)
Definition stream_buffer.h:84
struct StreamBufferDef_t * StreamBufferHandle_t
Definition stream_buffer.h:79
Definition mpu_prototypes.h:69
BaseType_t xClearOnExit
Definition mpu_prototypes.h:72
BaseType_t xWaitForAllBits
Definition mpu_prototypes.h:73
TickType_t xTicksToWait
Definition mpu_prototypes.h:74
EventBits_t uxBitsToWaitFor
Definition mpu_prototypes.h:71
EventGroupHandle_t xEventGroup
Definition mpu_prototypes.h:70
Definition mpu_prototypes.h:42
TaskHandle_t xTaskToNotify
Definition mpu_prototypes.h:43
uint32_t ulValue
Definition mpu_prototypes.h:45
UBaseType_t uxIndexToNotify
Definition mpu_prototypes.h:44
eNotifyAction eAction
Definition mpu_prototypes.h:46
uint32_t * pulPreviousNotificationValue
Definition mpu_prototypes.h:47
Definition mpu_prototypes.h:51
UBaseType_t uxIndexToWaitOn
Definition mpu_prototypes.h:52
uint32_t ulBitsToClearOnEntry
Definition mpu_prototypes.h:53
uint32_t ulBitsToClearOnExit
Definition mpu_prototypes.h:54
TickType_t xTicksToWait
Definition mpu_prototypes.h:56
uint32_t * pulNotificationValue
Definition mpu_prototypes.h:55
Definition mpu_prototypes.h:60
BaseType_t * pxHigherPriorityTaskWoken
Definition mpu_prototypes.h:64
BaseType_t xCommandID
Definition mpu_prototypes.h:62
TickType_t xOptionalValue
Definition mpu_prototypes.h:63
TickType_t xTicksToWait
Definition mpu_prototypes.h:65
TimerHandle_t xTimer
Definition mpu_prototypes.h:61
eTaskState
Definition task.h:103
struct tskTaskControlBlock * TaskHandle_t
Definition task.h:92
struct xTASK_PARAMETERS TaskParameters_t
struct xTIME_OUT TimeOut_t
struct xMEMORY_REGION MemoryRegion_t
BaseType_t(* TaskHookFunction_t)(void *arg)
Definition task.h:99
struct xTASK_STATUS TaskStatus_t
eNotifyAction
Definition task.h:114
void(* TimerCallbackFunction_t)(TimerHandle_t xTimer)
Definition timers.h:83
struct tmrTimerControl * TimerHandle_t
Definition timers.h:78