1 /* 2 * Copyright 2020-2023 NXP 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 #ifndef EMIOS_ICU_IP_TRUSTEDFUNCTIONS_H 8 #define EMIOS_ICU_IP_TRUSTEDFUNCTIONS_H 9 10 /** 11 * @file EMIOS_ICU_IP_TRUSTEDFUNCTIONS_H.h 12 * 13 * @addtogroup emios_icu_ip EMIOS IPL 14 * @{ 15 */ 16 17 #ifdef __cplusplus 18 extern "C" 19 { 20 #endif 21 22 /*================================================================================================== 23 INCLUDE FILES 24 1) system and project includes 25 2) needed interfaces from external units 26 3) internal and external interfaces from this unit 27 ==================================================================================================*/ 28 #include "Emios_Icu_Ip_Defines.h" 29 30 /*================================================================================================== 31 SOURCE FILE VERSION INFORMATION 32 ==================================================================================================*/ 33 #define EMIOS_ICU_IP_TRUSTEDFUNCTIONS_VENDOR_ID 43 34 #define EMIOS_ICU_IP_TRUSTEDFUNCTIONS_AR_RELEASE_MAJOR_VERSION 4 35 #define EMIOS_ICU_IP_TRUSTEDFUNCTIONS_AR_RELEASE_MINOR_VERSION 7 36 #define EMIOS_ICU_IP_TRUSTEDFUNCTIONS_AR_RELEASE_REVISION_VERSION 0 37 #define EMIOS_ICU_IP_TRUSTEDFUNCTIONS_SW_MAJOR_VERSION 3 38 #define EMIOS_ICU_IP_TRUSTEDFUNCTIONS_SW_MINOR_VERSION 0 39 #define EMIOS_ICU_IP_TRUSTEDFUNCTIONS_SW_PATCH_VERSION 0 40 41 /*================================================================================================== 42 FILE VERSION CHECKS 43 ==================================================================================================*/ 44 /* Check if this header file and Define header file are of the same vendor */ 45 #if (EMIOS_ICU_IP_TRUSTEDFUNCTIONS_VENDOR_ID != EMIOS_ICU_IP_DEFINES_VENDOR_ID) 46 #error "Emios_Icu_Ip_TrustedFunctions.h and Emios_Icu_Ip_Defines.h have different vendor IDs" 47 #endif 48 /* Check if this header file and Define header file are of the same AutoSar version */ 49 #if ((EMIOS_ICU_IP_TRUSTEDFUNCTIONS_AR_RELEASE_MAJOR_VERSION != EMIOS_ICU_IP_DEFINES_AR_RELEASE_MAJOR_VERSION) || \ 50 (EMIOS_ICU_IP_TRUSTEDFUNCTIONS_AR_RELEASE_MINOR_VERSION != EMIOS_ICU_IP_DEFINES_AR_RELEASE_MINOR_VERSION) || \ 51 (EMIOS_ICU_IP_TRUSTEDFUNCTIONS_AR_RELEASE_REVISION_VERSION != EMIOS_ICU_IP_DEFINES_AR_RELEASE_REVISION_VERSION)) 52 #error "AutoSar Version Numbers of Emios_Icu_Ip_TrustedFunctions.h and Emios_Icu_Ip_Defines.h are different" 53 #endif 54 /* Check if source file and Define header file are of the same Software version */ 55 #if ((EMIOS_ICU_IP_TRUSTEDFUNCTIONS_SW_MAJOR_VERSION != EMIOS_ICU_IP_DEFINES_SW_MAJOR_VERSION) || \ 56 (EMIOS_ICU_IP_TRUSTEDFUNCTIONS_SW_MINOR_VERSION != EMIOS_ICU_IP_DEFINES_SW_MINOR_VERSION) || \ 57 (EMIOS_ICU_IP_TRUSTEDFUNCTIONS_SW_PATCH_VERSION != EMIOS_ICU_IP_DEFINES_SW_PATCH_VERSION)) 58 #error "Software Version Numbers of Emios_Icu_Ip_TrustedFunctions.h and Emios_Icu_Ip_Defines.h are different" 59 #endif 60 /*================================================================================================== 61 CONSTANTS 62 ==================================================================================================*/ 63 64 /*================================================================================================== 65 DEFINES AND MACROS 66 ==================================================================================================*/ 67 68 /*================================================================================================== 69 * GLOBAL VARIABLES 70 ==================================================================================================*/ 71 72 /*================================================================================================== 73 ENUMS 74 ==================================================================================================*/ 75 76 /*================================================================================================== 77 STRUCTURES AND OTHER TYPEDEFS 78 ==================================================================================================*/ 79 80 81 /*================================================================================================== 82 GLOBAL VARIABLE DECLARATIONS 83 ==================================================================================================*/ 84 85 /*================================================================================================== 86 FUNCTION PROTOTYPES 87 ==================================================================================================*/ 88 #if (STD_ON == EMIOS_ICU_IP_USED) 89 90 #define ICU_START_SEC_CODE 91 #include "Icu_MemMap.h 92 93 /** 94 * @brief Emios_Icu_Ip_SetUserAccessAllowed 95 * @details This function is called externally by OS Application 96 * @param[in] EmiosBaseAddr - The base address of Emios. 97 */ 98 #if (STD_ON == EMIOS_ICU_IP_ENABLE_USER_MODE_SUPPORT) 99 extern void Emios_Icu_Ip_SetUserAccessAllowed(uint32 EmiosBaseAddr); 100 #endif 101 102 103 #define ICU_STOP_SEC_CODE 104 #include "Icu_MemMap.h" 105 106 #endif /* EMIOS_ICU_IP_USED */ 107 108 #if defined(__cplusplus) 109 } 110 #endif 111 112 /** @} */ 113 114 #endif /* EMIOS_IP_TRUSTEDFUNCTIONS_H */ 115