1 /* 2 * Copyright 2020-2023 NXP 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 /** 8 * @file SchM_Mcl.h 9 * @version 3.0.0 10 * 11 * @brief AUTOSAR Rte - module interface 12 * @details This file contains the functions prototypes and data types of the AUTOSAR Rte. 13 * This file contains sample code only. It is not part of the production code deliverables. 14 * 15 * @addtogroup RTE_MODULE 16 * @{ 17 */ 18 19 #ifndef SCHM_MCL_H 20 #define SCHM_MCL_H 21 22 #ifdef __cplusplus 23 extern "C" { 24 #endif 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 32 /*================================================================================================== 33 * SOURCE FILE VERSION INFORMATION 34 ==================================================================================================*/ 35 #define SCHM_MCL_AR_RELEASE_MAJOR_VERSION 4 36 #define SCHM_MCL_AR_RELEASE_MINOR_VERSION 7 37 #define SCHM_MCL_AR_RELEASE_REVISION_VERSION 0 38 #define SCHM_MCL_SW_MAJOR_VERSION 3 39 #define SCHM_MCL_SW_MINOR_VERSION 0 40 #define SCHM_MCL_SW_PATCH_VERSION 0 41 42 /*================================================================================================== 43 * FILE VERSION CHECKS 44 ==================================================================================================*/ 45 46 47 /*================================================================================================== 48 * CONSTANTS 49 ==================================================================================================*/ 50 51 /*================================================================================================== 52 * DEFINES AND MACROS 53 ==================================================================================================*/ 54 #define NUMBER_OF_CORES (uint8)(4U) 55 56 /*================================================================================================== 57 * ENUMS 58 ==================================================================================================*/ 59 60 /*================================================================================================== 61 * STRUCTURES AND OTHER TYPEDEFS 62 ==================================================================================================*/ 63 64 /*================================================================================================== 65 * GLOBAL VARIABLE DECLARATIONS 66 ==================================================================================================*/ 67 68 /*================================================================================================== 69 * FUNCTION PROTOTYPES 70 ==================================================================================================*/ 71 #define RTE_START_SEC_CODE 72 #include "Rte_MemMap.h" 73 74 #ifdef MCAL_TESTING_ENVIRONMENT 75 /** 76 @brief This function checks that all entered exclusive areas were also exited. 77 @details This function checks that all entered exclusive areas were also exited. The check 78 is done by verifying that all reentry_guard_* static variables are back to the 79 zero value. 80 81 @param[in] void No input parameters 82 @return void This function does not return a value. Test asserts are used instead. 83 84 @pre None 85 @post None 86 87 @remarks Covers 88 @remarks Implements 89 */ 90 void SchM_Check_mcl(void); 91 #endif /*MCAL_TESTING_ENVIRONMENT*/ 92 93 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_00(void); 94 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_00(void); 95 96 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_01(void); 97 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_01(void); 98 99 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_02(void); 100 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_02(void); 101 102 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_03(void); 103 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_03(void); 104 105 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_04(void); 106 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_04(void); 107 108 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_05(void); 109 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_05(void); 110 111 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_06(void); 112 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_06(void); 113 114 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_07(void); 115 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_07(void); 116 117 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_08(void); 118 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_08(void); 119 120 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_09(void); 121 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_09(void); 122 123 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_10(void); 124 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_10(void); 125 126 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_11(void); 127 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_11(void); 128 129 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_12(void); 130 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_12(void); 131 132 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_13(void); 133 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_13(void); 134 135 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_14(void); 136 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_14(void); 137 138 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_15(void); 139 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_15(void); 140 141 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_16(void); 142 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_16(void); 143 144 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_17(void); 145 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_17(void); 146 147 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_18(void); 148 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_18(void); 149 150 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_19(void); 151 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_19(void); 152 153 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_20(void); 154 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_20(void); 155 156 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_21(void); 157 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_21(void); 158 159 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_22(void); 160 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_22(void); 161 162 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_23(void); 163 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_23(void); 164 165 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_24(void); 166 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_24(void); 167 168 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_25(void); 169 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_25(void); 170 171 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_26(void); 172 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_26(void); 173 174 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_27(void); 175 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_27(void); 176 177 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_28(void); 178 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_28(void); 179 180 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_29(void); 181 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_29(void); 182 183 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_30(void); 184 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_30(void); 185 186 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_31(void); 187 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_31(void); 188 189 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_32(void); 190 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_32(void); 191 192 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_33(void); 193 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_33(void); 194 195 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_34(void); 196 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_34(void); 197 198 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_35(void); 199 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_35(void); 200 201 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_36(void); 202 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_36(void); 203 204 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_37(void); 205 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_37(void); 206 207 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_38(void); 208 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_38(void); 209 210 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_39(void); 211 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_39(void); 212 213 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_40(void); 214 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_40(void); 215 216 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_41(void); 217 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_41(void); 218 219 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_42(void); 220 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_42(void); 221 222 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_43(void); 223 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_43(void); 224 225 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_44(void); 226 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_44(void); 227 228 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_45(void); 229 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_45(void); 230 231 extern void SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_46(void); 232 extern void SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_46(void); 233 234 235 236 237 #define RTE_STOP_SEC_CODE 238 #include "Rte_MemMap.h" 239 240 #ifdef __cplusplus 241 } 242 #endif 243 244 /** @} */ 245 246 #endif /* SCHM_MCL_H */ 247