1 /* 2 * Copyright 2020-2023 NXP 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 /* Prevention from multiple including the same header */ 8 #ifndef TRGMUX_IP_DEVASSERT_H_ 9 #define TRGMUX_IP_DEVASSERT_H_ 10 11 /** 12 * @file Trgmux_Ip_Devassert.h 13 * 14 * @version 3.0.0 15 * 16 * @brief AUTOSAR Mcl - Trgmux Ip driver header file. 17 * @details 18 * 19 * @addtogroup TRGMUX_IP_DRIVER TRGMUX IP Driver 20 * @{ 21 */ 22 23 #ifdef __cplusplus 24 extern "C"{ 25 #endif 26 27 /*================================================================================================== 28 * INCLUDE FILES 29 * 1) system and project includes 30 * 2) needed interfaces from external units 31 * 3) internal and external interfaces from this unit 32 ==================================================================================================*/ 33 #include "Trgmux_Ip_Types.h" 34 35 /*================================================================================================== 36 * SOURCE FILE VERSION INFORMATION 37 ==================================================================================================*/ 38 #define TRGMUX_IP_DEVASSERT_VENDOR_ID 43 39 #define TRGMUX_IP_DEVASSERT_MODULE_ID 255 40 #define TRGMUX_IP_DEVASSERT_AR_RELEASE_MAJOR_VERSION 4 41 #define TRGMUX_IP_DEVASSERT_AR_RELEASE_MINOR_VERSION 7 42 #define TRGMUX_IP_DEVASSERT_AR_RELEASE_REVISION_VERSION 0 43 #define TRGMUX_IP_DEVASSERT_SW_MAJOR_VERSION 3 44 #define TRGMUX_IP_DEVASSERT_SW_MINOR_VERSION 0 45 #define TRGMUX_IP_DEVASSERT_SW_PATCH_VERSION 0 46 47 /*================================================================================================== 48 FILE VERSION CHECKS 49 ==================================================================================================*/ 50 /* Check if header file and Trgmux_Ip_Types.h file are of the same vendor */ 51 #if (TRGMUX_IP_DEVASSERT_VENDOR_ID != TRGMUX_IP_TYPES_VENDOR_ID) 52 #error "Trgmux_Ip_Devassert.h and Trgmux_Ip_Types.h have different vendor ids" 53 #endif 54 55 /* Check if header file and Trgmux_Ip_Types.h file are of the same Autosar version */ 56 #if ((TRGMUX_IP_DEVASSERT_AR_RELEASE_MAJOR_VERSION != TRGMUX_IP_TYPES_AR_RELEASE_MAJOR_VERSION) || \ 57 (TRGMUX_IP_DEVASSERT_AR_RELEASE_MINOR_VERSION != TRGMUX_IP_TYPES_AR_RELEASE_MINOR_VERSION) || \ 58 (TRGMUX_IP_DEVASSERT_AR_RELEASE_REVISION_VERSION != TRGMUX_IP_TYPES_AR_RELEASE_REVISION_VERSION) \ 59 ) 60 #error "AutoSar Version Numbers of Trgmux_Ip_Devassert.h and Trgmux_Ip_Types.h are different" 61 #endif 62 63 /* Check if header file and Trgmux_Ip_Types.h file are of the same Software version */ 64 #if ((TRGMUX_IP_DEVASSERT_SW_MAJOR_VERSION != TRGMUX_IP_TYPES_SW_MAJOR_VERSION) || \ 65 (TRGMUX_IP_DEVASSERT_SW_MINOR_VERSION != TRGMUX_IP_TYPES_SW_MINOR_VERSION) || \ 66 (TRGMUX_IP_DEVASSERT_SW_PATCH_VERSION != TRGMUX_IP_TYPES_SW_PATCH_VERSION) \ 67 ) 68 #error "Software Version Numbers of Trgmux_Ip_Devassert.h and Trgmux_Ip_Types.h are different" 69 #endif 70 71 #if (STD_ON == TRGMUX_IP_IS_AVAILABLE) 72 /*================================================================================================== 73 * CONSTANTS 74 ==================================================================================================*/ 75 76 /*================================================================================================== 77 * DEFINES AND MACROS 78 ==================================================================================================*/ 79 80 /*================================================================================================== 81 * ENUMS 82 ==================================================================================================*/ 83 84 /*================================================================================================== 85 * STRUCTURES AND OTHER TYPEDEFS 86 ==================================================================================================*/ 87 #define MCL_START_SEC_CODE 88 #include "Mcl_MemMap.h" 89 90 #if (STD_ON == TRGMUX_IP_DEV_ERROR_DETECT) 91 /* Implement default assert macro */ Trgmux_Ip_DevAssert(volatile boolean x)92 static inline void Trgmux_Ip_DevAssert(volatile boolean x) 93 { 94 if(x) { } else { ASM_KEYWORD("BKPT #0"); for(;;) {} } 95 } 96 #define TRGMUX_IP_DEV_ASSERT(x) Trgmux_Ip_DevAssert(x) 97 #else 98 /* Assert macro does nothing */ 99 #define TRGMUX_IP_DEV_ASSERT(x) ((void)0) 100 #endif /* STD_ON == TRGMUX_IP_DEV_ERROR_DETECT */ 101 102 #define MCL_STOP_SEC_CODE 103 #include "Mcl_MemMap.h" 104 105 /*================================================================================================== 106 * GLOBAL VARIABLE DECLARATIONS 107 ==================================================================================================*/ 108 109 /*================================================================================================== 110 * FUNCTION PROTOTYPES 111 ==================================================================================================*/ 112 113 #endif /* TRGMUX_IP_IS_AVAILABLE */ 114 115 #ifdef __cplusplus 116 } 117 #endif 118 119 /** @} */ 120 121 #endif /* #ifndef TRGMUX_IP_DEVASSERT_H_ */ 122 123 /*================================================================================================== 124 * END OF FILE 125 ==================================================================================================*/ 126