xref: /Kernel-v10.6.2/portable/IAR/ARM_CM33/non_secure/mpu_wrappers_v2_asm.S (revision ef7b253b56c9788077f5ecd6c9deb4021923d646)
1/*
2 * FreeRTOS Kernel V10.6.2
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    SECTION freertos_system_calls:CODE:NOROOT(2)
31    THUMB
32/*-----------------------------------------------------------*/
33
34#include "FreeRTOSConfig.h"
35#include "mpu_syscall_numbers.h"
36
37#ifndef configUSE_MPU_WRAPPERS_V1
38    #define configUSE_MPU_WRAPPERS_V1 0
39#endif
40
41/*-----------------------------------------------------------*/
42
43#if ( ( configENABLE_MPU == 1 ) && ( configUSE_MPU_WRAPPERS_V1 == 0 ) )
44
45    PUBLIC MPU_xTaskDelayUntil
46MPU_xTaskDelayUntil:
47    push {r0}
48    mrs r0, control
49    tst r0, #1
50    bne MPU_xTaskDelayUntil_Unpriv
51    MPU_xTaskDelayUntil_Priv:
52        pop {r0}
53        b MPU_xTaskDelayUntilImpl
54    MPU_xTaskDelayUntil_Unpriv:
55        pop {r0}
56        svc #SYSTEM_CALL_xTaskDelayUntil
57/*-----------------------------------------------------------*/
58
59    PUBLIC MPU_xTaskAbortDelay
60MPU_xTaskAbortDelay:
61    push {r0}
62    mrs r0, control
63    tst r0, #1
64    bne MPU_xTaskAbortDelay_Unpriv
65    MPU_xTaskAbortDelay_Priv:
66        pop {r0}
67        b MPU_xTaskAbortDelayImpl
68    MPU_xTaskAbortDelay_Unpriv:
69        pop {r0}
70        svc #SYSTEM_CALL_xTaskAbortDelay
71/*-----------------------------------------------------------*/
72
73    PUBLIC MPU_vTaskDelay
74MPU_vTaskDelay:
75    push {r0}
76    mrs r0, control
77    tst r0, #1
78    bne MPU_vTaskDelay_Unpriv
79    MPU_vTaskDelay_Priv:
80        pop {r0}
81        b MPU_vTaskDelayImpl
82    MPU_vTaskDelay_Unpriv:
83        pop {r0}
84        svc #SYSTEM_CALL_vTaskDelay
85/*-----------------------------------------------------------*/
86
87    PUBLIC MPU_uxTaskPriorityGet
88MPU_uxTaskPriorityGet:
89    push {r0}
90    mrs r0, control
91    tst r0, #1
92    bne MPU_uxTaskPriorityGet_Unpriv
93    MPU_uxTaskPriorityGet_Priv:
94        pop {r0}
95        b MPU_uxTaskPriorityGetImpl
96    MPU_uxTaskPriorityGet_Unpriv:
97        pop {r0}
98        svc #SYSTEM_CALL_uxTaskPriorityGet
99/*-----------------------------------------------------------*/
100
101    PUBLIC MPU_eTaskGetState
102MPU_eTaskGetState:
103    push {r0}
104    mrs r0, control
105    tst r0, #1
106    bne MPU_eTaskGetState_Unpriv
107    MPU_eTaskGetState_Priv:
108        pop {r0}
109        b MPU_eTaskGetStateImpl
110    MPU_eTaskGetState_Unpriv:
111        pop {r0}
112        svc #SYSTEM_CALL_eTaskGetState
113/*-----------------------------------------------------------*/
114
115    PUBLIC MPU_vTaskGetInfo
116MPU_vTaskGetInfo:
117    push {r0}
118    mrs r0, control
119    tst r0, #1
120    bne MPU_vTaskGetInfo_Unpriv
121    MPU_vTaskGetInfo_Priv:
122        pop {r0}
123        b MPU_vTaskGetInfoImpl
124    MPU_vTaskGetInfo_Unpriv:
125        pop {r0}
126        svc #SYSTEM_CALL_vTaskGetInfo
127/*-----------------------------------------------------------*/
128
129    PUBLIC MPU_xTaskGetIdleTaskHandle
130MPU_xTaskGetIdleTaskHandle:
131    push {r0}
132    mrs r0, control
133    tst r0, #1
134    bne MPU_xTaskGetIdleTaskHandle_Unpriv
135    MPU_xTaskGetIdleTaskHandle_Priv:
136        pop {r0}
137        b MPU_xTaskGetIdleTaskHandleImpl
138    MPU_xTaskGetIdleTaskHandle_Unpriv:
139        pop {r0}
140        svc #SYSTEM_CALL_xTaskGetIdleTaskHandle
141/*-----------------------------------------------------------*/
142
143    PUBLIC MPU_vTaskSuspend
144MPU_vTaskSuspend:
145    push {r0}
146    mrs r0, control
147    tst r0, #1
148    bne MPU_vTaskSuspend_Unpriv
149    MPU_vTaskSuspend_Priv:
150        pop {r0}
151        b MPU_vTaskSuspendImpl
152    MPU_vTaskSuspend_Unpriv:
153        pop {r0}
154        svc #SYSTEM_CALL_vTaskSuspend
155/*-----------------------------------------------------------*/
156
157    PUBLIC MPU_vTaskResume
158MPU_vTaskResume:
159    push {r0}
160    mrs r0, control
161    tst r0, #1
162    bne MPU_vTaskResume_Unpriv
163    MPU_vTaskResume_Priv:
164        pop {r0}
165        b MPU_vTaskResumeImpl
166    MPU_vTaskResume_Unpriv:
167        pop {r0}
168        svc #SYSTEM_CALL_vTaskResume
169/*-----------------------------------------------------------*/
170
171    PUBLIC MPU_xTaskGetTickCount
172MPU_xTaskGetTickCount:
173    push {r0}
174    mrs r0, control
175    tst r0, #1
176    bne MPU_xTaskGetTickCount_Unpriv
177    MPU_xTaskGetTickCount_Priv:
178        pop {r0}
179        b MPU_xTaskGetTickCountImpl
180    MPU_xTaskGetTickCount_Unpriv:
181        pop {r0}
182        svc #SYSTEM_CALL_xTaskGetTickCount
183/*-----------------------------------------------------------*/
184
185    PUBLIC MPU_uxTaskGetNumberOfTasks
186MPU_uxTaskGetNumberOfTasks:
187    push {r0}
188    mrs r0, control
189    tst r0, #1
190    bne MPU_uxTaskGetNumberOfTasks_Unpriv
191    MPU_uxTaskGetNumberOfTasks_Priv:
192        pop {r0}
193        b MPU_uxTaskGetNumberOfTasksImpl
194    MPU_uxTaskGetNumberOfTasks_Unpriv:
195        pop {r0}
196        svc #SYSTEM_CALL_uxTaskGetNumberOfTasks
197/*-----------------------------------------------------------*/
198
199    PUBLIC MPU_pcTaskGetName
200MPU_pcTaskGetName:
201    push {r0}
202    mrs r0, control
203    tst r0, #1
204    bne MPU_pcTaskGetName_Unpriv
205    MPU_pcTaskGetName_Priv:
206        pop {r0}
207        b MPU_pcTaskGetNameImpl
208    MPU_pcTaskGetName_Unpriv:
209        pop {r0}
210        svc #SYSTEM_CALL_pcTaskGetName
211/*-----------------------------------------------------------*/
212
213    PUBLIC MPU_ulTaskGetRunTimeCounter
214MPU_ulTaskGetRunTimeCounter:
215    push {r0}
216    mrs r0, control
217    tst r0, #1
218    bne MPU_ulTaskGetRunTimeCounter_Unpriv
219    MPU_ulTaskGetRunTimeCounter_Priv:
220        pop {r0}
221        b MPU_ulTaskGetRunTimeCounterImpl
222    MPU_ulTaskGetRunTimeCounter_Unpriv:
223        pop {r0}
224        svc #SYSTEM_CALL_ulTaskGetRunTimeCounter
225/*-----------------------------------------------------------*/
226
227    PUBLIC MPU_ulTaskGetRunTimePercent
228MPU_ulTaskGetRunTimePercent:
229    push {r0}
230    mrs r0, control
231    tst r0, #1
232    bne MPU_ulTaskGetRunTimePercent_Unpriv
233    MPU_ulTaskGetRunTimePercent_Priv:
234        pop {r0}
235        b MPU_ulTaskGetRunTimePercentImpl
236    MPU_ulTaskGetRunTimePercent_Unpriv:
237        pop {r0}
238        svc #SYSTEM_CALL_ulTaskGetRunTimePercent
239/*-----------------------------------------------------------*/
240
241    PUBLIC MPU_ulTaskGetIdleRunTimePercent
242MPU_ulTaskGetIdleRunTimePercent:
243    push {r0}
244    mrs r0, control
245    tst r0, #1
246    bne MPU_ulTaskGetIdleRunTimePercent_Unpriv
247    MPU_ulTaskGetIdleRunTimePercent_Priv:
248        pop {r0}
249        b MPU_ulTaskGetIdleRunTimePercentImpl
250    MPU_ulTaskGetIdleRunTimePercent_Unpriv:
251        pop {r0}
252        svc #SYSTEM_CALL_ulTaskGetIdleRunTimePercent
253/*-----------------------------------------------------------*/
254
255    PUBLIC MPU_ulTaskGetIdleRunTimeCounter
256MPU_ulTaskGetIdleRunTimeCounter:
257    push {r0}
258    mrs r0, control
259    tst r0, #1
260    bne MPU_ulTaskGetIdleRunTimeCounter_Unpriv
261    MPU_ulTaskGetIdleRunTimeCounter_Priv:
262        pop {r0}
263        b MPU_ulTaskGetIdleRunTimeCounterImpl
264    MPU_ulTaskGetIdleRunTimeCounter_Unpriv:
265        pop {r0}
266        svc #SYSTEM_CALL_ulTaskGetIdleRunTimeCounter
267/*-----------------------------------------------------------*/
268
269    PUBLIC MPU_vTaskSetApplicationTaskTag
270MPU_vTaskSetApplicationTaskTag:
271    push {r0}
272    mrs r0, control
273    tst r0, #1
274    bne MPU_vTaskSetApplicationTaskTag_Unpriv
275    MPU_vTaskSetApplicationTaskTag_Priv:
276        pop {r0}
277        b MPU_vTaskSetApplicationTaskTagImpl
278    MPU_vTaskSetApplicationTaskTag_Unpriv:
279        pop {r0}
280        svc #SYSTEM_CALL_vTaskSetApplicationTaskTag
281/*-----------------------------------------------------------*/
282
283    PUBLIC MPU_xTaskGetApplicationTaskTag
284MPU_xTaskGetApplicationTaskTag:
285    push {r0}
286    mrs r0, control
287    tst r0, #1
288    bne MPU_xTaskGetApplicationTaskTag_Unpriv
289    MPU_xTaskGetApplicationTaskTag_Priv:
290        pop {r0}
291        b MPU_xTaskGetApplicationTaskTagImpl
292    MPU_xTaskGetApplicationTaskTag_Unpriv:
293        pop {r0}
294        svc #SYSTEM_CALL_xTaskGetApplicationTaskTag
295/*-----------------------------------------------------------*/
296
297    PUBLIC MPU_vTaskSetThreadLocalStoragePointer
298MPU_vTaskSetThreadLocalStoragePointer:
299    push {r0}
300    mrs r0, control
301    tst r0, #1
302    bne MPU_vTaskSetThreadLocalStoragePointer_Unpriv
303    MPU_vTaskSetThreadLocalStoragePointer_Priv:
304        pop {r0}
305        b MPU_vTaskSetThreadLocalStoragePointerImpl
306    MPU_vTaskSetThreadLocalStoragePointer_Unpriv:
307        pop {r0}
308        svc #SYSTEM_CALL_vTaskSetThreadLocalStoragePointer
309/*-----------------------------------------------------------*/
310
311    PUBLIC MPU_pvTaskGetThreadLocalStoragePointer
312MPU_pvTaskGetThreadLocalStoragePointer:
313    push {r0}
314    mrs r0, control
315    tst r0, #1
316    bne MPU_pvTaskGetThreadLocalStoragePointer_Unpriv
317    MPU_pvTaskGetThreadLocalStoragePointer_Priv:
318        pop {r0}
319        b MPU_pvTaskGetThreadLocalStoragePointerImpl
320    MPU_pvTaskGetThreadLocalStoragePointer_Unpriv:
321        pop {r0}
322        svc #SYSTEM_CALL_pvTaskGetThreadLocalStoragePointer
323/*-----------------------------------------------------------*/
324
325    PUBLIC MPU_uxTaskGetSystemState
326MPU_uxTaskGetSystemState:
327    push {r0}
328    mrs r0, control
329    tst r0, #1
330    bne MPU_uxTaskGetSystemState_Unpriv
331    MPU_uxTaskGetSystemState_Priv:
332        pop {r0}
333        b MPU_uxTaskGetSystemStateImpl
334    MPU_uxTaskGetSystemState_Unpriv:
335        pop {r0}
336        svc #SYSTEM_CALL_uxTaskGetSystemState
337/*-----------------------------------------------------------*/
338
339    PUBLIC MPU_uxTaskGetStackHighWaterMark
340MPU_uxTaskGetStackHighWaterMark:
341    push {r0}
342    mrs r0, control
343    tst r0, #1
344    bne MPU_uxTaskGetStackHighWaterMark_Unpriv
345    MPU_uxTaskGetStackHighWaterMark_Priv:
346        pop {r0}
347        b MPU_uxTaskGetStackHighWaterMarkImpl
348    MPU_uxTaskGetStackHighWaterMark_Unpriv:
349        pop {r0}
350        svc #SYSTEM_CALL_uxTaskGetStackHighWaterMark
351/*-----------------------------------------------------------*/
352
353    PUBLIC MPU_uxTaskGetStackHighWaterMark2
354MPU_uxTaskGetStackHighWaterMark2:
355    push {r0}
356    mrs r0, control
357    tst r0, #1
358    bne MPU_uxTaskGetStackHighWaterMark2_Unpriv
359    MPU_uxTaskGetStackHighWaterMark2_Priv:
360        pop {r0}
361        b MPU_uxTaskGetStackHighWaterMark2Impl
362    MPU_uxTaskGetStackHighWaterMark2_Unpriv:
363        pop {r0}
364        svc #SYSTEM_CALL_uxTaskGetStackHighWaterMark2
365/*-----------------------------------------------------------*/
366
367    PUBLIC MPU_xTaskGetCurrentTaskHandle
368MPU_xTaskGetCurrentTaskHandle:
369    push {r0}
370    mrs r0, control
371    tst r0, #1
372    bne MPU_xTaskGetCurrentTaskHandle_Unpriv
373    MPU_xTaskGetCurrentTaskHandle_Priv:
374        pop {r0}
375        b MPU_xTaskGetCurrentTaskHandleImpl
376    MPU_xTaskGetCurrentTaskHandle_Unpriv:
377        pop {r0}
378        svc #SYSTEM_CALL_xTaskGetCurrentTaskHandle
379/*-----------------------------------------------------------*/
380
381    PUBLIC MPU_xTaskGetSchedulerState
382MPU_xTaskGetSchedulerState:
383    push {r0}
384    mrs r0, control
385    tst r0, #1
386    bne MPU_xTaskGetSchedulerState_Unpriv
387    MPU_xTaskGetSchedulerState_Priv:
388        pop {r0}
389        b MPU_xTaskGetSchedulerStateImpl
390    MPU_xTaskGetSchedulerState_Unpriv:
391        pop {r0}
392        svc #SYSTEM_CALL_xTaskGetSchedulerState
393/*-----------------------------------------------------------*/
394
395    PUBLIC MPU_vTaskSetTimeOutState
396MPU_vTaskSetTimeOutState:
397    push {r0}
398    mrs r0, control
399    tst r0, #1
400    bne MPU_vTaskSetTimeOutState_Unpriv
401    MPU_vTaskSetTimeOutState_Priv:
402        pop {r0}
403        b MPU_vTaskSetTimeOutStateImpl
404    MPU_vTaskSetTimeOutState_Unpriv:
405        pop {r0}
406        svc #SYSTEM_CALL_vTaskSetTimeOutState
407/*-----------------------------------------------------------*/
408
409    PUBLIC MPU_xTaskCheckForTimeOut
410MPU_xTaskCheckForTimeOut:
411    push {r0}
412    mrs r0, control
413    tst r0, #1
414    bne MPU_xTaskCheckForTimeOut_Unpriv
415    MPU_xTaskCheckForTimeOut_Priv:
416        pop {r0}
417        b MPU_xTaskCheckForTimeOutImpl
418    MPU_xTaskCheckForTimeOut_Unpriv:
419        pop {r0}
420        svc #SYSTEM_CALL_xTaskCheckForTimeOut
421/*-----------------------------------------------------------*/
422
423    PUBLIC MPU_xTaskGenericNotifyEntry
424MPU_xTaskGenericNotifyEntry:
425    push {r0}
426    mrs r0, control
427    tst r0, #1
428    bne MPU_xTaskGenericNotify_Unpriv
429    MPU_xTaskGenericNotify_Priv:
430        pop {r0}
431        b MPU_xTaskGenericNotifyImpl
432    MPU_xTaskGenericNotify_Unpriv:
433        pop {r0}
434        svc #SYSTEM_CALL_xTaskGenericNotify
435/*-----------------------------------------------------------*/
436
437    PUBLIC MPU_xTaskGenericNotifyWaitEntry
438MPU_xTaskGenericNotifyWaitEntry:
439    push {r0}
440    mrs r0, control
441    tst r0, #1
442    bne MPU_xTaskGenericNotifyWait_Unpriv
443    MPU_xTaskGenericNotifyWait_Priv:
444        pop {r0}
445        b MPU_xTaskGenericNotifyWaitImpl
446    MPU_xTaskGenericNotifyWait_Unpriv:
447        pop {r0}
448        svc #SYSTEM_CALL_xTaskGenericNotifyWait
449/*-----------------------------------------------------------*/
450
451    PUBLIC MPU_ulTaskGenericNotifyTake
452MPU_ulTaskGenericNotifyTake:
453    push {r0}
454    mrs r0, control
455    tst r0, #1
456    bne MPU_ulTaskGenericNotifyTake_Unpriv
457    MPU_ulTaskGenericNotifyTake_Priv:
458        pop {r0}
459        b MPU_ulTaskGenericNotifyTakeImpl
460    MPU_ulTaskGenericNotifyTake_Unpriv:
461        pop {r0}
462        svc #SYSTEM_CALL_ulTaskGenericNotifyTake
463/*-----------------------------------------------------------*/
464
465    PUBLIC MPU_xTaskGenericNotifyStateClear
466MPU_xTaskGenericNotifyStateClear:
467    push {r0}
468    mrs r0, control
469    tst r0, #1
470    bne MPU_xTaskGenericNotifyStateClear_Unpriv
471    MPU_xTaskGenericNotifyStateClear_Priv:
472        pop {r0}
473        b MPU_xTaskGenericNotifyStateClearImpl
474    MPU_xTaskGenericNotifyStateClear_Unpriv:
475        pop {r0}
476        svc #SYSTEM_CALL_xTaskGenericNotifyStateClear
477/*-----------------------------------------------------------*/
478
479    PUBLIC MPU_ulTaskGenericNotifyValueClear
480MPU_ulTaskGenericNotifyValueClear:
481    push {r0}
482    mrs r0, control
483    tst r0, #1
484    bne MPU_ulTaskGenericNotifyValueClear_Unpriv
485    MPU_ulTaskGenericNotifyValueClear_Priv:
486        pop {r0}
487        b MPU_ulTaskGenericNotifyValueClearImpl
488    MPU_ulTaskGenericNotifyValueClear_Unpriv:
489        pop {r0}
490        svc #SYSTEM_CALL_ulTaskGenericNotifyValueClear
491/*-----------------------------------------------------------*/
492
493    PUBLIC MPU_xQueueGenericSend
494MPU_xQueueGenericSend:
495    push {r0}
496    mrs r0, control
497    tst r0, #1
498    bne MPU_xQueueGenericSend_Unpriv
499    MPU_xQueueGenericSend_Priv:
500        pop {r0}
501        b MPU_xQueueGenericSendImpl
502    MPU_xQueueGenericSend_Unpriv:
503        pop {r0}
504        svc #SYSTEM_CALL_xQueueGenericSend
505/*-----------------------------------------------------------*/
506
507    PUBLIC MPU_uxQueueMessagesWaiting
508MPU_uxQueueMessagesWaiting:
509    push {r0}
510    mrs r0, control
511    tst r0, #1
512    bne MPU_uxQueueMessagesWaiting_Unpriv
513    MPU_uxQueueMessagesWaiting_Priv:
514        pop {r0}
515        b MPU_uxQueueMessagesWaitingImpl
516    MPU_uxQueueMessagesWaiting_Unpriv:
517        pop {r0}
518        svc #SYSTEM_CALL_uxQueueMessagesWaiting
519/*-----------------------------------------------------------*/
520
521    PUBLIC MPU_uxQueueSpacesAvailable
522MPU_uxQueueSpacesAvailable:
523    push {r0}
524    mrs r0, control
525    tst r0, #1
526    bne MPU_uxQueueSpacesAvailable_Unpriv
527    MPU_uxQueueSpacesAvailable_Priv:
528        pop {r0}
529        b MPU_uxQueueSpacesAvailableImpl
530    MPU_uxQueueSpacesAvailable_Unpriv:
531        pop {r0}
532        svc #SYSTEM_CALL_uxQueueSpacesAvailable
533/*-----------------------------------------------------------*/
534
535    PUBLIC MPU_xQueueReceive
536MPU_xQueueReceive:
537    push {r0}
538    mrs r0, control
539    tst r0, #1
540    bne MPU_xQueueReceive_Unpriv
541    MPU_xQueueReceive_Priv:
542        pop {r0}
543        b MPU_xQueueReceiveImpl
544    MPU_xQueueReceive_Unpriv:
545        pop {r0}
546        svc #SYSTEM_CALL_xQueueReceive
547/*-----------------------------------------------------------*/
548
549    PUBLIC MPU_xQueuePeek
550MPU_xQueuePeek:
551    push {r0}
552    mrs r0, control
553    tst r0, #1
554    bne MPU_xQueuePeek_Unpriv
555    MPU_xQueuePeek_Priv:
556        pop {r0}
557        b MPU_xQueuePeekImpl
558    MPU_xQueuePeek_Unpriv:
559        pop {r0}
560        svc #SYSTEM_CALL_xQueuePeek
561/*-----------------------------------------------------------*/
562
563    PUBLIC MPU_xQueueSemaphoreTake
564MPU_xQueueSemaphoreTake:
565    push {r0}
566    mrs r0, control
567    tst r0, #1
568    bne MPU_xQueueSemaphoreTake_Unpriv
569    MPU_xQueueSemaphoreTake_Priv:
570        pop {r0}
571        b MPU_xQueueSemaphoreTakeImpl
572    MPU_xQueueSemaphoreTake_Unpriv:
573        pop {r0}
574        svc #SYSTEM_CALL_xQueueSemaphoreTake
575/*-----------------------------------------------------------*/
576
577    PUBLIC MPU_xQueueGetMutexHolder
578MPU_xQueueGetMutexHolder:
579    push {r0}
580    mrs r0, control
581    tst r0, #1
582    bne MPU_xQueueGetMutexHolder_Unpriv
583    MPU_xQueueGetMutexHolder_Priv:
584        pop {r0}
585        b MPU_xQueueGetMutexHolderImpl
586    MPU_xQueueGetMutexHolder_Unpriv:
587        pop {r0}
588        svc #SYSTEM_CALL_xQueueGetMutexHolder
589/*-----------------------------------------------------------*/
590
591    PUBLIC MPU_xQueueTakeMutexRecursive
592MPU_xQueueTakeMutexRecursive:
593    push {r0}
594    mrs r0, control
595    tst r0, #1
596    bne MPU_xQueueTakeMutexRecursive_Unpriv
597    MPU_xQueueTakeMutexRecursive_Priv:
598        pop {r0}
599        b MPU_xQueueTakeMutexRecursiveImpl
600    MPU_xQueueTakeMutexRecursive_Unpriv:
601        pop {r0}
602        svc #SYSTEM_CALL_xQueueTakeMutexRecursive
603/*-----------------------------------------------------------*/
604
605    PUBLIC MPU_xQueueGiveMutexRecursive
606MPU_xQueueGiveMutexRecursive:
607    push {r0}
608    mrs r0, control
609    tst r0, #1
610    bne MPU_xQueueGiveMutexRecursive_Unpriv
611    MPU_xQueueGiveMutexRecursive_Priv:
612        pop {r0}
613        b MPU_xQueueGiveMutexRecursiveImpl
614    MPU_xQueueGiveMutexRecursive_Unpriv:
615        pop {r0}
616        svc #SYSTEM_CALL_xQueueGiveMutexRecursive
617/*-----------------------------------------------------------*/
618
619    PUBLIC MPU_xQueueSelectFromSet
620MPU_xQueueSelectFromSet:
621    push {r0}
622    mrs r0, control
623    tst r0, #1
624    bne MPU_xQueueSelectFromSet_Unpriv
625    MPU_xQueueSelectFromSet_Priv:
626        pop {r0}
627        b MPU_xQueueSelectFromSetImpl
628    MPU_xQueueSelectFromSet_Unpriv:
629        pop {r0}
630        svc #SYSTEM_CALL_xQueueSelectFromSet
631/*-----------------------------------------------------------*/
632
633    PUBLIC MPU_xQueueAddToSet
634MPU_xQueueAddToSet:
635    push {r0}
636    mrs r0, control
637    tst r0, #1
638    bne MPU_xQueueAddToSet_Unpriv
639    MPU_xQueueAddToSet_Priv:
640        pop {r0}
641        b MPU_xQueueAddToSetImpl
642    MPU_xQueueAddToSet_Unpriv:
643        pop {r0}
644        svc #SYSTEM_CALL_xQueueAddToSet
645/*-----------------------------------------------------------*/
646
647    PUBLIC MPU_vQueueAddToRegistry
648MPU_vQueueAddToRegistry:
649    push {r0}
650    mrs r0, control
651    tst r0, #1
652    bne MPU_vQueueAddToRegistry_Unpriv
653    MPU_vQueueAddToRegistry_Priv:
654        pop {r0}
655        b MPU_vQueueAddToRegistryImpl
656    MPU_vQueueAddToRegistry_Unpriv:
657        pop {r0}
658        svc #SYSTEM_CALL_vQueueAddToRegistry
659/*-----------------------------------------------------------*/
660
661    PUBLIC MPU_vQueueUnregisterQueue
662MPU_vQueueUnregisterQueue:
663    push {r0}
664    mrs r0, control
665    tst r0, #1
666    bne MPU_vQueueUnregisterQueue_Unpriv
667    MPU_vQueueUnregisterQueue_Priv:
668        pop {r0}
669        b MPU_vQueueUnregisterQueueImpl
670    MPU_vQueueUnregisterQueue_Unpriv:
671        pop {r0}
672        svc #SYSTEM_CALL_vQueueUnregisterQueue
673/*-----------------------------------------------------------*/
674
675    PUBLIC MPU_pcQueueGetName
676MPU_pcQueueGetName:
677    push {r0}
678    mrs r0, control
679    tst r0, #1
680    bne MPU_pcQueueGetName_Unpriv
681    MPU_pcQueueGetName_Priv:
682        pop {r0}
683        b MPU_pcQueueGetNameImpl
684    MPU_pcQueueGetName_Unpriv:
685        pop {r0}
686        svc #SYSTEM_CALL_pcQueueGetName
687/*-----------------------------------------------------------*/
688
689    PUBLIC MPU_pvTimerGetTimerID
690MPU_pvTimerGetTimerID:
691    push {r0}
692    mrs r0, control
693    tst r0, #1
694    bne MPU_pvTimerGetTimerID_Unpriv
695    MPU_pvTimerGetTimerID_Priv:
696        pop {r0}
697        b MPU_pvTimerGetTimerIDImpl
698    MPU_pvTimerGetTimerID_Unpriv:
699        pop {r0}
700        svc #SYSTEM_CALL_pvTimerGetTimerID
701/*-----------------------------------------------------------*/
702
703    PUBLIC MPU_vTimerSetTimerID
704MPU_vTimerSetTimerID:
705    push {r0}
706    mrs r0, control
707    tst r0, #1
708    bne MPU_vTimerSetTimerID_Unpriv
709    MPU_vTimerSetTimerID_Priv:
710        pop {r0}
711        b MPU_vTimerSetTimerIDImpl
712    MPU_vTimerSetTimerID_Unpriv:
713        pop {r0}
714        svc #SYSTEM_CALL_vTimerSetTimerID
715/*-----------------------------------------------------------*/
716
717    PUBLIC MPU_xTimerIsTimerActive
718MPU_xTimerIsTimerActive:
719    push {r0}
720    mrs r0, control
721    tst r0, #1
722    bne MPU_xTimerIsTimerActive_Unpriv
723    MPU_xTimerIsTimerActive_Priv:
724        pop {r0}
725        b MPU_xTimerIsTimerActiveImpl
726    MPU_xTimerIsTimerActive_Unpriv:
727        pop {r0}
728        svc #SYSTEM_CALL_xTimerIsTimerActive
729/*-----------------------------------------------------------*/
730
731    PUBLIC MPU_xTimerGetTimerDaemonTaskHandle
732MPU_xTimerGetTimerDaemonTaskHandle:
733    push {r0}
734    mrs r0, control
735    tst r0, #1
736    bne MPU_xTimerGetTimerDaemonTaskHandle_Unpriv
737    MPU_xTimerGetTimerDaemonTaskHandle_Priv:
738        pop {r0}
739        b MPU_xTimerGetTimerDaemonTaskHandleImpl
740    MPU_xTimerGetTimerDaemonTaskHandle_Unpriv:
741        pop {r0}
742        svc #SYSTEM_CALL_xTimerGetTimerDaemonTaskHandle
743/*-----------------------------------------------------------*/
744
745    PUBLIC MPU_xTimerGenericCommandEntry
746MPU_xTimerGenericCommandEntry:
747    push {r0}
748    /* This function can be called from ISR also and therefore, we need a check
749     * to take privileged path, if called from ISR. */
750    mrs r0, ipsr
751    cmp r0, #0
752    bne MPU_xTimerGenericCommand_Priv
753    mrs r0, control
754    tst r0, #1
755    beq MPU_xTimerGenericCommand_Priv
756    MPU_xTimerGenericCommand_Unpriv:
757        pop {r0}
758        svc #SYSTEM_CALL_xTimerGenericCommand
759    MPU_xTimerGenericCommand_Priv:
760        pop {r0}
761        b MPU_xTimerGenericCommandPrivImpl
762
763/*-----------------------------------------------------------*/
764
765    PUBLIC MPU_pcTimerGetName
766MPU_pcTimerGetName:
767    push {r0}
768    mrs r0, control
769    tst r0, #1
770    bne MPU_pcTimerGetName_Unpriv
771    MPU_pcTimerGetName_Priv:
772        pop {r0}
773        b MPU_pcTimerGetNameImpl
774    MPU_pcTimerGetName_Unpriv:
775        pop {r0}
776        svc #SYSTEM_CALL_pcTimerGetName
777/*-----------------------------------------------------------*/
778
779    PUBLIC MPU_vTimerSetReloadMode
780MPU_vTimerSetReloadMode:
781    push {r0}
782    mrs r0, control
783    tst r0, #1
784    bne MPU_vTimerSetReloadMode_Unpriv
785    MPU_vTimerSetReloadMode_Priv:
786        pop {r0}
787        b MPU_vTimerSetReloadModeImpl
788    MPU_vTimerSetReloadMode_Unpriv:
789        pop {r0}
790        svc #SYSTEM_CALL_vTimerSetReloadMode
791/*-----------------------------------------------------------*/
792
793    PUBLIC MPU_xTimerGetReloadMode
794MPU_xTimerGetReloadMode:
795    push {r0}
796    mrs r0, control
797    tst r0, #1
798    bne MPU_xTimerGetReloadMode_Unpriv
799    MPU_xTimerGetReloadMode_Priv:
800        pop {r0}
801        b MPU_xTimerGetReloadModeImpl
802    MPU_xTimerGetReloadMode_Unpriv:
803        pop {r0}
804        svc #SYSTEM_CALL_xTimerGetReloadMode
805/*-----------------------------------------------------------*/
806
807    PUBLIC MPU_uxTimerGetReloadMode
808MPU_uxTimerGetReloadMode:
809    push {r0}
810    mrs r0, control
811    tst r0, #1
812    bne MPU_uxTimerGetReloadMode_Unpriv
813    MPU_uxTimerGetReloadMode_Priv:
814        pop {r0}
815        b MPU_uxTimerGetReloadModeImpl
816    MPU_uxTimerGetReloadMode_Unpriv:
817        pop {r0}
818        svc #SYSTEM_CALL_uxTimerGetReloadMode
819/*-----------------------------------------------------------*/
820
821    PUBLIC MPU_xTimerGetPeriod
822MPU_xTimerGetPeriod:
823    push {r0}
824    mrs r0, control
825    tst r0, #1
826    bne MPU_xTimerGetPeriod_Unpriv
827    MPU_xTimerGetPeriod_Priv:
828        pop {r0}
829        b MPU_xTimerGetPeriodImpl
830    MPU_xTimerGetPeriod_Unpriv:
831        pop {r0}
832        svc #SYSTEM_CALL_xTimerGetPeriod
833/*-----------------------------------------------------------*/
834
835    PUBLIC MPU_xTimerGetExpiryTime
836MPU_xTimerGetExpiryTime:
837    push {r0}
838    mrs r0, control
839    tst r0, #1
840    bne MPU_xTimerGetExpiryTime_Unpriv
841    MPU_xTimerGetExpiryTime_Priv:
842        pop {r0}
843        b MPU_xTimerGetExpiryTimeImpl
844    MPU_xTimerGetExpiryTime_Unpriv:
845        pop {r0}
846        svc #SYSTEM_CALL_xTimerGetExpiryTime
847/*-----------------------------------------------------------*/
848
849    PUBLIC MPU_xEventGroupWaitBitsEntry
850MPU_xEventGroupWaitBitsEntry:
851    push {r0}
852    mrs r0, control
853    tst r0, #1
854    bne MPU_xEventGroupWaitBits_Unpriv
855    MPU_xEventGroupWaitBits_Priv:
856        pop {r0}
857        b MPU_xEventGroupWaitBitsImpl
858    MPU_xEventGroupWaitBits_Unpriv:
859        pop {r0}
860        svc #SYSTEM_CALL_xEventGroupWaitBits
861/*-----------------------------------------------------------*/
862
863    PUBLIC MPU_xEventGroupClearBits
864MPU_xEventGroupClearBits:
865    push {r0}
866    mrs r0, control
867    tst r0, #1
868    bne MPU_xEventGroupClearBits_Unpriv
869    MPU_xEventGroupClearBits_Priv:
870        pop {r0}
871        b MPU_xEventGroupClearBitsImpl
872    MPU_xEventGroupClearBits_Unpriv:
873        pop {r0}
874        svc #SYSTEM_CALL_xEventGroupClearBits
875/*-----------------------------------------------------------*/
876
877    PUBLIC MPU_xEventGroupSetBits
878MPU_xEventGroupSetBits:
879    push {r0}
880    mrs r0, control
881    tst r0, #1
882    bne MPU_xEventGroupSetBits_Unpriv
883    MPU_xEventGroupSetBits_Priv:
884        pop {r0}
885        b MPU_xEventGroupSetBitsImpl
886    MPU_xEventGroupSetBits_Unpriv:
887        pop {r0}
888        svc #SYSTEM_CALL_xEventGroupSetBits
889/*-----------------------------------------------------------*/
890
891    PUBLIC MPU_xEventGroupSync
892MPU_xEventGroupSync:
893    push {r0}
894    mrs r0, control
895    tst r0, #1
896    bne MPU_xEventGroupSync_Unpriv
897    MPU_xEventGroupSync_Priv:
898        pop {r0}
899        b MPU_xEventGroupSyncImpl
900    MPU_xEventGroupSync_Unpriv:
901        pop {r0}
902        svc #SYSTEM_CALL_xEventGroupSync
903/*-----------------------------------------------------------*/
904
905    PUBLIC MPU_uxEventGroupGetNumber
906MPU_uxEventGroupGetNumber:
907    push {r0}
908    mrs r0, control
909    tst r0, #1
910    bne MPU_uxEventGroupGetNumber_Unpriv
911    MPU_uxEventGroupGetNumber_Priv:
912        pop {r0}
913        b MPU_uxEventGroupGetNumberImpl
914    MPU_uxEventGroupGetNumber_Unpriv:
915        pop {r0}
916        svc #SYSTEM_CALL_uxEventGroupGetNumber
917/*-----------------------------------------------------------*/
918
919    PUBLIC MPU_vEventGroupSetNumber
920MPU_vEventGroupSetNumber:
921    push {r0}
922    mrs r0, control
923    tst r0, #1
924    bne MPU_vEventGroupSetNumber_Unpriv
925    MPU_vEventGroupSetNumber_Priv:
926        pop {r0}
927        b MPU_vEventGroupSetNumberImpl
928    MPU_vEventGroupSetNumber_Unpriv:
929        pop {r0}
930        svc #SYSTEM_CALL_vEventGroupSetNumber
931/*-----------------------------------------------------------*/
932
933    PUBLIC MPU_xStreamBufferSend
934MPU_xStreamBufferSend:
935    push {r0}
936    mrs r0, control
937    tst r0, #1
938    bne MPU_xStreamBufferSend_Unpriv
939    MPU_xStreamBufferSend_Priv:
940        pop {r0}
941        b MPU_xStreamBufferSendImpl
942    MPU_xStreamBufferSend_Unpriv:
943        pop {r0}
944        svc #SYSTEM_CALL_xStreamBufferSend
945/*-----------------------------------------------------------*/
946
947    PUBLIC MPU_xStreamBufferReceive
948MPU_xStreamBufferReceive:
949    push {r0}
950    mrs r0, control
951    tst r0, #1
952    bne MPU_xStreamBufferReceive_Unpriv
953    MPU_xStreamBufferReceive_Priv:
954        pop {r0}
955        b MPU_xStreamBufferReceiveImpl
956    MPU_xStreamBufferReceive_Unpriv:
957        pop {r0}
958        svc #SYSTEM_CALL_xStreamBufferReceive
959/*-----------------------------------------------------------*/
960
961    PUBLIC MPU_xStreamBufferIsFull
962MPU_xStreamBufferIsFull:
963    push {r0}
964    mrs r0, control
965    tst r0, #1
966    bne MPU_xStreamBufferIsFull_Unpriv
967    MPU_xStreamBufferIsFull_Priv:
968        pop {r0}
969        b MPU_xStreamBufferIsFullImpl
970    MPU_xStreamBufferIsFull_Unpriv:
971        pop {r0}
972        svc #SYSTEM_CALL_xStreamBufferIsFull
973/*-----------------------------------------------------------*/
974
975    PUBLIC MPU_xStreamBufferIsEmpty
976MPU_xStreamBufferIsEmpty:
977    push {r0}
978    mrs r0, control
979    tst r0, #1
980    bne MPU_xStreamBufferIsEmpty_Unpriv
981    MPU_xStreamBufferIsEmpty_Priv:
982        pop {r0}
983        b MPU_xStreamBufferIsEmptyImpl
984    MPU_xStreamBufferIsEmpty_Unpriv:
985        pop {r0}
986        svc #SYSTEM_CALL_xStreamBufferIsEmpty
987/*-----------------------------------------------------------*/
988
989    PUBLIC MPU_xStreamBufferSpacesAvailable
990MPU_xStreamBufferSpacesAvailable:
991    push {r0}
992    mrs r0, control
993    tst r0, #1
994    bne MPU_xStreamBufferSpacesAvailable_Unpriv
995    MPU_xStreamBufferSpacesAvailable_Priv:
996        pop {r0}
997        b MPU_xStreamBufferSpacesAvailableImpl
998    MPU_xStreamBufferSpacesAvailable_Unpriv:
999        pop {r0}
1000        svc #SYSTEM_CALL_xStreamBufferSpacesAvailable
1001/*-----------------------------------------------------------*/
1002
1003    PUBLIC MPU_xStreamBufferBytesAvailable
1004MPU_xStreamBufferBytesAvailable:
1005    push {r0}
1006    mrs r0, control
1007    tst r0, #1
1008    bne MPU_xStreamBufferBytesAvailable_Unpriv
1009    MPU_xStreamBufferBytesAvailable_Priv:
1010        pop {r0}
1011        b MPU_xStreamBufferBytesAvailableImpl
1012    MPU_xStreamBufferBytesAvailable_Unpriv:
1013        pop {r0}
1014        svc #SYSTEM_CALL_xStreamBufferBytesAvailable
1015/*-----------------------------------------------------------*/
1016
1017    PUBLIC MPU_xStreamBufferSetTriggerLevel
1018MPU_xStreamBufferSetTriggerLevel:
1019    push {r0}
1020    mrs r0, control
1021    tst r0, #1
1022    bne MPU_xStreamBufferSetTriggerLevel_Unpriv
1023    MPU_xStreamBufferSetTriggerLevel_Priv:
1024        pop {r0}
1025        b MPU_xStreamBufferSetTriggerLevelImpl
1026    MPU_xStreamBufferSetTriggerLevel_Unpriv:
1027        pop {r0}
1028        svc #SYSTEM_CALL_xStreamBufferSetTriggerLevel
1029/*-----------------------------------------------------------*/
1030
1031    PUBLIC MPU_xStreamBufferNextMessageLengthBytes
1032MPU_xStreamBufferNextMessageLengthBytes:
1033    push {r0}
1034    mrs r0, control
1035    tst r0, #1
1036    bne MPU_xStreamBufferNextMessageLengthBytes_Unpriv
1037    MPU_xStreamBufferNextMessageLengthBytes_Priv:
1038        pop {r0}
1039        b MPU_xStreamBufferNextMessageLengthBytesImpl
1040    MPU_xStreamBufferNextMessageLengthBytes_Unpriv:
1041        pop {r0}
1042        svc #SYSTEM_CALL_xStreamBufferNextMessageLengthBytes
1043/*-----------------------------------------------------------*/
1044
1045/* Default weak implementations in case one is not available from
1046 * mpu_wrappers because of config options. */
1047
1048    PUBWEAK MPU_xTaskDelayUntilImpl
1049MPU_xTaskDelayUntilImpl:
1050    b MPU_xTaskDelayUntilImpl
1051
1052    PUBWEAK MPU_xTaskAbortDelayImpl
1053MPU_xTaskAbortDelayImpl:
1054    b MPU_xTaskAbortDelayImpl
1055
1056    PUBWEAK MPU_vTaskDelayImpl
1057MPU_vTaskDelayImpl:
1058    b MPU_vTaskDelayImpl
1059
1060    PUBWEAK MPU_uxTaskPriorityGetImpl
1061MPU_uxTaskPriorityGetImpl:
1062    b MPU_uxTaskPriorityGetImpl
1063
1064    PUBWEAK MPU_eTaskGetStateImpl
1065MPU_eTaskGetStateImpl:
1066    b MPU_eTaskGetStateImpl
1067
1068    PUBWEAK MPU_vTaskGetInfoImpl
1069MPU_vTaskGetInfoImpl:
1070    b MPU_vTaskGetInfoImpl
1071
1072    PUBWEAK MPU_xTaskGetIdleTaskHandleImpl
1073MPU_xTaskGetIdleTaskHandleImpl:
1074    b MPU_xTaskGetIdleTaskHandleImpl
1075
1076    PUBWEAK MPU_vTaskSuspendImpl
1077MPU_vTaskSuspendImpl:
1078    b MPU_vTaskSuspendImpl
1079
1080    PUBWEAK MPU_vTaskResumeImpl
1081MPU_vTaskResumeImpl:
1082    b MPU_vTaskResumeImpl
1083
1084    PUBWEAK MPU_xTaskGetTickCountImpl
1085MPU_xTaskGetTickCountImpl:
1086    b MPU_xTaskGetTickCountImpl
1087
1088    PUBWEAK MPU_uxTaskGetNumberOfTasksImpl
1089MPU_uxTaskGetNumberOfTasksImpl:
1090    b MPU_uxTaskGetNumberOfTasksImpl
1091
1092    PUBWEAK MPU_pcTaskGetNameImpl
1093MPU_pcTaskGetNameImpl:
1094    b MPU_pcTaskGetNameImpl
1095
1096    PUBWEAK MPU_ulTaskGetRunTimeCounterImpl
1097MPU_ulTaskGetRunTimeCounterImpl:
1098    b MPU_ulTaskGetRunTimeCounterImpl
1099
1100    PUBWEAK MPU_ulTaskGetRunTimePercentImpl
1101MPU_ulTaskGetRunTimePercentImpl:
1102    b MPU_ulTaskGetRunTimePercentImpl
1103
1104    PUBWEAK MPU_ulTaskGetIdleRunTimePercentImpl
1105MPU_ulTaskGetIdleRunTimePercentImpl:
1106    b MPU_ulTaskGetIdleRunTimePercentImpl
1107
1108    PUBWEAK MPU_ulTaskGetIdleRunTimeCounterImpl
1109MPU_ulTaskGetIdleRunTimeCounterImpl:
1110    b MPU_ulTaskGetIdleRunTimeCounterImpl
1111
1112    PUBWEAK MPU_vTaskSetApplicationTaskTagImpl
1113MPU_vTaskSetApplicationTaskTagImpl:
1114    b MPU_vTaskSetApplicationTaskTagImpl
1115
1116    PUBWEAK MPU_xTaskGetApplicationTaskTagImpl
1117MPU_xTaskGetApplicationTaskTagImpl:
1118    b MPU_xTaskGetApplicationTaskTagImpl
1119
1120    PUBWEAK MPU_vTaskSetThreadLocalStoragePointerImpl
1121MPU_vTaskSetThreadLocalStoragePointerImpl:
1122    b MPU_vTaskSetThreadLocalStoragePointerImpl
1123
1124    PUBWEAK MPU_pvTaskGetThreadLocalStoragePointerImpl
1125MPU_pvTaskGetThreadLocalStoragePointerImpl:
1126    b MPU_pvTaskGetThreadLocalStoragePointerImpl
1127
1128    PUBWEAK MPU_uxTaskGetSystemStateImpl
1129MPU_uxTaskGetSystemStateImpl:
1130    b MPU_uxTaskGetSystemStateImpl
1131
1132    PUBWEAK MPU_uxTaskGetStackHighWaterMarkImpl
1133MPU_uxTaskGetStackHighWaterMarkImpl:
1134    b MPU_uxTaskGetStackHighWaterMarkImpl
1135
1136    PUBWEAK MPU_uxTaskGetStackHighWaterMark2Impl
1137MPU_uxTaskGetStackHighWaterMark2Impl:
1138    b MPU_uxTaskGetStackHighWaterMark2Impl
1139
1140    PUBWEAK MPU_xTaskGetCurrentTaskHandleImpl
1141MPU_xTaskGetCurrentTaskHandleImpl:
1142    b MPU_xTaskGetCurrentTaskHandleImpl
1143
1144    PUBWEAK MPU_xTaskGetSchedulerStateImpl
1145MPU_xTaskGetSchedulerStateImpl:
1146    b MPU_xTaskGetSchedulerStateImpl
1147
1148    PUBWEAK MPU_vTaskSetTimeOutStateImpl
1149MPU_vTaskSetTimeOutStateImpl:
1150    b MPU_vTaskSetTimeOutStateImpl
1151
1152    PUBWEAK MPU_xTaskCheckForTimeOutImpl
1153MPU_xTaskCheckForTimeOutImpl:
1154    b MPU_xTaskCheckForTimeOutImpl
1155
1156    PUBWEAK MPU_xTaskGenericNotifyImpl
1157MPU_xTaskGenericNotifyImpl:
1158    b MPU_xTaskGenericNotifyImpl
1159
1160    PUBWEAK MPU_xTaskGenericNotifyWaitImpl
1161MPU_xTaskGenericNotifyWaitImpl:
1162    b MPU_xTaskGenericNotifyWaitImpl
1163
1164    PUBWEAK MPU_ulTaskGenericNotifyTakeImpl
1165MPU_ulTaskGenericNotifyTakeImpl:
1166    b MPU_ulTaskGenericNotifyTakeImpl
1167
1168    PUBWEAK MPU_xTaskGenericNotifyStateClearImpl
1169MPU_xTaskGenericNotifyStateClearImpl:
1170    b MPU_xTaskGenericNotifyStateClearImpl
1171
1172    PUBWEAK MPU_ulTaskGenericNotifyValueClearImpl
1173MPU_ulTaskGenericNotifyValueClearImpl:
1174    b MPU_ulTaskGenericNotifyValueClearImpl
1175
1176    PUBWEAK MPU_xQueueGenericSendImpl
1177MPU_xQueueGenericSendImpl:
1178    b MPU_xQueueGenericSendImpl
1179
1180    PUBWEAK MPU_uxQueueMessagesWaitingImpl
1181MPU_uxQueueMessagesWaitingImpl:
1182    b MPU_uxQueueMessagesWaitingImpl
1183
1184    PUBWEAK MPU_uxQueueSpacesAvailableImpl
1185MPU_uxQueueSpacesAvailableImpl:
1186    b MPU_uxQueueSpacesAvailableImpl
1187
1188    PUBWEAK MPU_xQueueReceiveImpl
1189MPU_xQueueReceiveImpl:
1190    b MPU_xQueueReceiveImpl
1191
1192    PUBWEAK MPU_xQueuePeekImpl
1193MPU_xQueuePeekImpl:
1194    b MPU_xQueuePeekImpl
1195
1196    PUBWEAK MPU_xQueueSemaphoreTakeImpl
1197MPU_xQueueSemaphoreTakeImpl:
1198    b MPU_xQueueSemaphoreTakeImpl
1199
1200    PUBWEAK MPU_xQueueGetMutexHolderImpl
1201MPU_xQueueGetMutexHolderImpl:
1202    b MPU_xQueueGetMutexHolderImpl
1203
1204    PUBWEAK MPU_xQueueTakeMutexRecursiveImpl
1205MPU_xQueueTakeMutexRecursiveImpl:
1206    b MPU_xQueueTakeMutexRecursiveImpl
1207
1208    PUBWEAK MPU_xQueueGiveMutexRecursiveImpl
1209MPU_xQueueGiveMutexRecursiveImpl:
1210    b MPU_xQueueGiveMutexRecursiveImpl
1211
1212    PUBWEAK MPU_xQueueSelectFromSetImpl
1213MPU_xQueueSelectFromSetImpl:
1214    b MPU_xQueueSelectFromSetImpl
1215
1216    PUBWEAK MPU_xQueueAddToSetImpl
1217MPU_xQueueAddToSetImpl:
1218    b MPU_xQueueAddToSetImpl
1219
1220    PUBWEAK MPU_vQueueAddToRegistryImpl
1221MPU_vQueueAddToRegistryImpl:
1222    b MPU_vQueueAddToRegistryImpl
1223
1224    PUBWEAK MPU_vQueueUnregisterQueueImpl
1225MPU_vQueueUnregisterQueueImpl:
1226    b MPU_vQueueUnregisterQueueImpl
1227
1228    PUBWEAK MPU_pcQueueGetNameImpl
1229MPU_pcQueueGetNameImpl:
1230    b MPU_pcQueueGetNameImpl
1231
1232    PUBWEAK MPU_pvTimerGetTimerIDImpl
1233MPU_pvTimerGetTimerIDImpl:
1234    b MPU_pvTimerGetTimerIDImpl
1235
1236    PUBWEAK MPU_vTimerSetTimerIDImpl
1237MPU_vTimerSetTimerIDImpl:
1238    b MPU_vTimerSetTimerIDImpl
1239
1240    PUBWEAK MPU_xTimerIsTimerActiveImpl
1241MPU_xTimerIsTimerActiveImpl:
1242    b MPU_xTimerIsTimerActiveImpl
1243
1244    PUBWEAK MPU_xTimerGetTimerDaemonTaskHandleImpl
1245MPU_xTimerGetTimerDaemonTaskHandleImpl:
1246    b MPU_xTimerGetTimerDaemonTaskHandleImpl
1247
1248    PUBWEAK MPU_xTimerGenericCommandPrivImpl
1249MPU_xTimerGenericCommandPrivImpl:
1250    b MPU_xTimerGenericCommandPrivImpl
1251
1252    PUBWEAK MPU_pcTimerGetNameImpl
1253MPU_pcTimerGetNameImpl:
1254    b MPU_pcTimerGetNameImpl
1255
1256    PUBWEAK MPU_vTimerSetReloadModeImpl
1257MPU_vTimerSetReloadModeImpl:
1258    b MPU_vTimerSetReloadModeImpl
1259
1260    PUBWEAK MPU_xTimerGetReloadModeImpl
1261MPU_xTimerGetReloadModeImpl:
1262    b MPU_xTimerGetReloadModeImpl
1263
1264    PUBWEAK MPU_uxTimerGetReloadModeImpl
1265MPU_uxTimerGetReloadModeImpl:
1266    b MPU_uxTimerGetReloadModeImpl
1267
1268    PUBWEAK MPU_xTimerGetPeriodImpl
1269MPU_xTimerGetPeriodImpl:
1270    b MPU_xTimerGetPeriodImpl
1271
1272    PUBWEAK MPU_xTimerGetExpiryTimeImpl
1273MPU_xTimerGetExpiryTimeImpl:
1274    b MPU_xTimerGetExpiryTimeImpl
1275
1276    PUBWEAK MPU_xEventGroupWaitBitsImpl
1277MPU_xEventGroupWaitBitsImpl:
1278    b MPU_xEventGroupWaitBitsImpl
1279
1280    PUBWEAK MPU_xEventGroupClearBitsImpl
1281MPU_xEventGroupClearBitsImpl:
1282    b MPU_xEventGroupClearBitsImpl
1283
1284    PUBWEAK MPU_xEventGroupSetBitsImpl
1285MPU_xEventGroupSetBitsImpl:
1286    b MPU_xEventGroupSetBitsImpl
1287
1288    PUBWEAK MPU_xEventGroupSyncImpl
1289MPU_xEventGroupSyncImpl:
1290    b MPU_xEventGroupSyncImpl
1291
1292    PUBWEAK MPU_uxEventGroupGetNumberImpl
1293MPU_uxEventGroupGetNumberImpl:
1294    b MPU_uxEventGroupGetNumberImpl
1295
1296    PUBWEAK MPU_vEventGroupSetNumberImpl
1297MPU_vEventGroupSetNumberImpl:
1298    b MPU_vEventGroupSetNumberImpl
1299
1300    PUBWEAK MPU_xStreamBufferSendImpl
1301MPU_xStreamBufferSendImpl:
1302    b MPU_xStreamBufferSendImpl
1303
1304    PUBWEAK MPU_xStreamBufferReceiveImpl
1305MPU_xStreamBufferReceiveImpl:
1306    b MPU_xStreamBufferReceiveImpl
1307
1308    PUBWEAK MPU_xStreamBufferIsFullImpl
1309MPU_xStreamBufferIsFullImpl:
1310    b MPU_xStreamBufferIsFullImpl
1311
1312    PUBWEAK MPU_xStreamBufferIsEmptyImpl
1313MPU_xStreamBufferIsEmptyImpl:
1314    b MPU_xStreamBufferIsEmptyImpl
1315
1316    PUBWEAK MPU_xStreamBufferSpacesAvailableImpl
1317MPU_xStreamBufferSpacesAvailableImpl:
1318    b MPU_xStreamBufferSpacesAvailableImpl
1319
1320    PUBWEAK MPU_xStreamBufferBytesAvailableImpl
1321MPU_xStreamBufferBytesAvailableImpl:
1322    b MPU_xStreamBufferBytesAvailableImpl
1323
1324    PUBWEAK MPU_xStreamBufferSetTriggerLevelImpl
1325MPU_xStreamBufferSetTriggerLevelImpl:
1326    b MPU_xStreamBufferSetTriggerLevelImpl
1327
1328    PUBWEAK MPU_xStreamBufferNextMessageLengthBytesImpl
1329MPU_xStreamBufferNextMessageLengthBytesImpl:
1330    b MPU_xStreamBufferNextMessageLengthBytesImpl
1331
1332/*-----------------------------------------------------------*/
1333
1334#endif /* ( configENABLE_MPU == 1 ) && ( configUSE_MPU_WRAPPERS_V1 == 0 ) */
1335
1336    END
1337