Marco Zecchini
/
Example_RTOS
Rtos API example
Embed:
(wiki syntax)
Show/hide line numbers
cmsis_nvic_virtual.h
00001 /* 00002 * Copyright (c) 2016, ARM Limited, All Rights Reserved 00003 * SPDX-License-Identifier: Apache-2.0 00004 * 00005 * Licensed under the Apache License, Version 2.0 (the "License"); you may 00006 * not use this file except in compliance with the License. 00007 * You may obtain a copy of the License at 00008 * 00009 * http://www.apache.org/licenses/LICENSE-2.0 00010 * 00011 * Unless required by applicable law or agreed to in writing, software 00012 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 00013 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00014 * See the License for the specific language governing permissions and 00015 * limitations under the License. 00016 */ 00017 #ifndef __UVISOR_API_NVIC_VIRTUAL_H__ 00018 #define __UVISOR_API_NVIC_VIRTUAL_H__ 00019 00020 #include "api/inc/interrupts.h" 00021 #include "api/inc/virq_exports.h" 00022 00023 /* The NVIC APIs are only wrapped on ARMv7-M. */ 00024 #if !defined(ARCH_CORE_ARMv8M) && !defined(TARGET_M33) 00025 00026 #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping 00027 #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping 00028 #define NVIC_EnableIRQ vIRQ_EnableIRQ 00029 #define NVIC_DisableIRQ vIRQ_DisableIRQ 00030 #define NVIC_GetPendingIRQ vIRQ_GetPendingIRQ 00031 #define NVIC_SetPendingIRQ vIRQ_SetPendingIRQ 00032 #define NVIC_ClearPendingIRQ vIRQ_ClearPendingIRQ 00033 #define NVIC_GetActive __NVIC_GetActive 00034 #define NVIC_SetPriority vIRQ_SetPriority 00035 #define NVIC_GetPriority vIRQ_GetPriority 00036 #define NVIC_SystemReset() vIRQ_SystemReset(RESET_REASON_NO_REASON) 00037 00038 #else 00039 00040 #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping 00041 #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping 00042 #define NVIC_EnableIRQ __NVIC_EnableIRQ 00043 #define NVIC_DisableIRQ __NVIC_DisableIRQ 00044 #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ 00045 #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ 00046 #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ 00047 #define NVIC_GetActive __NVIC_GetActive 00048 #define NVIC_SetPriority __NVIC_SetPriority 00049 #define NVIC_GetPriority __NVIC_GetPriority 00050 #define NVIC_SystemReset() __NVIC_SystemReset() 00051 00052 #endif 00053 00054 #endif /* __UVISOR_API_NVIC_VIRTUAL_H__ */
Generated on Sun Jul 17 2022 08:25:21 by 1.7.2