2 * FreeRTOS Kernel <DEVELOPMENT BRANCH>
3 * Copyright (C) 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
5 * SPDX-License-Identifier: MIT
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:
14 * The above copyright notice and this permission notice shall be included in all
15 * copies or substantial portions of the Software.
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.
24 * https://www.FreeRTOS.org
25 * https://github.com/FreeRTOS
29 /* Defining MPU_WRAPPERS_INCLUDED_FROM_API_FILE prevents task.h from redefining
30 * all the API functions to use the MPU wrappers. That should only be done when
31 * task.h is included from an application file. */
32 #define MPU_WRAPPERS_INCLUDED_FROM_API_FILE
34 /* Scheduler includes. */
39 #include "event_groups.h"
40 #include "stream_buffer.h"
41 #include "mpu_prototypes.h"
42 #include "mpu_syscall_numbers.h"
44 #undef MPU_WRAPPERS_INCLUDED_FROM_API_FILE
45 /*-----------------------------------------------------------*/
47 #if ( ( configENABLE_MPU == 1 ) && ( configUSE_MPU_WRAPPERS_V1 == 0 ) )
49 #if ( INCLUDE_xTaskDelayUntil == 1 )
51 BaseType_t MPU_xTaskDelayUntil( TickType_t * const pxPreviousWakeTime,
52 const TickType_t xTimeIncrement ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
54 BaseType_t MPU_xTaskDelayUntil( TickType_t * const pxPreviousWakeTime,
55 const TickType_t xTimeIncrement ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
60 " .extern MPU_xTaskDelayUntilImpl \n"
67 " bne MPU_xTaskDelayUntil_Unpriv \n"
68 " MPU_xTaskDelayUntil_Priv: \n"
70 " blx MPU_xTaskDelayUntilImpl \n"
72 " MPU_xTaskDelayUntil_Unpriv: \n"
75 : : "i" ( SYSTEM_CALL_xTaskDelayUntil ) : "memory"
79 #endif /* if ( INCLUDE_xTaskDelayUntil == 1 ) */
80 /*-----------------------------------------------------------*/
82 #if ( INCLUDE_xTaskAbortDelay == 1 )
84 BaseType_t MPU_xTaskAbortDelay( TaskHandle_t xTask ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
86 BaseType_t MPU_xTaskAbortDelay( TaskHandle_t xTask ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
91 " .extern MPU_xTaskAbortDelayImpl \n"
98 " bne MPU_xTaskAbortDelay_Unpriv \n"
99 " MPU_xTaskAbortDelay_Priv: \n"
101 " blx MPU_xTaskAbortDelayImpl \n"
103 " MPU_xTaskAbortDelay_Unpriv: \n"
106 : : "i" ( SYSTEM_CALL_xTaskAbortDelay ) : "memory"
110 #endif /* if ( INCLUDE_xTaskAbortDelay == 1 ) */
111 /*-----------------------------------------------------------*/
113 #if ( INCLUDE_vTaskDelay == 1 )
115 void MPU_vTaskDelay( const TickType_t xTicksToDelay ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
117 void MPU_vTaskDelay( const TickType_t xTicksToDelay ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
121 " .syntax unified \n"
122 " .extern MPU_vTaskDelayImpl \n"
125 " mrs r0, control \n"
129 " bne MPU_vTaskDelay_Unpriv \n"
130 " MPU_vTaskDelay_Priv: \n"
132 " blx MPU_vTaskDelayImpl \n"
134 " MPU_vTaskDelay_Unpriv: \n"
137 : : "i" ( SYSTEM_CALL_vTaskDelay ) : "memory"
141 #endif /* if ( INCLUDE_vTaskDelay == 1 ) */
142 /*-----------------------------------------------------------*/
144 #if ( INCLUDE_uxTaskPriorityGet == 1 )
146 UBaseType_t MPU_uxTaskPriorityGet( const TaskHandle_t xTask ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
148 UBaseType_t MPU_uxTaskPriorityGet( const TaskHandle_t xTask ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
152 " .syntax unified \n"
153 " .extern MPU_uxTaskPriorityGetImpl \n"
156 " mrs r0, control \n"
160 " bne MPU_uxTaskPriorityGet_Unpriv \n"
161 " MPU_uxTaskPriorityGet_Priv: \n"
163 " blx MPU_uxTaskPriorityGetImpl \n"
165 " MPU_uxTaskPriorityGet_Unpriv: \n"
168 : : "i" ( SYSTEM_CALL_uxTaskPriorityGet ) : "memory"
172 #endif /* if ( INCLUDE_uxTaskPriorityGet == 1 ) */
173 /*-----------------------------------------------------------*/
175 #if ( INCLUDE_eTaskGetState == 1 )
177 eTaskState MPU_eTaskGetState( TaskHandle_t xTask ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
179 eTaskState MPU_eTaskGetState( TaskHandle_t xTask ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
183 " .syntax unified \n"
184 " .extern MPU_eTaskGetStateImpl \n"
187 " mrs r0, control \n"
191 " bne MPU_eTaskGetState_Unpriv \n"
192 " MPU_eTaskGetState_Priv: \n"
194 " blx MPU_eTaskGetStateImpl \n"
196 " MPU_eTaskGetState_Unpriv: \n"
199 : : "i" ( SYSTEM_CALL_eTaskGetState ) : "memory"
203 #endif /* if ( INCLUDE_eTaskGetState == 1 ) */
204 /*-----------------------------------------------------------*/
206 #if ( configUSE_TRACE_FACILITY == 1 )
208 void MPU_vTaskGetInfo( TaskHandle_t xTask,
209 TaskStatus_t * pxTaskStatus,
210 BaseType_t xGetFreeStackSpace,
211 eTaskState eState ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
213 void MPU_vTaskGetInfo( TaskHandle_t xTask,
214 TaskStatus_t * pxTaskStatus,
215 BaseType_t xGetFreeStackSpace,
216 eTaskState eState ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
220 " .syntax unified \n"
221 " .extern MPU_vTaskGetInfoImpl \n"
224 " mrs r0, control \n"
228 " bne MPU_vTaskGetInfo_Unpriv \n"
229 " MPU_vTaskGetInfo_Priv: \n"
231 " blx MPU_vTaskGetInfoImpl \n"
233 " MPU_vTaskGetInfo_Unpriv: \n"
236 : : "i" ( SYSTEM_CALL_vTaskGetInfo ) : "memory"
240 #endif /* if ( configUSE_TRACE_FACILITY == 1 ) */
241 /*-----------------------------------------------------------*/
243 #if ( INCLUDE_xTaskGetIdleTaskHandle == 1 )
245 TaskHandle_t MPU_xTaskGetIdleTaskHandle( void ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
247 TaskHandle_t MPU_xTaskGetIdleTaskHandle( void ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
251 " .syntax unified \n"
252 " .extern MPU_xTaskGetIdleTaskHandleImpl \n"
255 " mrs r0, control \n"
259 " bne MPU_xTaskGetIdleTaskHandle_Unpriv \n"
260 " MPU_xTaskGetIdleTaskHandle_Priv: \n"
262 " blx MPU_xTaskGetIdleTaskHandleImpl \n"
264 " MPU_xTaskGetIdleTaskHandle_Unpriv: \n"
267 : : "i" ( SYSTEM_CALL_xTaskGetIdleTaskHandle ) : "memory"
271 #endif /* if ( INCLUDE_xTaskGetIdleTaskHandle == 1 ) */
272 /*-----------------------------------------------------------*/
274 #if ( INCLUDE_vTaskSuspend == 1 )
276 void MPU_vTaskSuspend( TaskHandle_t xTaskToSuspend ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
278 void MPU_vTaskSuspend( TaskHandle_t xTaskToSuspend ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
282 " .syntax unified \n"
283 " .extern MPU_vTaskSuspendImpl \n"
286 " mrs r0, control \n"
290 " bne MPU_vTaskSuspend_Unpriv \n"
291 " MPU_vTaskSuspend_Priv: \n"
293 " blx MPU_vTaskSuspendImpl \n"
295 " MPU_vTaskSuspend_Unpriv: \n"
298 : : "i" ( SYSTEM_CALL_vTaskSuspend ) : "memory"
302 #endif /* if ( INCLUDE_vTaskSuspend == 1 ) */
303 /*-----------------------------------------------------------*/
305 #if ( INCLUDE_vTaskSuspend == 1 )
307 void MPU_vTaskResume( TaskHandle_t xTaskToResume ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
309 void MPU_vTaskResume( TaskHandle_t xTaskToResume ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
313 " .syntax unified \n"
314 " .extern MPU_vTaskResumeImpl \n"
317 " mrs r0, control \n"
321 " bne MPU_vTaskResume_Unpriv \n"
322 " MPU_vTaskResume_Priv: \n"
324 " blx MPU_vTaskResumeImpl \n"
326 " MPU_vTaskResume_Unpriv: \n"
329 : : "i" ( SYSTEM_CALL_vTaskResume ) : "memory"
333 #endif /* if ( INCLUDE_vTaskSuspend == 1 ) */
334 /*-----------------------------------------------------------*/
336 TickType_t MPU_xTaskGetTickCount( void ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
338 TickType_t MPU_xTaskGetTickCount( void ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
342 " .syntax unified \n"
343 " .extern MPU_xTaskGetTickCountImpl \n"
346 " mrs r0, control \n"
350 " bne MPU_xTaskGetTickCount_Unpriv \n"
351 " MPU_xTaskGetTickCount_Priv: \n"
353 " blx MPU_xTaskGetTickCountImpl \n"
355 " MPU_xTaskGetTickCount_Unpriv: \n"
358 : : "i" ( SYSTEM_CALL_xTaskGetTickCount ) : "memory"
361 /*-----------------------------------------------------------*/
363 UBaseType_t MPU_uxTaskGetNumberOfTasks( void ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
365 UBaseType_t MPU_uxTaskGetNumberOfTasks( void ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
369 " .syntax unified \n"
370 " .extern MPU_uxTaskGetNumberOfTasksImpl \n"
373 " mrs r0, control \n"
377 " bne MPU_uxTaskGetNumberOfTasks_Unpriv \n"
378 " MPU_uxTaskGetNumberOfTasks_Priv: \n"
380 " blx MPU_uxTaskGetNumberOfTasksImpl \n"
382 " MPU_uxTaskGetNumberOfTasks_Unpriv: \n"
385 : : "i" ( SYSTEM_CALL_uxTaskGetNumberOfTasks ) : "memory"
388 /*-----------------------------------------------------------*/
390 #if ( configGENERATE_RUN_TIME_STATS == 1 )
392 configRUN_TIME_COUNTER_TYPE MPU_ulTaskGetRunTimeCounter( const TaskHandle_t xTask ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
394 configRUN_TIME_COUNTER_TYPE MPU_ulTaskGetRunTimeCounter( const TaskHandle_t xTask ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
398 " .syntax unified \n"
399 " .extern MPU_ulTaskGetRunTimeCounterImpl \n"
402 " mrs r0, control \n"
406 " bne MPU_ulTaskGetRunTimeCounter_Unpriv \n"
407 " MPU_ulTaskGetRunTimeCounter_Priv: \n"
409 " blx MPU_ulTaskGetRunTimeCounterImpl \n"
411 " MPU_ulTaskGetRunTimeCounter_Unpriv: \n"
414 : : "i" ( SYSTEM_CALL_ulTaskGetRunTimeCounter ) : "memory"
418 #endif /* if ( ( configGENERATE_RUN_TIME_STATS == 1 ) */
419 /*-----------------------------------------------------------*/
421 #if ( configGENERATE_RUN_TIME_STATS == 1 )
423 configRUN_TIME_COUNTER_TYPE MPU_ulTaskGetRunTimePercent( const TaskHandle_t xTask ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
425 configRUN_TIME_COUNTER_TYPE MPU_ulTaskGetRunTimePercent( const TaskHandle_t xTask ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
429 " .syntax unified \n"
430 " .extern MPU_ulTaskGetRunTimePercentImpl \n"
433 " mrs r0, control \n"
437 " bne MPU_ulTaskGetRunTimePercent_Unpriv \n"
438 " MPU_ulTaskGetRunTimePercent_Priv: \n"
440 " blx MPU_ulTaskGetRunTimePercentImpl \n"
442 " MPU_ulTaskGetRunTimePercent_Unpriv: \n"
445 : : "i" ( SYSTEM_CALL_ulTaskGetRunTimePercent ) : "memory"
449 #endif /* if ( ( configGENERATE_RUN_TIME_STATS == 1 ) */
450 /*-----------------------------------------------------------*/
452 #if ( ( configGENERATE_RUN_TIME_STATS == 1 ) && ( INCLUDE_xTaskGetIdleTaskHandle == 1 ) )
454 configRUN_TIME_COUNTER_TYPE MPU_ulTaskGetIdleRunTimePercent( void ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
456 configRUN_TIME_COUNTER_TYPE MPU_ulTaskGetIdleRunTimePercent( void ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
460 " .syntax unified \n"
461 " .extern MPU_ulTaskGetIdleRunTimePercentImpl \n"
464 " mrs r0, control \n"
468 " bne MPU_ulTaskGetIdleRunTimePercent_Unpriv \n"
469 " MPU_ulTaskGetIdleRunTimePercent_Priv: \n"
471 " blx MPU_ulTaskGetIdleRunTimePercentImpl \n"
473 " MPU_ulTaskGetIdleRunTimePercent_Unpriv: \n"
476 : : "i" ( SYSTEM_CALL_ulTaskGetIdleRunTimePercent ) : "memory"
480 #endif /* if ( ( configGENERATE_RUN_TIME_STATS == 1 ) && ( INCLUDE_xTaskGetIdleTaskHandle == 1 ) ) */
481 /*-----------------------------------------------------------*/
483 #if ( ( configGENERATE_RUN_TIME_STATS == 1 ) && ( INCLUDE_xTaskGetIdleTaskHandle == 1 ) )
485 configRUN_TIME_COUNTER_TYPE MPU_ulTaskGetIdleRunTimeCounter( void ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
487 configRUN_TIME_COUNTER_TYPE MPU_ulTaskGetIdleRunTimeCounter( void ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
491 " .syntax unified \n"
492 " .extern MPU_ulTaskGetIdleRunTimeCounterImpl \n"
495 " mrs r0, control \n"
499 " bne MPU_ulTaskGetIdleRunTimeCounter_Unpriv \n"
500 " MPU_ulTaskGetIdleRunTimeCounter_Priv: \n"
502 " blx MPU_ulTaskGetIdleRunTimeCounterImpl \n"
504 " MPU_ulTaskGetIdleRunTimeCounter_Unpriv: \n"
507 : : "i" ( SYSTEM_CALL_ulTaskGetIdleRunTimeCounter ) : "memory"
511 #endif /* if ( ( configGENERATE_RUN_TIME_STATS == 1 ) && ( INCLUDE_xTaskGetIdleTaskHandle == 1 ) ) */
512 /*-----------------------------------------------------------*/
514 #if ( configUSE_APPLICATION_TASK_TAG == 1 )
516 void MPU_vTaskSetApplicationTaskTag( TaskHandle_t xTask,
517 TaskHookFunction_t pxHookFunction ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
519 void MPU_vTaskSetApplicationTaskTag( TaskHandle_t xTask,
520 TaskHookFunction_t pxHookFunction ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
524 " .syntax unified \n"
525 " .extern MPU_vTaskSetApplicationTaskTagImpl \n"
528 " mrs r0, control \n"
532 " bne MPU_vTaskSetApplicationTaskTag_Unpriv \n"
533 " MPU_vTaskSetApplicationTaskTag_Priv: \n"
535 " blx MPU_vTaskSetApplicationTaskTagImpl \n"
537 " MPU_vTaskSetApplicationTaskTag_Unpriv: \n"
540 : : "i" ( SYSTEM_CALL_vTaskSetApplicationTaskTag ) : "memory"
544 #endif /* if ( configUSE_APPLICATION_TASK_TAG == 1 ) */
545 /*-----------------------------------------------------------*/
547 #if ( configUSE_APPLICATION_TASK_TAG == 1 )
549 TaskHookFunction_t MPU_xTaskGetApplicationTaskTag( TaskHandle_t xTask ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
551 TaskHookFunction_t MPU_xTaskGetApplicationTaskTag( TaskHandle_t xTask ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
555 " .syntax unified \n"
556 " .extern MPU_xTaskGetApplicationTaskTagImpl \n"
559 " mrs r0, control \n"
563 " bne MPU_xTaskGetApplicationTaskTag_Unpriv \n"
564 " MPU_xTaskGetApplicationTaskTag_Priv: \n"
566 " blx MPU_xTaskGetApplicationTaskTagImpl \n"
568 " MPU_xTaskGetApplicationTaskTag_Unpriv: \n"
571 : : "i" ( SYSTEM_CALL_xTaskGetApplicationTaskTag ) : "memory"
575 #endif /* if ( configUSE_APPLICATION_TASK_TAG == 1 ) */
576 /*-----------------------------------------------------------*/
578 #if ( configNUM_THREAD_LOCAL_STORAGE_POINTERS != 0 )
580 void MPU_vTaskSetThreadLocalStoragePointer( TaskHandle_t xTaskToSet,
582 void * pvValue ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
584 void MPU_vTaskSetThreadLocalStoragePointer( TaskHandle_t xTaskToSet,
586 void * pvValue ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
590 " .syntax unified \n"
591 " .extern MPU_vTaskSetThreadLocalStoragePointerImpl \n"
594 " mrs r0, control \n"
598 " bne MPU_vTaskSetThreadLocalStoragePointer_Unpriv \n"
599 " MPU_vTaskSetThreadLocalStoragePointer_Priv: \n"
601 " blx MPU_vTaskSetThreadLocalStoragePointerImpl \n"
603 " MPU_vTaskSetThreadLocalStoragePointer_Unpriv: \n"
606 : : "i" ( SYSTEM_CALL_vTaskSetThreadLocalStoragePointer ) : "memory"
610 #endif /* if ( configNUM_THREAD_LOCAL_STORAGE_POINTERS != 0 ) */
611 /*-----------------------------------------------------------*/
613 #if ( configNUM_THREAD_LOCAL_STORAGE_POINTERS != 0 )
615 void * MPU_pvTaskGetThreadLocalStoragePointer( TaskHandle_t xTaskToQuery,
616 BaseType_t xIndex ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
618 void * MPU_pvTaskGetThreadLocalStoragePointer( TaskHandle_t xTaskToQuery,
619 BaseType_t xIndex ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
623 " .syntax unified \n"
624 " .extern MPU_pvTaskGetThreadLocalStoragePointerImpl \n"
627 " mrs r0, control \n"
631 " bne MPU_pvTaskGetThreadLocalStoragePointer_Unpriv \n"
632 " MPU_pvTaskGetThreadLocalStoragePointer_Priv: \n"
634 " blx MPU_pvTaskGetThreadLocalStoragePointerImpl \n"
636 " MPU_pvTaskGetThreadLocalStoragePointer_Unpriv: \n"
639 : : "i" ( SYSTEM_CALL_pvTaskGetThreadLocalStoragePointer ) : "memory"
643 #endif /* if ( configNUM_THREAD_LOCAL_STORAGE_POINTERS != 0 ) */
644 /*-----------------------------------------------------------*/
646 #if ( configUSE_TRACE_FACILITY == 1 )
648 UBaseType_t MPU_uxTaskGetSystemState( TaskStatus_t * const pxTaskStatusArray,
649 const UBaseType_t uxArraySize,
650 configRUN_TIME_COUNTER_TYPE * const pulTotalRunTime ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
652 UBaseType_t MPU_uxTaskGetSystemState( TaskStatus_t * const pxTaskStatusArray,
653 const UBaseType_t uxArraySize,
654 configRUN_TIME_COUNTER_TYPE * const pulTotalRunTime ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
658 " .syntax unified \n"
659 " .extern MPU_uxTaskGetSystemStateImpl \n"
662 " mrs r0, control \n"
666 " bne MPU_uxTaskGetSystemState_Unpriv \n"
667 " MPU_uxTaskGetSystemState_Priv: \n"
669 " blx MPU_uxTaskGetSystemStateImpl \n"
671 " MPU_uxTaskGetSystemState_Unpriv: \n"
674 : : "i" ( SYSTEM_CALL_uxTaskGetSystemState ) : "memory"
678 #endif /* if ( configUSE_TRACE_FACILITY == 1 ) */
679 /*-----------------------------------------------------------*/
681 #if ( INCLUDE_uxTaskGetStackHighWaterMark == 1 )
683 UBaseType_t MPU_uxTaskGetStackHighWaterMark( TaskHandle_t xTask ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
685 UBaseType_t MPU_uxTaskGetStackHighWaterMark( TaskHandle_t xTask ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
689 " .syntax unified \n"
690 " .extern MPU_uxTaskGetStackHighWaterMarkImpl \n"
693 " mrs r0, control \n"
697 " bne MPU_uxTaskGetStackHighWaterMark_Unpriv \n"
698 " MPU_uxTaskGetStackHighWaterMark_Priv: \n"
700 " blx MPU_uxTaskGetStackHighWaterMarkImpl \n"
702 " MPU_uxTaskGetStackHighWaterMark_Unpriv: \n"
705 : : "i" ( SYSTEM_CALL_uxTaskGetStackHighWaterMark ) : "memory"
709 #endif /* if ( INCLUDE_uxTaskGetStackHighWaterMark == 1 ) */
710 /*-----------------------------------------------------------*/
712 #if ( INCLUDE_uxTaskGetStackHighWaterMark2 == 1 )
714 configSTACK_DEPTH_TYPE MPU_uxTaskGetStackHighWaterMark2( TaskHandle_t xTask ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
716 configSTACK_DEPTH_TYPE MPU_uxTaskGetStackHighWaterMark2( TaskHandle_t xTask ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
720 " .syntax unified \n"
721 " .extern MPU_uxTaskGetStackHighWaterMark2Impl \n"
724 " mrs r0, control \n"
728 " bne MPU_uxTaskGetStackHighWaterMark2_Unpriv \n"
729 " MPU_uxTaskGetStackHighWaterMark2_Priv: \n"
731 " blx MPU_uxTaskGetStackHighWaterMark2Impl \n"
733 " MPU_uxTaskGetStackHighWaterMark2_Unpriv: \n"
736 : : "i" ( SYSTEM_CALL_uxTaskGetStackHighWaterMark2 ) : "memory"
740 #endif /* if ( INCLUDE_uxTaskGetStackHighWaterMark2 == 1 ) */
741 /*-----------------------------------------------------------*/
743 #if ( ( INCLUDE_xTaskGetCurrentTaskHandle == 1 ) || ( configUSE_MUTEXES == 1 ) )
745 TaskHandle_t MPU_xTaskGetCurrentTaskHandle( void ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
747 TaskHandle_t MPU_xTaskGetCurrentTaskHandle( void ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
751 " .syntax unified \n"
752 " .extern MPU_xTaskGetCurrentTaskHandleImpl \n"
755 " mrs r0, control \n"
759 " bne MPU_xTaskGetCurrentTaskHandle_Unpriv \n"
760 " MPU_xTaskGetCurrentTaskHandle_Priv: \n"
762 " blx MPU_xTaskGetCurrentTaskHandleImpl \n"
764 " MPU_xTaskGetCurrentTaskHandle_Unpriv: \n"
767 : : "i" ( SYSTEM_CALL_xTaskGetCurrentTaskHandle ) : "memory"
771 #endif /* if ( ( INCLUDE_xTaskGetCurrentTaskHandle == 1 ) || ( configUSE_MUTEXES == 1 ) ) */
772 /*-----------------------------------------------------------*/
774 #if ( INCLUDE_xTaskGetSchedulerState == 1 )
776 BaseType_t MPU_xTaskGetSchedulerState( void ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
778 BaseType_t MPU_xTaskGetSchedulerState( void ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
782 " .syntax unified \n"
783 " .extern MPU_xTaskGetSchedulerStateImpl \n"
786 " mrs r0, control \n"
790 " bne MPU_xTaskGetSchedulerState_Unpriv \n"
791 " MPU_xTaskGetSchedulerState_Priv: \n"
793 " blx MPU_xTaskGetSchedulerStateImpl \n"
795 " MPU_xTaskGetSchedulerState_Unpriv: \n"
798 : : "i" ( SYSTEM_CALL_xTaskGetSchedulerState ) : "memory"
802 #endif /* if ( INCLUDE_xTaskGetSchedulerState == 1 ) */
803 /*-----------------------------------------------------------*/
805 void MPU_vTaskSetTimeOutState( TimeOut_t * const pxTimeOut ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
807 void MPU_vTaskSetTimeOutState( TimeOut_t * const pxTimeOut ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
811 " .syntax unified \n"
812 " .extern MPU_vTaskSetTimeOutStateImpl \n"
815 " mrs r0, control \n"
819 " bne MPU_vTaskSetTimeOutState_Unpriv \n"
820 " MPU_vTaskSetTimeOutState_Priv: \n"
822 " blx MPU_vTaskSetTimeOutStateImpl \n"
824 " MPU_vTaskSetTimeOutState_Unpriv: \n"
827 : : "i" ( SYSTEM_CALL_vTaskSetTimeOutState ) : "memory"
830 /*-----------------------------------------------------------*/
832 BaseType_t MPU_xTaskCheckForTimeOut( TimeOut_t * const pxTimeOut,
833 TickType_t * const pxTicksToWait ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
835 BaseType_t MPU_xTaskCheckForTimeOut( TimeOut_t * const pxTimeOut,
836 TickType_t * const pxTicksToWait ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
840 " .syntax unified \n"
841 " .extern MPU_xTaskCheckForTimeOutImpl \n"
844 " mrs r0, control \n"
848 " bne MPU_xTaskCheckForTimeOut_Unpriv \n"
849 " MPU_xTaskCheckForTimeOut_Priv: \n"
851 " blx MPU_xTaskCheckForTimeOutImpl \n"
853 " MPU_xTaskCheckForTimeOut_Unpriv: \n"
856 : : "i" ( SYSTEM_CALL_xTaskCheckForTimeOut ) : "memory"
859 /*-----------------------------------------------------------*/
861 #if ( configUSE_TASK_NOTIFICATIONS == 1 )
863 BaseType_t MPU_xTaskGenericNotifyEntry( const xTaskGenericNotifyParams_t * pxParams ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
865 BaseType_t MPU_xTaskGenericNotifyEntry( const xTaskGenericNotifyParams_t * pxParams ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
869 " .syntax unified \n"
870 " .extern MPU_xTaskGenericNotifyImpl \n"
873 " mrs r0, control \n"
877 " bne MPU_xTaskGenericNotify_Unpriv \n"
878 " MPU_xTaskGenericNotify_Priv: \n"
880 " blx MPU_xTaskGenericNotifyImpl \n"
882 " MPU_xTaskGenericNotify_Unpriv: \n"
885 : : "i" ( SYSTEM_CALL_xTaskGenericNotify ) : "memory"
889 #endif /* if ( configUSE_TASK_NOTIFICATIONS == 1 ) */
890 /*-----------------------------------------------------------*/
892 #if ( configUSE_TASK_NOTIFICATIONS == 1 )
894 BaseType_t MPU_xTaskGenericNotifyWaitEntry( const xTaskGenericNotifyWaitParams_t * pxParams ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
896 BaseType_t MPU_xTaskGenericNotifyWaitEntry( const xTaskGenericNotifyWaitParams_t * pxParams ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
900 " .syntax unified \n"
901 " .extern MPU_xTaskGenericNotifyWaitImpl \n"
904 " mrs r0, control \n"
908 " bne MPU_xTaskGenericNotifyWait_Unpriv \n"
909 " MPU_xTaskGenericNotifyWait_Priv: \n"
911 " blx MPU_xTaskGenericNotifyWaitImpl \n"
913 " MPU_xTaskGenericNotifyWait_Unpriv: \n"
916 : : "i" ( SYSTEM_CALL_xTaskGenericNotifyWait ) : "memory"
920 #endif /* if ( configUSE_TASK_NOTIFICATIONS == 1 ) */
921 /*-----------------------------------------------------------*/
923 #if ( configUSE_TASK_NOTIFICATIONS == 1 )
925 uint32_t MPU_ulTaskGenericNotifyTake( UBaseType_t uxIndexToWaitOn,
926 BaseType_t xClearCountOnExit,
927 TickType_t xTicksToWait ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
929 uint32_t MPU_ulTaskGenericNotifyTake( UBaseType_t uxIndexToWaitOn,
930 BaseType_t xClearCountOnExit,
931 TickType_t xTicksToWait ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
935 " .syntax unified \n"
936 " .extern MPU_ulTaskGenericNotifyTakeImpl \n"
939 " mrs r0, control \n"
943 " bne MPU_ulTaskGenericNotifyTake_Unpriv \n"
944 " MPU_ulTaskGenericNotifyTake_Priv: \n"
946 " blx MPU_ulTaskGenericNotifyTakeImpl \n"
948 " MPU_ulTaskGenericNotifyTake_Unpriv: \n"
951 : : "i" ( SYSTEM_CALL_ulTaskGenericNotifyTake ) : "memory"
955 #endif /* if ( configUSE_TASK_NOTIFICATIONS == 1 ) */
956 /*-----------------------------------------------------------*/
958 #if ( configUSE_TASK_NOTIFICATIONS == 1 )
960 BaseType_t MPU_xTaskGenericNotifyStateClear( TaskHandle_t xTask,
961 UBaseType_t uxIndexToClear ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
963 BaseType_t MPU_xTaskGenericNotifyStateClear( TaskHandle_t xTask,
964 UBaseType_t uxIndexToClear ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
968 " .syntax unified \n"
969 " .extern MPU_xTaskGenericNotifyStateClearImpl \n"
972 " mrs r0, control \n"
976 " bne MPU_xTaskGenericNotifyStateClear_Unpriv \n"
977 " MPU_xTaskGenericNotifyStateClear_Priv: \n"
979 " blx MPU_xTaskGenericNotifyStateClearImpl \n"
981 " MPU_xTaskGenericNotifyStateClear_Unpriv: \n"
984 : : "i" ( SYSTEM_CALL_xTaskGenericNotifyStateClear ) : "memory"
988 #endif /* if ( configUSE_TASK_NOTIFICATIONS == 1 ) */
989 /*-----------------------------------------------------------*/
991 #if ( configUSE_TASK_NOTIFICATIONS == 1 )
993 uint32_t MPU_ulTaskGenericNotifyValueClear( TaskHandle_t xTask,
994 UBaseType_t uxIndexToClear,
995 uint32_t ulBitsToClear ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
997 uint32_t MPU_ulTaskGenericNotifyValueClear( TaskHandle_t xTask,
998 UBaseType_t uxIndexToClear,
999 uint32_t ulBitsToClear ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1003 " .syntax unified \n"
1004 " .extern MPU_ulTaskGenericNotifyValueClearImpl \n"
1007 " mrs r0, control \n"
1011 " bne MPU_ulTaskGenericNotifyValueClear_Unpriv \n"
1012 " MPU_ulTaskGenericNotifyValueClear_Priv: \n"
1014 " blx MPU_ulTaskGenericNotifyValueClearImpl \n"
1016 " MPU_ulTaskGenericNotifyValueClear_Unpriv: \n"
1019 : : "i" ( SYSTEM_CALL_ulTaskGenericNotifyValueClear ) : "memory"
1023 #endif /* if ( configUSE_TASK_NOTIFICATIONS == 1 ) */
1024 /*-----------------------------------------------------------*/
1026 BaseType_t MPU_xQueueGenericSend( QueueHandle_t xQueue,
1027 const void * const pvItemToQueue,
1028 TickType_t xTicksToWait,
1029 const BaseType_t xCopyPosition ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1031 BaseType_t MPU_xQueueGenericSend( QueueHandle_t xQueue,
1032 const void * const pvItemToQueue,
1033 TickType_t xTicksToWait,
1034 const BaseType_t xCopyPosition ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1038 " .syntax unified \n"
1039 " .extern MPU_xQueueGenericSendImpl \n"
1042 " mrs r0, control \n"
1046 " bne MPU_xQueueGenericSend_Unpriv \n"
1047 " MPU_xQueueGenericSend_Priv: \n"
1049 " blx MPU_xQueueGenericSendImpl \n"
1051 " MPU_xQueueGenericSend_Unpriv: \n"
1054 : : "i" ( SYSTEM_CALL_xQueueGenericSend ) : "memory"
1057 /*-----------------------------------------------------------*/
1059 UBaseType_t MPU_uxQueueMessagesWaiting( const QueueHandle_t xQueue ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1061 UBaseType_t MPU_uxQueueMessagesWaiting( const QueueHandle_t xQueue ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1065 " .syntax unified \n"
1066 " .extern MPU_uxQueueMessagesWaitingImpl \n"
1069 " mrs r0, control \n"
1073 " bne MPU_uxQueueMessagesWaiting_Unpriv \n"
1074 " MPU_uxQueueMessagesWaiting_Priv: \n"
1076 " blx MPU_uxQueueMessagesWaitingImpl \n"
1078 " MPU_uxQueueMessagesWaiting_Unpriv: \n"
1081 : : "i" ( SYSTEM_CALL_uxQueueMessagesWaiting ) : "memory"
1084 /*-----------------------------------------------------------*/
1086 UBaseType_t MPU_uxQueueSpacesAvailable( const QueueHandle_t xQueue ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1088 UBaseType_t MPU_uxQueueSpacesAvailable( const QueueHandle_t xQueue ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1092 " .syntax unified \n"
1093 " .extern MPU_uxQueueSpacesAvailableImpl \n"
1096 " mrs r0, control \n"
1100 " bne MPU_uxQueueSpacesAvailable_Unpriv \n"
1101 " MPU_uxQueueSpacesAvailable_Priv: \n"
1103 " blx MPU_uxQueueSpacesAvailableImpl \n"
1105 " MPU_uxQueueSpacesAvailable_Unpriv: \n"
1108 : : "i" ( SYSTEM_CALL_uxQueueSpacesAvailable ) : "memory"
1111 /*-----------------------------------------------------------*/
1113 BaseType_t MPU_xQueueReceive( QueueHandle_t xQueue,
1114 void * const pvBuffer,
1115 TickType_t xTicksToWait ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1117 BaseType_t MPU_xQueueReceive( QueueHandle_t xQueue,
1118 void * const pvBuffer,
1119 TickType_t xTicksToWait ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1123 " .syntax unified \n"
1124 " .extern MPU_xQueueReceiveImpl \n"
1127 " mrs r0, control \n"
1131 " bne MPU_xQueueReceive_Unpriv \n"
1132 " MPU_xQueueReceive_Priv: \n"
1134 " blx MPU_xQueueReceiveImpl \n"
1136 " MPU_xQueueReceive_Unpriv: \n"
1139 : : "i" ( SYSTEM_CALL_xQueueReceive ) : "memory"
1142 /*-----------------------------------------------------------*/
1144 BaseType_t MPU_xQueuePeek( QueueHandle_t xQueue,
1145 void * const pvBuffer,
1146 TickType_t xTicksToWait ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1148 BaseType_t MPU_xQueuePeek( QueueHandle_t xQueue,
1149 void * const pvBuffer,
1150 TickType_t xTicksToWait ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1154 " .syntax unified \n"
1155 " .extern MPU_xQueuePeekImpl \n"
1158 " mrs r0, control \n"
1162 " bne MPU_xQueuePeek_Unpriv \n"
1163 " MPU_xQueuePeek_Priv: \n"
1165 " blx MPU_xQueuePeekImpl \n"
1167 " MPU_xQueuePeek_Unpriv: \n"
1170 : : "i" ( SYSTEM_CALL_xQueuePeek ) : "memory"
1173 /*-----------------------------------------------------------*/
1175 BaseType_t MPU_xQueueSemaphoreTake( QueueHandle_t xQueue,
1176 TickType_t xTicksToWait ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1178 BaseType_t MPU_xQueueSemaphoreTake( QueueHandle_t xQueue,
1179 TickType_t xTicksToWait ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1183 " .syntax unified \n"
1184 " .extern MPU_xQueueSemaphoreTakeImpl \n"
1187 " mrs r0, control \n"
1191 " bne MPU_xQueueSemaphoreTake_Unpriv \n"
1192 " MPU_xQueueSemaphoreTake_Priv: \n"
1194 " blx MPU_xQueueSemaphoreTakeImpl \n"
1196 " MPU_xQueueSemaphoreTake_Unpriv: \n"
1199 : : "i" ( SYSTEM_CALL_xQueueSemaphoreTake ) : "memory"
1202 /*-----------------------------------------------------------*/
1204 #if ( ( configUSE_MUTEXES == 1 ) && ( INCLUDE_xSemaphoreGetMutexHolder == 1 ) )
1206 TaskHandle_t MPU_xQueueGetMutexHolder( QueueHandle_t xSemaphore ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1208 TaskHandle_t MPU_xQueueGetMutexHolder( QueueHandle_t xSemaphore ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1212 " .syntax unified \n"
1213 " .extern MPU_xQueueGetMutexHolderImpl \n"
1216 " mrs r0, control \n"
1220 " bne MPU_xQueueGetMutexHolder_Unpriv \n"
1221 " MPU_xQueueGetMutexHolder_Priv: \n"
1223 " blx MPU_xQueueGetMutexHolderImpl \n"
1225 " MPU_xQueueGetMutexHolder_Unpriv: \n"
1228 : : "i" ( SYSTEM_CALL_xQueueGetMutexHolder ) : "memory"
1232 #endif /* if ( ( configUSE_MUTEXES == 1 ) && ( INCLUDE_xSemaphoreGetMutexHolder == 1 ) ) */
1233 /*-----------------------------------------------------------*/
1235 #if ( configUSE_RECURSIVE_MUTEXES == 1 )
1237 BaseType_t MPU_xQueueTakeMutexRecursive( QueueHandle_t xMutex,
1238 TickType_t xTicksToWait ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1240 BaseType_t MPU_xQueueTakeMutexRecursive( QueueHandle_t xMutex,
1241 TickType_t xTicksToWait ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1245 " .syntax unified \n"
1246 " .extern MPU_xQueueTakeMutexRecursiveImpl \n"
1249 " mrs r0, control \n"
1253 " bne MPU_xQueueTakeMutexRecursive_Unpriv \n"
1254 " MPU_xQueueTakeMutexRecursive_Priv: \n"
1256 " blx MPU_xQueueTakeMutexRecursiveImpl \n"
1258 " MPU_xQueueTakeMutexRecursive_Unpriv: \n"
1261 : : "i" ( SYSTEM_CALL_xQueueTakeMutexRecursive ) : "memory"
1265 #endif /* if ( configUSE_RECURSIVE_MUTEXES == 1 ) */
1266 /*-----------------------------------------------------------*/
1268 #if ( configUSE_RECURSIVE_MUTEXES == 1 )
1270 BaseType_t MPU_xQueueGiveMutexRecursive( QueueHandle_t pxMutex ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1272 BaseType_t MPU_xQueueGiveMutexRecursive( QueueHandle_t pxMutex ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1276 " .syntax unified \n"
1277 " .extern MPU_xQueueGiveMutexRecursiveImpl \n"
1280 " mrs r0, control \n"
1284 " bne MPU_xQueueGiveMutexRecursive_Unpriv \n"
1285 " MPU_xQueueGiveMutexRecursive_Priv: \n"
1287 " blx MPU_xQueueGiveMutexRecursiveImpl \n"
1289 " MPU_xQueueGiveMutexRecursive_Unpriv: \n"
1292 : : "i" ( SYSTEM_CALL_xQueueGiveMutexRecursive ) : "memory"
1296 #endif /* if ( configUSE_RECURSIVE_MUTEXES == 1 ) */
1297 /*-----------------------------------------------------------*/
1299 #if ( configUSE_QUEUE_SETS == 1 )
1301 QueueSetMemberHandle_t MPU_xQueueSelectFromSet( QueueSetHandle_t xQueueSet,
1302 const TickType_t xTicksToWait ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1304 QueueSetMemberHandle_t MPU_xQueueSelectFromSet( QueueSetHandle_t xQueueSet,
1305 const TickType_t xTicksToWait ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1309 " .syntax unified \n"
1310 " .extern MPU_xQueueSelectFromSetImpl \n"
1313 " mrs r0, control \n"
1317 " bne MPU_xQueueSelectFromSet_Unpriv \n"
1318 " MPU_xQueueSelectFromSet_Priv: \n"
1320 " blx MPU_xQueueSelectFromSetImpl \n"
1322 " MPU_xQueueSelectFromSet_Unpriv: \n"
1325 : : "i" ( SYSTEM_CALL_xQueueSelectFromSet ) : "memory"
1329 #endif /* if ( configUSE_QUEUE_SETS == 1 ) */
1330 /*-----------------------------------------------------------*/
1332 #if ( configUSE_QUEUE_SETS == 1 )
1334 BaseType_t MPU_xQueueAddToSet( QueueSetMemberHandle_t xQueueOrSemaphore,
1335 QueueSetHandle_t xQueueSet ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1337 BaseType_t MPU_xQueueAddToSet( QueueSetMemberHandle_t xQueueOrSemaphore,
1338 QueueSetHandle_t xQueueSet ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1342 " .syntax unified \n"
1343 " .extern MPU_xQueueAddToSetImpl \n"
1346 " mrs r0, control \n"
1350 " bne MPU_xQueueAddToSet_Unpriv \n"
1351 " MPU_xQueueAddToSet_Priv: \n"
1353 " blx MPU_xQueueAddToSetImpl \n"
1355 " MPU_xQueueAddToSet_Unpriv: \n"
1358 : : "i" ( SYSTEM_CALL_xQueueAddToSet ) : "memory"
1362 #endif /* if ( configUSE_QUEUE_SETS == 1 ) */
1363 /*-----------------------------------------------------------*/
1365 #if ( configQUEUE_REGISTRY_SIZE > 0 )
1367 void MPU_vQueueAddToRegistry( QueueHandle_t xQueue,
1368 const char * pcName ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1370 void MPU_vQueueAddToRegistry( QueueHandle_t xQueue,
1371 const char * pcName ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1375 " .syntax unified \n"
1376 " .extern MPU_vQueueAddToRegistryImpl \n"
1379 " mrs r0, control \n"
1383 " bne MPU_vQueueAddToRegistry_Unpriv \n"
1384 " MPU_vQueueAddToRegistry_Priv: \n"
1386 " blx MPU_vQueueAddToRegistryImpl \n"
1388 " MPU_vQueueAddToRegistry_Unpriv: \n"
1391 : : "i" ( SYSTEM_CALL_vQueueAddToRegistry ) : "memory"
1395 #endif /* if ( configQUEUE_REGISTRY_SIZE > 0 ) */
1396 /*-----------------------------------------------------------*/
1398 #if ( configQUEUE_REGISTRY_SIZE > 0 )
1400 void MPU_vQueueUnregisterQueue( QueueHandle_t xQueue ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1402 void MPU_vQueueUnregisterQueue( QueueHandle_t xQueue ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1406 " .syntax unified \n"
1407 " .extern MPU_vQueueUnregisterQueueImpl \n"
1410 " mrs r0, control \n"
1414 " bne MPU_vQueueUnregisterQueue_Unpriv \n"
1415 " MPU_vQueueUnregisterQueue_Priv: \n"
1417 " blx MPU_vQueueUnregisterQueueImpl \n"
1419 " MPU_vQueueUnregisterQueue_Unpriv: \n"
1422 : : "i" ( SYSTEM_CALL_vQueueUnregisterQueue ) : "memory"
1426 #endif /* if ( configQUEUE_REGISTRY_SIZE > 0 ) */
1427 /*-----------------------------------------------------------*/
1429 #if ( configQUEUE_REGISTRY_SIZE > 0 )
1431 const char * MPU_pcQueueGetName( QueueHandle_t xQueue ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1433 const char * MPU_pcQueueGetName( QueueHandle_t xQueue ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1437 " .syntax unified \n"
1438 " .extern MPU_pcQueueGetNameImpl \n"
1441 " mrs r0, control \n"
1445 " bne MPU_pcQueueGetName_Unpriv \n"
1446 " MPU_pcQueueGetName_Priv: \n"
1448 " blx MPU_pcQueueGetNameImpl \n"
1450 " MPU_pcQueueGetName_Unpriv: \n"
1453 : : "i" ( SYSTEM_CALL_pcQueueGetName ) : "memory"
1457 #endif /* if ( configQUEUE_REGISTRY_SIZE > 0 ) */
1458 /*-----------------------------------------------------------*/
1460 #if ( configUSE_TIMERS == 1 )
1462 void * MPU_pvTimerGetTimerID( const TimerHandle_t xTimer ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1464 void * MPU_pvTimerGetTimerID( const TimerHandle_t xTimer ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1468 " .syntax unified \n"
1469 " .extern MPU_pvTimerGetTimerIDImpl \n"
1472 " mrs r0, control \n"
1476 " bne MPU_pvTimerGetTimerID_Unpriv \n"
1477 " MPU_pvTimerGetTimerID_Priv: \n"
1479 " blx MPU_pvTimerGetTimerIDImpl \n"
1481 " MPU_pvTimerGetTimerID_Unpriv: \n"
1484 : : "i" ( SYSTEM_CALL_pvTimerGetTimerID ) : "memory"
1488 #endif /* if ( configUSE_TIMERS == 1 ) */
1489 /*-----------------------------------------------------------*/
1491 #if ( configUSE_TIMERS == 1 )
1493 void MPU_vTimerSetTimerID( TimerHandle_t xTimer,
1494 void * pvNewID ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1496 void MPU_vTimerSetTimerID( TimerHandle_t xTimer,
1497 void * pvNewID ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1501 " .syntax unified \n"
1502 " .extern MPU_vTimerSetTimerIDImpl \n"
1505 " mrs r0, control \n"
1509 " bne MPU_vTimerSetTimerID_Unpriv \n"
1510 " MPU_vTimerSetTimerID_Priv: \n"
1512 " blx MPU_vTimerSetTimerIDImpl \n"
1514 " MPU_vTimerSetTimerID_Unpriv: \n"
1517 : : "i" ( SYSTEM_CALL_vTimerSetTimerID ) : "memory"
1521 #endif /* if ( configUSE_TIMERS == 1 ) */
1522 /*-----------------------------------------------------------*/
1524 #if ( configUSE_TIMERS == 1 )
1526 BaseType_t MPU_xTimerIsTimerActive( TimerHandle_t xTimer ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1528 BaseType_t MPU_xTimerIsTimerActive( TimerHandle_t xTimer ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1532 " .syntax unified \n"
1533 " .extern MPU_xTimerIsTimerActiveImpl \n"
1536 " mrs r0, control \n"
1540 " bne MPU_xTimerIsTimerActive_Unpriv \n"
1541 " MPU_xTimerIsTimerActive_Priv: \n"
1543 " blx MPU_xTimerIsTimerActiveImpl \n"
1545 " MPU_xTimerIsTimerActive_Unpriv: \n"
1548 : : "i" ( SYSTEM_CALL_xTimerIsTimerActive ) : "memory"
1552 #endif /* if ( configUSE_TIMERS == 1 ) */
1553 /*-----------------------------------------------------------*/
1555 #if ( configUSE_TIMERS == 1 )
1557 TaskHandle_t MPU_xTimerGetTimerDaemonTaskHandle( void ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1559 TaskHandle_t MPU_xTimerGetTimerDaemonTaskHandle( void ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1563 " .syntax unified \n"
1564 " .extern MPU_xTimerGetTimerDaemonTaskHandleImpl \n"
1567 " mrs r0, control \n"
1571 " bne MPU_xTimerGetTimerDaemonTaskHandle_Unpriv \n"
1572 " MPU_xTimerGetTimerDaemonTaskHandle_Priv: \n"
1574 " blx MPU_xTimerGetTimerDaemonTaskHandleImpl \n"
1576 " MPU_xTimerGetTimerDaemonTaskHandle_Unpriv: \n"
1579 : : "i" ( SYSTEM_CALL_xTimerGetTimerDaemonTaskHandle ) : "memory"
1583 #endif /* if ( configUSE_TIMERS == 1 ) */
1584 /*-----------------------------------------------------------*/
1586 #if ( configUSE_TIMERS == 1 )
1588 BaseType_t MPU_xTimerGenericCommandFromTaskEntry( const xTimerGenericCommandFromTaskParams_t * pxParams ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1590 BaseType_t MPU_xTimerGenericCommandFromTaskEntry( const xTimerGenericCommandFromTaskParams_t * pxParams ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1594 " .syntax unified \n"
1595 " .extern MPU_xTimerGenericCommandFromTaskImpl \n"
1598 " mrs r0, control \n"
1602 " bne MPU_xTimerGenericCommandFromTask_Unpriv \n"
1603 " MPU_xTimerGenericCommandFromTask_Priv: \n"
1605 " blx MPU_xTimerGenericCommandFromTaskImpl \n"
1607 " MPU_xTimerGenericCommandFromTask_Unpriv: \n"
1610 : : "i" ( SYSTEM_CALL_xTimerGenericCommandFromTask ) : "memory"
1614 #endif /* if ( configUSE_TIMERS == 1 ) */
1615 /*-----------------------------------------------------------*/
1617 #if ( configUSE_TIMERS == 1 )
1619 const char * MPU_pcTimerGetName( TimerHandle_t xTimer ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1621 const char * MPU_pcTimerGetName( TimerHandle_t xTimer ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1625 " .syntax unified \n"
1626 " .extern MPU_pcTimerGetNameImpl \n"
1629 " mrs r0, control \n"
1633 " bne MPU_pcTimerGetName_Unpriv \n"
1634 " MPU_pcTimerGetName_Priv: \n"
1636 " blx MPU_pcTimerGetNameImpl \n"
1638 " MPU_pcTimerGetName_Unpriv: \n"
1641 : : "i" ( SYSTEM_CALL_pcTimerGetName ) : "memory"
1645 #endif /* if ( configUSE_TIMERS == 1 ) */
1646 /*-----------------------------------------------------------*/
1648 #if ( configUSE_TIMERS == 1 )
1650 void MPU_vTimerSetReloadMode( TimerHandle_t xTimer,
1651 const BaseType_t xAutoReload ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1653 void MPU_vTimerSetReloadMode( TimerHandle_t xTimer,
1654 const BaseType_t xAutoReload ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1658 " .syntax unified \n"
1659 " .extern MPU_vTimerSetReloadModeImpl \n"
1662 " mrs r0, control \n"
1666 " bne MPU_vTimerSetReloadMode_Unpriv \n"
1667 " MPU_vTimerSetReloadMode_Priv: \n"
1669 " blx MPU_vTimerSetReloadModeImpl \n"
1671 " MPU_vTimerSetReloadMode_Unpriv: \n"
1674 : : "i" ( SYSTEM_CALL_vTimerSetReloadMode ) : "memory"
1678 #endif /* if ( configUSE_TIMERS == 1 ) */
1679 /*-----------------------------------------------------------*/
1681 #if ( configUSE_TIMERS == 1 )
1683 BaseType_t MPU_xTimerGetReloadMode( TimerHandle_t xTimer ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1685 BaseType_t MPU_xTimerGetReloadMode( TimerHandle_t xTimer ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1689 " .syntax unified \n"
1690 " .extern MPU_xTimerGetReloadModeImpl \n"
1693 " mrs r0, control \n"
1697 " bne MPU_xTimerGetReloadMode_Unpriv \n"
1698 " MPU_xTimerGetReloadMode_Priv: \n"
1700 " blx MPU_xTimerGetReloadModeImpl \n"
1702 " MPU_xTimerGetReloadMode_Unpriv: \n"
1705 : : "i" ( SYSTEM_CALL_xTimerGetReloadMode ) : "memory"
1709 #endif /* if ( configUSE_TIMERS == 1 ) */
1710 /*-----------------------------------------------------------*/
1712 #if ( configUSE_TIMERS == 1 )
1714 UBaseType_t MPU_uxTimerGetReloadMode( TimerHandle_t xTimer ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1716 UBaseType_t MPU_uxTimerGetReloadMode( TimerHandle_t xTimer ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1720 " .syntax unified \n"
1721 " .extern MPU_uxTimerGetReloadModeImpl \n"
1724 " mrs r0, control \n"
1728 " bne MPU_uxTimerGetReloadMode_Unpriv \n"
1729 " MPU_uxTimerGetReloadMode_Priv: \n"
1731 " blx MPU_uxTimerGetReloadModeImpl \n"
1733 " MPU_uxTimerGetReloadMode_Unpriv: \n"
1736 : : "i" ( SYSTEM_CALL_uxTimerGetReloadMode ) : "memory"
1740 #endif /* if ( configUSE_TIMERS == 1 ) */
1741 /*-----------------------------------------------------------*/
1743 #if ( configUSE_TIMERS == 1 )
1745 TickType_t MPU_xTimerGetPeriod( TimerHandle_t xTimer ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1747 TickType_t MPU_xTimerGetPeriod( TimerHandle_t xTimer ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1751 " .syntax unified \n"
1752 " .extern MPU_xTimerGetPeriodImpl \n"
1755 " mrs r0, control \n"
1759 " bne MPU_xTimerGetPeriod_Unpriv \n"
1760 " MPU_xTimerGetPeriod_Priv: \n"
1762 " blx MPU_xTimerGetPeriodImpl \n"
1764 " MPU_xTimerGetPeriod_Unpriv: \n"
1767 : : "i" ( SYSTEM_CALL_xTimerGetPeriod ) : "memory"
1771 #endif /* if ( configUSE_TIMERS == 1 ) */
1772 /*-----------------------------------------------------------*/
1774 #if ( configUSE_TIMERS == 1 )
1776 TickType_t MPU_xTimerGetExpiryTime( TimerHandle_t xTimer ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1778 TickType_t MPU_xTimerGetExpiryTime( TimerHandle_t xTimer ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1782 " .syntax unified \n"
1783 " .extern MPU_xTimerGetExpiryTimeImpl \n"
1786 " mrs r0, control \n"
1790 " bne MPU_xTimerGetExpiryTime_Unpriv \n"
1791 " MPU_xTimerGetExpiryTime_Priv: \n"
1793 " blx MPU_xTimerGetExpiryTimeImpl \n"
1795 " MPU_xTimerGetExpiryTime_Unpriv: \n"
1798 : : "i" ( SYSTEM_CALL_xTimerGetExpiryTime ) : "memory"
1802 #endif /* if ( configUSE_TIMERS == 1 ) */
1803 /*-----------------------------------------------------------*/
1805 EventBits_t MPU_xEventGroupWaitBitsEntry( const xEventGroupWaitBitsParams_t * pxParams ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1807 EventBits_t MPU_xEventGroupWaitBitsEntry( const xEventGroupWaitBitsParams_t * pxParams ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1811 " .syntax unified \n"
1812 " .extern MPU_xEventGroupWaitBitsImpl \n"
1815 " mrs r0, control \n"
1819 " bne MPU_xEventGroupWaitBits_Unpriv \n"
1820 " MPU_xEventGroupWaitBits_Priv: \n"
1822 " blx MPU_xEventGroupWaitBitsImpl \n"
1824 " MPU_xEventGroupWaitBits_Unpriv: \n"
1827 : : "i" ( SYSTEM_CALL_xEventGroupWaitBits ) : "memory"
1830 /*-----------------------------------------------------------*/
1832 EventBits_t MPU_xEventGroupClearBits( EventGroupHandle_t xEventGroup,
1833 const EventBits_t uxBitsToClear ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1835 EventBits_t MPU_xEventGroupClearBits( EventGroupHandle_t xEventGroup,
1836 const EventBits_t uxBitsToClear ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1840 " .syntax unified \n"
1841 " .extern MPU_xEventGroupClearBitsImpl \n"
1844 " mrs r0, control \n"
1848 " bne MPU_xEventGroupClearBits_Unpriv \n"
1849 " MPU_xEventGroupClearBits_Priv: \n"
1851 " blx MPU_xEventGroupClearBitsImpl \n"
1853 " MPU_xEventGroupClearBits_Unpriv: \n"
1856 : : "i" ( SYSTEM_CALL_xEventGroupClearBits ) : "memory"
1859 /*-----------------------------------------------------------*/
1861 EventBits_t MPU_xEventGroupSetBits( EventGroupHandle_t xEventGroup,
1862 const EventBits_t uxBitsToSet ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1864 EventBits_t MPU_xEventGroupSetBits( EventGroupHandle_t xEventGroup,
1865 const EventBits_t uxBitsToSet ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1869 " .syntax unified \n"
1870 " .extern MPU_xEventGroupSetBitsImpl \n"
1873 " mrs r0, control \n"
1877 " bne MPU_xEventGroupSetBits_Unpriv \n"
1878 " MPU_xEventGroupSetBits_Priv: \n"
1880 " blx MPU_xEventGroupSetBitsImpl \n"
1882 " MPU_xEventGroupSetBits_Unpriv: \n"
1885 : : "i" ( SYSTEM_CALL_xEventGroupSetBits ) : "memory"
1888 /*-----------------------------------------------------------*/
1890 EventBits_t MPU_xEventGroupSync( EventGroupHandle_t xEventGroup,
1891 const EventBits_t uxBitsToSet,
1892 const EventBits_t uxBitsToWaitFor,
1893 TickType_t xTicksToWait ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1895 EventBits_t MPU_xEventGroupSync( EventGroupHandle_t xEventGroup,
1896 const EventBits_t uxBitsToSet,
1897 const EventBits_t uxBitsToWaitFor,
1898 TickType_t xTicksToWait ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1902 " .syntax unified \n"
1903 " .extern MPU_xEventGroupSyncImpl \n"
1906 " mrs r0, control \n"
1910 " bne MPU_xEventGroupSync_Unpriv \n"
1911 " MPU_xEventGroupSync_Priv: \n"
1913 " blx MPU_xEventGroupSyncImpl \n"
1915 " MPU_xEventGroupSync_Unpriv: \n"
1918 : : "i" ( SYSTEM_CALL_xEventGroupSync ) : "memory"
1921 /*-----------------------------------------------------------*/
1923 #if ( configUSE_TRACE_FACILITY == 1 )
1925 UBaseType_t MPU_uxEventGroupGetNumber( void * xEventGroup ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1927 UBaseType_t MPU_uxEventGroupGetNumber( void * xEventGroup ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1931 " .syntax unified \n"
1932 " .extern MPU_uxEventGroupGetNumberImpl \n"
1935 " mrs r0, control \n"
1939 " bne MPU_uxEventGroupGetNumber_Unpriv \n"
1940 " MPU_uxEventGroupGetNumber_Priv: \n"
1942 " blx MPU_uxEventGroupGetNumberImpl \n"
1944 " MPU_uxEventGroupGetNumber_Unpriv: \n"
1947 : : "i" ( SYSTEM_CALL_uxEventGroupGetNumber ) : "memory"
1951 #endif /*( configUSE_TRACE_FACILITY == 1 )*/
1952 /*-----------------------------------------------------------*/
1954 #if ( configUSE_TRACE_FACILITY == 1 )
1956 void MPU_vEventGroupSetNumber( void * xEventGroup,
1957 UBaseType_t uxEventGroupNumber ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1959 void MPU_vEventGroupSetNumber( void * xEventGroup,
1960 UBaseType_t uxEventGroupNumber ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1964 " .syntax unified \n"
1965 " .extern MPU_vEventGroupSetNumberImpl \n"
1968 " mrs r0, control \n"
1972 " bne MPU_vEventGroupSetNumber_Unpriv \n"
1973 " MPU_vEventGroupSetNumber_Priv: \n"
1975 " blx MPU_vEventGroupSetNumberImpl \n"
1977 " MPU_vEventGroupSetNumber_Unpriv: \n"
1980 : : "i" ( SYSTEM_CALL_vEventGroupSetNumber ) : "memory"
1984 #endif /*( configUSE_TRACE_FACILITY == 1 )*/
1985 /*-----------------------------------------------------------*/
1987 size_t MPU_xStreamBufferSend( StreamBufferHandle_t xStreamBuffer,
1988 const void * pvTxData,
1989 size_t xDataLengthBytes,
1990 TickType_t xTicksToWait ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
1992 size_t MPU_xStreamBufferSend( StreamBufferHandle_t xStreamBuffer,
1993 const void * pvTxData,
1994 size_t xDataLengthBytes,
1995 TickType_t xTicksToWait ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
1999 " .syntax unified \n"
2000 " .extern MPU_xStreamBufferSendImpl \n"
2003 " mrs r0, control \n"
2007 " bne MPU_xStreamBufferSend_Unpriv \n"
2008 " MPU_xStreamBufferSend_Priv: \n"
2010 " blx MPU_xStreamBufferSendImpl \n"
2012 " MPU_xStreamBufferSend_Unpriv: \n"
2015 : : "i" ( SYSTEM_CALL_xStreamBufferSend ) : "memory"
2018 /*-----------------------------------------------------------*/
2020 size_t MPU_xStreamBufferReceive( StreamBufferHandle_t xStreamBuffer,
2022 size_t xBufferLengthBytes,
2023 TickType_t xTicksToWait ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
2025 size_t MPU_xStreamBufferReceive( StreamBufferHandle_t xStreamBuffer,
2027 size_t xBufferLengthBytes,
2028 TickType_t xTicksToWait ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
2032 " .syntax unified \n"
2033 " .extern MPU_xStreamBufferReceiveImpl \n"
2036 " mrs r0, control \n"
2040 " bne MPU_xStreamBufferReceive_Unpriv \n"
2041 " MPU_xStreamBufferReceive_Priv: \n"
2043 " blx MPU_xStreamBufferReceiveImpl \n"
2045 " MPU_xStreamBufferReceive_Unpriv: \n"
2048 : : "i" ( SYSTEM_CALL_xStreamBufferReceive ) : "memory"
2051 /*-----------------------------------------------------------*/
2053 BaseType_t MPU_xStreamBufferIsFull( StreamBufferHandle_t xStreamBuffer ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
2055 BaseType_t MPU_xStreamBufferIsFull( StreamBufferHandle_t xStreamBuffer ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
2059 " .syntax unified \n"
2060 " .extern MPU_xStreamBufferIsFullImpl \n"
2063 " mrs r0, control \n"
2067 " bne MPU_xStreamBufferIsFull_Unpriv \n"
2068 " MPU_xStreamBufferIsFull_Priv: \n"
2070 " blx MPU_xStreamBufferIsFullImpl \n"
2072 " MPU_xStreamBufferIsFull_Unpriv: \n"
2075 : : "i" ( SYSTEM_CALL_xStreamBufferIsFull ) : "memory"
2078 /*-----------------------------------------------------------*/
2080 BaseType_t MPU_xStreamBufferIsEmpty( StreamBufferHandle_t xStreamBuffer ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
2082 BaseType_t MPU_xStreamBufferIsEmpty( StreamBufferHandle_t xStreamBuffer ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
2086 " .syntax unified \n"
2087 " .extern MPU_xStreamBufferIsEmptyImpl \n"
2090 " mrs r0, control \n"
2094 " bne MPU_xStreamBufferIsEmpty_Unpriv \n"
2095 " MPU_xStreamBufferIsEmpty_Priv: \n"
2097 " blx MPU_xStreamBufferIsEmptyImpl \n"
2099 " MPU_xStreamBufferIsEmpty_Unpriv: \n"
2102 : : "i" ( SYSTEM_CALL_xStreamBufferIsEmpty ) : "memory"
2105 /*-----------------------------------------------------------*/
2107 size_t MPU_xStreamBufferSpacesAvailable( StreamBufferHandle_t xStreamBuffer ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
2109 size_t MPU_xStreamBufferSpacesAvailable( StreamBufferHandle_t xStreamBuffer ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
2113 " .syntax unified \n"
2114 " .extern MPU_xStreamBufferSpacesAvailableImpl \n"
2117 " mrs r0, control \n"
2121 " bne MPU_xStreamBufferSpacesAvailable_Unpriv \n"
2122 " MPU_xStreamBufferSpacesAvailable_Priv: \n"
2124 " blx MPU_xStreamBufferSpacesAvailableImpl \n"
2126 " MPU_xStreamBufferSpacesAvailable_Unpriv: \n"
2129 : : "i" ( SYSTEM_CALL_xStreamBufferSpacesAvailable ) : "memory"
2132 /*-----------------------------------------------------------*/
2134 size_t MPU_xStreamBufferBytesAvailable( StreamBufferHandle_t xStreamBuffer ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
2136 size_t MPU_xStreamBufferBytesAvailable( StreamBufferHandle_t xStreamBuffer ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
2140 " .syntax unified \n"
2141 " .extern MPU_xStreamBufferBytesAvailableImpl \n"
2144 " mrs r0, control \n"
2148 " bne MPU_xStreamBufferBytesAvailable_Unpriv \n"
2149 " MPU_xStreamBufferBytesAvailable_Priv: \n"
2151 " blx MPU_xStreamBufferBytesAvailableImpl \n"
2153 " MPU_xStreamBufferBytesAvailable_Unpriv: \n"
2156 : : "i" ( SYSTEM_CALL_xStreamBufferBytesAvailable ) : "memory"
2159 /*-----------------------------------------------------------*/
2161 BaseType_t MPU_xStreamBufferSetTriggerLevel( StreamBufferHandle_t xStreamBuffer,
2162 size_t xTriggerLevel ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
2164 BaseType_t MPU_xStreamBufferSetTriggerLevel( StreamBufferHandle_t xStreamBuffer,
2165 size_t xTriggerLevel ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
2169 " .syntax unified \n"
2170 " .extern MPU_xStreamBufferSetTriggerLevelImpl \n"
2173 " mrs r0, control \n"
2177 " bne MPU_xStreamBufferSetTriggerLevel_Unpriv \n"
2178 " MPU_xStreamBufferSetTriggerLevel_Priv: \n"
2180 " blx MPU_xStreamBufferSetTriggerLevelImpl \n"
2182 " MPU_xStreamBufferSetTriggerLevel_Unpriv: \n"
2185 : : "i" ( SYSTEM_CALL_xStreamBufferSetTriggerLevel ) : "memory"
2188 /*-----------------------------------------------------------*/
2190 size_t MPU_xStreamBufferNextMessageLengthBytes( StreamBufferHandle_t xStreamBuffer ) __attribute__( ( naked ) ) FREERTOS_SYSTEM_CALL;
2192 size_t MPU_xStreamBufferNextMessageLengthBytes( StreamBufferHandle_t xStreamBuffer ) /* __attribute__ (( naked )) FREERTOS_SYSTEM_CALL */
2196 " .syntax unified \n"
2197 " .extern MPU_xStreamBufferNextMessageLengthBytesImpl \n"
2200 " mrs r0, control \n"
2204 " bne MPU_xStreamBufferNextMessageLengthBytes_Unpriv \n"
2205 " MPU_xStreamBufferNextMessageLengthBytes_Priv: \n"
2207 " blx MPU_xStreamBufferNextMessageLengthBytesImpl \n"
2209 " MPU_xStreamBufferNextMessageLengthBytes_Unpriv: \n"
2212 : : "i" ( SYSTEM_CALL_xStreamBufferNextMessageLengthBytes ) : "memory"
2215 /*-----------------------------------------------------------*/
2217 #endif /* ( configENABLE_MPU == 1 ) && ( configUSE_MPU_WRAPPERS_V1 == 0 ) */