1 /* 2 * Copyright 2021-2024 NXP 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 #ifndef EMIOS_MCL_IP_CFG_DEFINES_H 8 #define EMIOS_MCL_IP_CFG_DEFINES_H 9 /** 10 * @file Emios_Mcl_Ip_Cfg_Defines.h 11 * 12 * @version 2.0.0 13 * 14 * @brief AUTOSAR Mcl - MCL driver header file. 15 * @details 16 * 17 * @addtogroup MCL_DRIVER MCL Driver 18 * @{ 19 */ 20 #ifdef __cplusplus 21 extern "C" 22 { 23 #endif 24 25 /*================================================================================================== 26 * INCLUDE FILES 27 * 1) system and project includes 28 * 2) needed interfaces from external units 29 * 3) internal and external interfaces from this unit 30 ==================================================================================================*/ 31 #include "Emios_Mcl_Ip_Cfg_DeviceRegisters.h" 32 #include "Emios_Icu_Ip_Cfg.h" 33 #include "Emios_Pwm_Ip_CfgDefines.h" 34 35 /*================================================================================================== 36 * HEADER FILE VERSION INFORMATION 37 ==================================================================================================*/ 38 #define EMIOS_MCL_IP_CFG_DEFINES_VENDOR_ID 43 39 #define EMIOS_MCL_IP_CFG_DEFINES_AR_RELEASE_MAJOR_VERSION 4 40 #define EMIOS_MCL_IP_CFG_DEFINES_AR_RELEASE_MINOR_VERSION 7 41 #define EMIOS_MCL_IP_CFG_DEFINES_AR_RELEASE_REVISION_VERSION 0 42 #define EMIOS_MCL_IP_CFG_DEFINES_SW_MAJOR_VERSION 2 43 #define EMIOS_MCL_IP_CFG_DEFINES_SW_MINOR_VERSION 0 44 #define EMIOS_MCL_IP_CFG_DEFINES_SW_PATCH_VERSION 0 45 /*================================================================================================== 46 * FILE VERSION CHECKS 47 ==================================================================================================*/ 48 #if (EMIOS_MCL_IP_CFG_DEFINES_VENDOR_ID != EMIOS_MCL_IP_CFG_DEVICEREGISTERS_VENDOR_ID) 49 #error "Emios_Mcl_Ip_Cfg_Defines.h and Emios_Mcl_Ip_Cfg_DeviceRegisters.h have different vendor ids" 50 #endif 51 52 /* Check if header file and Emios_Mcl_Ip_Cfg_DeviceRegisters.h file are of the same Autosar version */ 53 #if ((EMIOS_MCL_IP_CFG_DEFINES_AR_RELEASE_MAJOR_VERSION != EMIOS_MCL_IP_CFG_DEVICEREGISTERS_AR_RELEASE_MAJOR_VERSION) || \ 54 (EMIOS_MCL_IP_CFG_DEFINES_AR_RELEASE_MINOR_VERSION != EMIOS_MCL_IP_CFG_DEVICEREGISTERS_AR_RELEASE_MINOR_VERSION) || \ 55 (EMIOS_MCL_IP_CFG_DEFINES_AR_RELEASE_REVISION_VERSION != EMIOS_MCL_IP_CFG_DEVICEREGISTERS_AR_RELEASE_REVISION_VERSION)) 56 #error "AutoSar Version Numbers of Emios_Mcl_Ip_Cfg_Defines.h and Emios_Mcl_Ip_Cfg_DeviceRegisters.h are different" 57 #endif 58 59 /* Check if header file and Emios_Mcl_Ip_Cfg_DeviceRegisters.h file are of the same Software version */ 60 #if ((EMIOS_MCL_IP_CFG_DEFINES_SW_MAJOR_VERSION != EMIOS_MCL_IP_CFG_DEVICEREGISTERS_SW_MAJOR_VERSION) || \ 61 (EMIOS_MCL_IP_CFG_DEFINES_SW_MINOR_VERSION != EMIOS_MCL_IP_CFG_DEVICEREGISTERS_SW_MINOR_VERSION) || \ 62 (EMIOS_MCL_IP_CFG_DEFINES_SW_PATCH_VERSION != EMIOS_MCL_IP_CFG_DEVICEREGISTERS_SW_PATCH_VERSION)) 63 #error "Software Version Numbers of Emios_Mcl_Ip_Cfg_Defines.h and Emios_Mcl_Ip_Cfg_DeviceRegisters.h are different" 64 #endif 65 66 #ifndef DISABLE_MCAL_INTERMODULE_ASR_CHECK 67 /* Check if this header file and Emios_Icu_Ip_Cfg.h file are of the same Autosar version */ 68 #if ((EMIOS_MCL_IP_CFG_DEFINES_AR_RELEASE_MAJOR_VERSION != EMIOS_ICU_IP_CFG_AR_RELEASE_MAJOR_VERSION) || \ 69 (EMIOS_MCL_IP_CFG_DEFINES_AR_RELEASE_MINOR_VERSION != EMIOS_ICU_IP_CFG_AR_RELEASE_MINOR_VERSION)) 70 #error "AutoSar Version Numbers of Emios_Mcl_Ip_Cfg_Defines.h and Emios_Icu_Ip_Cfg.h are different" 71 #endif 72 /* Check if this header file and Emios_Pwm_Ip_CfgDefines.h file are of the same Autosar version */ 73 #if ((EMIOS_MCL_IP_CFG_DEFINES_AR_RELEASE_MAJOR_VERSION != EMIOS_PWM_IP_CFGDEFINES_AR_RELEASE_MAJOR_VERSION) || \ 74 (EMIOS_MCL_IP_CFG_DEFINES_AR_RELEASE_MINOR_VERSION != EMIOS_PWM_IP_CFGDEFINES_AR_RELEASE_MINOR_VERSION)) 75 #error "AutoSar Version Numbers of Emios_Mcl_Ip_Cfg_Defines.h and Emios_Pwm_Ip_CfgDefines.h are different" 76 #endif 77 #endif 78 /*================================================================================================== 79 * CONSTANTS 80 ==================================================================================================*/ 81 82 /*================================================================================================== 83 * DEFINES AND MACROS 84 ==================================================================================================*/ 85 /* Timer width */ 86 #define EMIOS_MCL_IP_24BITS_TIMER_WIDTH STD_OFF 87 88 89 90 91 /*-----------------------------------------------/ 92 / EMIOS HW MASTER BUSES / 93 /-----------------------------------------------*/ 94 #define EMIOS_CH_0 ((uint16)0U) 95 #define EMIOS_CH_16 ((uint16)16U) 96 #define EMIOS_CH_23 ((uint16)23U) 97 #define EMIOS_CH_24 ((uint16)24U) 98 99 /* Macros that indicate EMIOS channels used by MCL. */ 100 101 /* Macros used to save logic MCL EMIOS channel encoding. */ 102 103 #define EMIOS_MCL_IP_DEV_ERROR_DETECT (STD_OFF) 104 105 /** @brief Disable EMIOS multicore support at IP layer */ 106 #define EMIOS_IP_MULTICORE_IS_AVAILABLE (STD_OFF) 107 108 109 110 /*================================================================================================== 111 * ENUMS 112 ==================================================================================================*/ 113 114 /*================================================================================================== 115 * STRUCTURES AND OTHER TYPEDEFS 116 ==================================================================================================*/ 117 118 /*================================================================================================== 119 * GLOBAL VARIABLE DECLARATIONS 120 ==================================================================================================*/ 121 122 /*================================================================================================== 123 * FUNCTION PROTOTYPES 124 ==================================================================================================*/ 125 126 #ifdef __cplusplus 127 } 128 #endif 129 130 #endif /* EMIOS_MCL_IP_CFG_DEFINES_H */ 131 132