1 /*
2  * Copyright 1997-2016 Freescale Semiconductor, Inc.
3  * Copyright 2016-2024 NXP
4  *
5  * SPDX-License-Identifier: BSD-3-Clause
6  */
7 
8 /*!
9  * @file S32Z2_MCM.h
10  * @version 2.3
11  * @date 2024-05-03
12  * @brief Peripheral Access Layer for S32Z2_MCM
13  *
14  * This file contains register definitions and macros for easy access to their
15  * bit fields.
16  *
17  * This file assumes LITTLE endian system.
18  */
19 
20 /**
21 * @page misra_violations MISRA-C:2012 violations
22 *
23 * @section [global]
24 * Violates MISRA 2012 Advisory Rule 2.3, local typedef not referenced
25 * The SoC header defines typedef for all modules.
26 *
27 * @section [global]
28 * Violates MISRA 2012 Advisory Rule 2.5, local macro not referenced
29 * The SoC header defines macros for all modules and registers.
30 *
31 * @section [global]
32 * Violates MISRA 2012 Advisory Directive 4.9, Function-like macro
33 * These are generated macros used for accessing the bit-fields from registers.
34 *
35 * @section [global]
36 * Violates MISRA 2012 Required Rule 5.1, identifier clash
37 * The supported compilers use more than 31 significant characters for identifiers.
38 *
39 * @section [global]
40 * Violates MISRA 2012 Required Rule 5.2, identifier clash
41 * The supported compilers use more than 31 significant characters for identifiers.
42 *
43 * @section [global]
44 * Violates MISRA 2012 Required Rule 5.4, identifier clash
45 * The supported compilers use more than 31 significant characters for identifiers.
46 *
47 * @section [global]
48 * Violates MISRA 2012 Required Rule 5.5, identifier clash
49 * The supported compilers use more than 31 significant characters for identifiers.
50 *
51 * @section [global]
52 * Violates MISRA 2012 Required Rule 21.1, defined macro '__I' is reserved to the compiler
53 * This type qualifier is needed to ensure correct I/O access and addressing.
54 */
55 
56 /* Prevention from multiple including the same memory map */
57 #if !defined(S32Z2_MCM_H_)  /* Check if memory map has not been already included */
58 #define S32Z2_MCM_H_
59 
60 #include "S32Z2_COMMON.h"
61 
62 /* ----------------------------------------------------------------------------
63    -- MCM Peripheral Access Layer
64    ---------------------------------------------------------------------------- */
65 
66 /*!
67  * @addtogroup MCM_Peripheral_Access_Layer MCM Peripheral Access Layer
68  * @{
69  */
70 
71 /** MCM - Register Layout Typedef */
72 typedef struct {
73   uint8_t RESERVED_0[8];
74   __I  uint16_t PLASC;                             /**< Crossbar Switch (AXBS) Slave Configuration, offset: 0x8 */
75   __I  uint16_t PLAMC;                             /**< Crossbar Switch Master Configuration, offset: 0xA */
76   uint8_t RESERVED_1[4];
77   __IO uint32_t ISCR;                              /**< Interrupt Status and Control, offset: 0x10 */
78   uint8_t RESERVED_2[12];
79   __I  uint32_t FADR;                              /**< Write Buffer Fault Address, offset: 0x20 */
80   __I  uint32_t FATR;                              /**< Store Buffer Fault Attributes, offset: 0x24 */
81   __I  uint32_t FDR;                               /**< Store Buffer Fault Data, offset: 0x28 */
82   uint8_t RESERVED_3[8];
83   __I  uint32_t CPCR2;                             /**< Core Platform Control 2, offset: 0x34 */
84   uint8_t RESERVED_4[24];
85   __IO uint32_t GPCR0;                             /**< General Purpose Control 0, offset: 0x50 */
86   uint8_t RESERVED_5[940];
87   __IO uint32_t LMDR0;                             /**< Local Memory Descriptor 0, offset: 0x400 */
88   __IO uint32_t LMDR1;                             /**< Local Memory Descriptor 1, offset: 0x404 */
89 } MCM_Type, *MCM_MemMapPtr;
90 
91 /** Number of instances of the MCM module. */
92 #define MCM_INSTANCE_COUNT                       (2u)
93 
94 /* MCM - Peripheral instance base addresses */
95 /** Peripheral CE_MCM base address */
96 #define IP_CE_MCM_BASE                           (0xE0080000u)
97 /** Peripheral CE_MCM base pointer */
98 #define IP_CE_MCM                                ((MCM_Type *)IP_CE_MCM_BASE)
99 /** Peripheral SMU__MCM base address */
100 #define IP_SMU__MCM_BASE                         (0xE0080000u)
101 /** Peripheral SMU__MCM base pointer */
102 #define IP_SMU__MCM                              ((MCM_Type *)IP_SMU__MCM_BASE)
103 /** Array initializer of MCM peripheral base addresses */
104 #define IP_MCM_BASE_ADDRS                        { IP_CE_MCM_BASE, IP_SMU__MCM_BASE }
105 /** Array initializer of MCM peripheral base pointers */
106 #define IP_MCM_BASE_PTRS                         { IP_CE_MCM, IP_SMU__MCM }
107 
108 /* ----------------------------------------------------------------------------
109    -- MCM Register Masks
110    ---------------------------------------------------------------------------- */
111 
112 /*!
113  * @addtogroup MCM_Register_Masks MCM Register Masks
114  * @{
115  */
116 
117 /*! @name PLASC - Crossbar Switch (AXBS) Slave Configuration */
118 /*! @{ */
119 
120 #define MCM_PLASC_ASC0_MASK                      (0x1U)
121 #define MCM_PLASC_ASC0_SHIFT                     (0U)
122 #define MCM_PLASC_ASC0_WIDTH                     (1U)
123 #define MCM_PLASC_ASC0(x)                        (((uint16_t)(((uint16_t)(x)) << MCM_PLASC_ASC0_SHIFT)) & MCM_PLASC_ASC0_MASK)
124 
125 #define MCM_PLASC_ASC1_MASK                      (0x2U)
126 #define MCM_PLASC_ASC1_SHIFT                     (1U)
127 #define MCM_PLASC_ASC1_WIDTH                     (1U)
128 #define MCM_PLASC_ASC1(x)                        (((uint16_t)(((uint16_t)(x)) << MCM_PLASC_ASC1_SHIFT)) & MCM_PLASC_ASC1_MASK)
129 
130 #define MCM_PLASC_ASC2_MASK                      (0x4U)
131 #define MCM_PLASC_ASC2_SHIFT                     (2U)
132 #define MCM_PLASC_ASC2_WIDTH                     (1U)
133 #define MCM_PLASC_ASC2(x)                        (((uint16_t)(((uint16_t)(x)) << MCM_PLASC_ASC2_SHIFT)) & MCM_PLASC_ASC2_MASK)
134 
135 #define MCM_PLASC_ASC3_MASK                      (0x8U)
136 #define MCM_PLASC_ASC3_SHIFT                     (3U)
137 #define MCM_PLASC_ASC3_WIDTH                     (1U)
138 #define MCM_PLASC_ASC3(x)                        (((uint16_t)(((uint16_t)(x)) << MCM_PLASC_ASC3_SHIFT)) & MCM_PLASC_ASC3_MASK)
139 
140 #define MCM_PLASC_ASC4_MASK                      (0x10U)
141 #define MCM_PLASC_ASC4_SHIFT                     (4U)
142 #define MCM_PLASC_ASC4_WIDTH                     (1U)
143 #define MCM_PLASC_ASC4(x)                        (((uint16_t)(((uint16_t)(x)) << MCM_PLASC_ASC4_SHIFT)) & MCM_PLASC_ASC4_MASK)
144 
145 #define MCM_PLASC_ASC5_MASK                      (0x20U)
146 #define MCM_PLASC_ASC5_SHIFT                     (5U)
147 #define MCM_PLASC_ASC5_WIDTH                     (1U)
148 #define MCM_PLASC_ASC5(x)                        (((uint16_t)(((uint16_t)(x)) << MCM_PLASC_ASC5_SHIFT)) & MCM_PLASC_ASC5_MASK)
149 
150 #define MCM_PLASC_ASC6_MASK                      (0x40U)
151 #define MCM_PLASC_ASC6_SHIFT                     (6U)
152 #define MCM_PLASC_ASC6_WIDTH                     (1U)
153 #define MCM_PLASC_ASC6(x)                        (((uint16_t)(((uint16_t)(x)) << MCM_PLASC_ASC6_SHIFT)) & MCM_PLASC_ASC6_MASK)
154 
155 #define MCM_PLASC_ASC7_MASK                      (0x80U)
156 #define MCM_PLASC_ASC7_SHIFT                     (7U)
157 #define MCM_PLASC_ASC7_WIDTH                     (1U)
158 #define MCM_PLASC_ASC7(x)                        (((uint16_t)(((uint16_t)(x)) << MCM_PLASC_ASC7_SHIFT)) & MCM_PLASC_ASC7_MASK)
159 /*! @} */
160 
161 /*! @name PLAMC - Crossbar Switch Master Configuration */
162 /*! @{ */
163 
164 #define MCM_PLAMC_AMC0_MASK                      (0x1U)
165 #define MCM_PLAMC_AMC0_SHIFT                     (0U)
166 #define MCM_PLAMC_AMC0_WIDTH                     (1U)
167 #define MCM_PLAMC_AMC0(x)                        (((uint16_t)(((uint16_t)(x)) << MCM_PLAMC_AMC0_SHIFT)) & MCM_PLAMC_AMC0_MASK)
168 
169 #define MCM_PLAMC_AMC1_MASK                      (0x2U)
170 #define MCM_PLAMC_AMC1_SHIFT                     (1U)
171 #define MCM_PLAMC_AMC1_WIDTH                     (1U)
172 #define MCM_PLAMC_AMC1(x)                        (((uint16_t)(((uint16_t)(x)) << MCM_PLAMC_AMC1_SHIFT)) & MCM_PLAMC_AMC1_MASK)
173 
174 #define MCM_PLAMC_AMC2_MASK                      (0x4U)
175 #define MCM_PLAMC_AMC2_SHIFT                     (2U)
176 #define MCM_PLAMC_AMC2_WIDTH                     (1U)
177 #define MCM_PLAMC_AMC2(x)                        (((uint16_t)(((uint16_t)(x)) << MCM_PLAMC_AMC2_SHIFT)) & MCM_PLAMC_AMC2_MASK)
178 
179 #define MCM_PLAMC_AMC3_MASK                      (0x8U)
180 #define MCM_PLAMC_AMC3_SHIFT                     (3U)
181 #define MCM_PLAMC_AMC3_WIDTH                     (1U)
182 #define MCM_PLAMC_AMC3(x)                        (((uint16_t)(((uint16_t)(x)) << MCM_PLAMC_AMC3_SHIFT)) & MCM_PLAMC_AMC3_MASK)
183 
184 #define MCM_PLAMC_AMC4_MASK                      (0x10U)
185 #define MCM_PLAMC_AMC4_SHIFT                     (4U)
186 #define MCM_PLAMC_AMC4_WIDTH                     (1U)
187 #define MCM_PLAMC_AMC4(x)                        (((uint16_t)(((uint16_t)(x)) << MCM_PLAMC_AMC4_SHIFT)) & MCM_PLAMC_AMC4_MASK)
188 
189 #define MCM_PLAMC_AMC5_MASK                      (0x20U)
190 #define MCM_PLAMC_AMC5_SHIFT                     (5U)
191 #define MCM_PLAMC_AMC5_WIDTH                     (1U)
192 #define MCM_PLAMC_AMC5(x)                        (((uint16_t)(((uint16_t)(x)) << MCM_PLAMC_AMC5_SHIFT)) & MCM_PLAMC_AMC5_MASK)
193 
194 #define MCM_PLAMC_AMC6_MASK                      (0x40U)
195 #define MCM_PLAMC_AMC6_SHIFT                     (6U)
196 #define MCM_PLAMC_AMC6_WIDTH                     (1U)
197 #define MCM_PLAMC_AMC6(x)                        (((uint16_t)(((uint16_t)(x)) << MCM_PLAMC_AMC6_SHIFT)) & MCM_PLAMC_AMC6_MASK)
198 
199 #define MCM_PLAMC_AMC7_MASK                      (0x80U)
200 #define MCM_PLAMC_AMC7_SHIFT                     (7U)
201 #define MCM_PLAMC_AMC7_WIDTH                     (1U)
202 #define MCM_PLAMC_AMC7(x)                        (((uint16_t)(((uint16_t)(x)) << MCM_PLAMC_AMC7_SHIFT)) & MCM_PLAMC_AMC7_MASK)
203 /*! @} */
204 
205 /*! @name ISCR - Interrupt Status and Control */
206 /*! @{ */
207 
208 #define MCM_ISCR_CWBER_MASK                      (0x10U)
209 #define MCM_ISCR_CWBER_SHIFT                     (4U)
210 #define MCM_ISCR_CWBER_WIDTH                     (1U)
211 #define MCM_ISCR_CWBER(x)                        (((uint32_t)(((uint32_t)(x)) << MCM_ISCR_CWBER_SHIFT)) & MCM_ISCR_CWBER_MASK)
212 
213 #define MCM_ISCR_FIOC_MASK                       (0x100U)
214 #define MCM_ISCR_FIOC_SHIFT                      (8U)
215 #define MCM_ISCR_FIOC_WIDTH                      (1U)
216 #define MCM_ISCR_FIOC(x)                         (((uint32_t)(((uint32_t)(x)) << MCM_ISCR_FIOC_SHIFT)) & MCM_ISCR_FIOC_MASK)
217 
218 #define MCM_ISCR_FDZC_MASK                       (0x200U)
219 #define MCM_ISCR_FDZC_SHIFT                      (9U)
220 #define MCM_ISCR_FDZC_WIDTH                      (1U)
221 #define MCM_ISCR_FDZC(x)                         (((uint32_t)(((uint32_t)(x)) << MCM_ISCR_FDZC_SHIFT)) & MCM_ISCR_FDZC_MASK)
222 
223 #define MCM_ISCR_FOFC_MASK                       (0x400U)
224 #define MCM_ISCR_FOFC_SHIFT                      (10U)
225 #define MCM_ISCR_FOFC_WIDTH                      (1U)
226 #define MCM_ISCR_FOFC(x)                         (((uint32_t)(((uint32_t)(x)) << MCM_ISCR_FOFC_SHIFT)) & MCM_ISCR_FOFC_MASK)
227 
228 #define MCM_ISCR_FUFC_MASK                       (0x800U)
229 #define MCM_ISCR_FUFC_SHIFT                      (11U)
230 #define MCM_ISCR_FUFC_WIDTH                      (1U)
231 #define MCM_ISCR_FUFC(x)                         (((uint32_t)(((uint32_t)(x)) << MCM_ISCR_FUFC_SHIFT)) & MCM_ISCR_FUFC_MASK)
232 
233 #define MCM_ISCR_FIXC_MASK                       (0x1000U)
234 #define MCM_ISCR_FIXC_SHIFT                      (12U)
235 #define MCM_ISCR_FIXC_WIDTH                      (1U)
236 #define MCM_ISCR_FIXC(x)                         (((uint32_t)(((uint32_t)(x)) << MCM_ISCR_FIXC_SHIFT)) & MCM_ISCR_FIXC_MASK)
237 
238 #define MCM_ISCR_FIDC_MASK                       (0x8000U)
239 #define MCM_ISCR_FIDC_SHIFT                      (15U)
240 #define MCM_ISCR_FIDC_WIDTH                      (1U)
241 #define MCM_ISCR_FIDC(x)                         (((uint32_t)(((uint32_t)(x)) << MCM_ISCR_FIDC_SHIFT)) & MCM_ISCR_FIDC_MASK)
242 
243 #define MCM_ISCR_CWBEE_MASK                      (0x100000U)
244 #define MCM_ISCR_CWBEE_SHIFT                     (20U)
245 #define MCM_ISCR_CWBEE_WIDTH                     (1U)
246 #define MCM_ISCR_CWBEE(x)                        (((uint32_t)(((uint32_t)(x)) << MCM_ISCR_CWBEE_SHIFT)) & MCM_ISCR_CWBEE_MASK)
247 
248 #define MCM_ISCR_FIOCE_MASK                      (0x1000000U)
249 #define MCM_ISCR_FIOCE_SHIFT                     (24U)
250 #define MCM_ISCR_FIOCE_WIDTH                     (1U)
251 #define MCM_ISCR_FIOCE(x)                        (((uint32_t)(((uint32_t)(x)) << MCM_ISCR_FIOCE_SHIFT)) & MCM_ISCR_FIOCE_MASK)
252 
253 #define MCM_ISCR_FDZCE_MASK                      (0x2000000U)
254 #define MCM_ISCR_FDZCE_SHIFT                     (25U)
255 #define MCM_ISCR_FDZCE_WIDTH                     (1U)
256 #define MCM_ISCR_FDZCE(x)                        (((uint32_t)(((uint32_t)(x)) << MCM_ISCR_FDZCE_SHIFT)) & MCM_ISCR_FDZCE_MASK)
257 
258 #define MCM_ISCR_FOFCE_MASK                      (0x4000000U)
259 #define MCM_ISCR_FOFCE_SHIFT                     (26U)
260 #define MCM_ISCR_FOFCE_WIDTH                     (1U)
261 #define MCM_ISCR_FOFCE(x)                        (((uint32_t)(((uint32_t)(x)) << MCM_ISCR_FOFCE_SHIFT)) & MCM_ISCR_FOFCE_MASK)
262 
263 #define MCM_ISCR_FUFCE_MASK                      (0x8000000U)
264 #define MCM_ISCR_FUFCE_SHIFT                     (27U)
265 #define MCM_ISCR_FUFCE_WIDTH                     (1U)
266 #define MCM_ISCR_FUFCE(x)                        (((uint32_t)(((uint32_t)(x)) << MCM_ISCR_FUFCE_SHIFT)) & MCM_ISCR_FUFCE_MASK)
267 
268 #define MCM_ISCR_FIXCE_MASK                      (0x10000000U)
269 #define MCM_ISCR_FIXCE_SHIFT                     (28U)
270 #define MCM_ISCR_FIXCE_WIDTH                     (1U)
271 #define MCM_ISCR_FIXCE(x)                        (((uint32_t)(((uint32_t)(x)) << MCM_ISCR_FIXCE_SHIFT)) & MCM_ISCR_FIXCE_MASK)
272 
273 #define MCM_ISCR_FIDCE_MASK                      (0x80000000U)
274 #define MCM_ISCR_FIDCE_SHIFT                     (31U)
275 #define MCM_ISCR_FIDCE_WIDTH                     (1U)
276 #define MCM_ISCR_FIDCE(x)                        (((uint32_t)(((uint32_t)(x)) << MCM_ISCR_FIDCE_SHIFT)) & MCM_ISCR_FIDCE_MASK)
277 /*! @} */
278 
279 /*! @name FADR - Write Buffer Fault Address */
280 /*! @{ */
281 
282 #define MCM_FADR_ADDRESS_MASK                    (0xFFFFFFFFU)
283 #define MCM_FADR_ADDRESS_SHIFT                   (0U)
284 #define MCM_FADR_ADDRESS_WIDTH                   (32U)
285 #define MCM_FADR_ADDRESS(x)                      (((uint32_t)(((uint32_t)(x)) << MCM_FADR_ADDRESS_SHIFT)) & MCM_FADR_ADDRESS_MASK)
286 /*! @} */
287 
288 /*! @name FATR - Store Buffer Fault Attributes */
289 /*! @{ */
290 
291 #define MCM_FATR_BEDA_MASK                       (0x1U)
292 #define MCM_FATR_BEDA_SHIFT                      (0U)
293 #define MCM_FATR_BEDA_WIDTH                      (1U)
294 #define MCM_FATR_BEDA(x)                         (((uint32_t)(((uint32_t)(x)) << MCM_FATR_BEDA_SHIFT)) & MCM_FATR_BEDA_MASK)
295 
296 #define MCM_FATR_BEMD_MASK                       (0x2U)
297 #define MCM_FATR_BEMD_SHIFT                      (1U)
298 #define MCM_FATR_BEMD_WIDTH                      (1U)
299 #define MCM_FATR_BEMD(x)                         (((uint32_t)(((uint32_t)(x)) << MCM_FATR_BEMD_SHIFT)) & MCM_FATR_BEMD_MASK)
300 
301 #define MCM_FATR_BESZ_MASK                       (0x30U)
302 #define MCM_FATR_BESZ_SHIFT                      (4U)
303 #define MCM_FATR_BESZ_WIDTH                      (2U)
304 #define MCM_FATR_BESZ(x)                         (((uint32_t)(((uint32_t)(x)) << MCM_FATR_BESZ_SHIFT)) & MCM_FATR_BESZ_MASK)
305 
306 #define MCM_FATR_BEWT_MASK                       (0x80U)
307 #define MCM_FATR_BEWT_SHIFT                      (7U)
308 #define MCM_FATR_BEWT_WIDTH                      (1U)
309 #define MCM_FATR_BEWT(x)                         (((uint32_t)(((uint32_t)(x)) << MCM_FATR_BEWT_SHIFT)) & MCM_FATR_BEWT_MASK)
310 
311 #define MCM_FATR_BEMN_MASK                       (0xF00U)
312 #define MCM_FATR_BEMN_SHIFT                      (8U)
313 #define MCM_FATR_BEMN_WIDTH                      (4U)
314 #define MCM_FATR_BEMN(x)                         (((uint32_t)(((uint32_t)(x)) << MCM_FATR_BEMN_SHIFT)) & MCM_FATR_BEMN_MASK)
315 
316 #define MCM_FATR_BEOVR_MASK                      (0x80000000U)
317 #define MCM_FATR_BEOVR_SHIFT                     (31U)
318 #define MCM_FATR_BEOVR_WIDTH                     (1U)
319 #define MCM_FATR_BEOVR(x)                        (((uint32_t)(((uint32_t)(x)) << MCM_FATR_BEOVR_SHIFT)) & MCM_FATR_BEOVR_MASK)
320 /*! @} */
321 
322 /*! @name FDR - Store Buffer Fault Data */
323 /*! @{ */
324 
325 #define MCM_FDR_DATA_MASK                        (0xFFFFFFFFU)
326 #define MCM_FDR_DATA_SHIFT                       (0U)
327 #define MCM_FDR_DATA_WIDTH                       (32U)
328 #define MCM_FDR_DATA(x)                          (((uint32_t)(((uint32_t)(x)) << MCM_FDR_DATA_SHIFT)) & MCM_FDR_DATA_MASK)
329 /*! @} */
330 
331 /*! @name CPCR2 - Core Platform Control 2 */
332 /*! @{ */
333 
334 #define MCM_CPCR2_CBCS_MASK                      (0xF0U)
335 #define MCM_CPCR2_CBCS_SHIFT                     (4U)
336 #define MCM_CPCR2_CBCS_WIDTH                     (4U)
337 #define MCM_CPCR2_CBCS(x)                        (((uint32_t)(((uint32_t)(x)) << MCM_CPCR2_CBCS_SHIFT)) & MCM_CPCR2_CBCS_MASK)
338 
339 #define MCM_CPCR2_SBCS_MASK                      (0xF000U)
340 #define MCM_CPCR2_SBCS_SHIFT                     (12U)
341 #define MCM_CPCR2_SBCS_WIDTH                     (4U)
342 #define MCM_CPCR2_SBCS(x)                        (((uint32_t)(((uint32_t)(x)) << MCM_CPCR2_SBCS_SHIFT)) & MCM_CPCR2_SBCS_MASK)
343 /*! @} */
344 
345 /*! @name GPCR0 - General Purpose Control 0 */
346 /*! @{ */
347 
348 #define MCM_GPCR0_CORE_TASKID_MASK               (0xFU)
349 #define MCM_GPCR0_CORE_TASKID_SHIFT              (0U)
350 #define MCM_GPCR0_CORE_TASKID_WIDTH              (4U)
351 #define MCM_GPCR0_CORE_TASKID(x)                 (((uint32_t)(((uint32_t)(x)) << MCM_GPCR0_CORE_TASKID_SHIFT)) & MCM_GPCR0_CORE_TASKID_MASK)
352 /*! @} */
353 
354 /*! @name LMDR0 - Local Memory Descriptor 0 */
355 /*! @{ */
356 
357 #define MCM_LMDR0_EEWG_MASK                      (0x1U)
358 #define MCM_LMDR0_EEWG_SHIFT                     (0U)
359 #define MCM_LMDR0_EEWG_WIDTH                     (1U)
360 #define MCM_LMDR0_EEWG(x)                        (((uint32_t)(((uint32_t)(x)) << MCM_LMDR0_EEWG_SHIFT)) & MCM_LMDR0_EEWG_MASK)
361 
362 #define MCM_LMDR0_EERC_MASK                      (0x2U)
363 #define MCM_LMDR0_EERC_SHIFT                     (1U)
364 #define MCM_LMDR0_EERC_WIDTH                     (1U)
365 #define MCM_LMDR0_EERC(x)                        (((uint32_t)(((uint32_t)(x)) << MCM_LMDR0_EERC_SHIFT)) & MCM_LMDR0_EERC_MASK)
366 
367 #define MCM_LMDR0_MT_MASK                        (0xE000U)
368 #define MCM_LMDR0_MT_SHIFT                       (13U)
369 #define MCM_LMDR0_MT_WIDTH                       (3U)
370 #define MCM_LMDR0_MT(x)                          (((uint32_t)(((uint32_t)(x)) << MCM_LMDR0_MT_SHIFT)) & MCM_LMDR0_MT_MASK)
371 
372 #define MCM_LMDR0_RO_MASK                        (0x10000U)
373 #define MCM_LMDR0_RO_SHIFT                       (16U)
374 #define MCM_LMDR0_RO_WIDTH                       (1U)
375 #define MCM_LMDR0_RO(x)                          (((uint32_t)(((uint32_t)(x)) << MCM_LMDR0_RO_SHIFT)) & MCM_LMDR0_RO_MASK)
376 
377 #define MCM_LMDR0_DPW_MASK                       (0xE0000U)
378 #define MCM_LMDR0_DPW_SHIFT                      (17U)
379 #define MCM_LMDR0_DPW_WIDTH                      (3U)
380 #define MCM_LMDR0_DPW(x)                         (((uint32_t)(((uint32_t)(x)) << MCM_LMDR0_DPW_SHIFT)) & MCM_LMDR0_DPW_MASK)
381 
382 #define MCM_LMDR0_WY_MASK                        (0xF00000U)
383 #define MCM_LMDR0_WY_SHIFT                       (20U)
384 #define MCM_LMDR0_WY_WIDTH                       (4U)
385 #define MCM_LMDR0_WY(x)                          (((uint32_t)(((uint32_t)(x)) << MCM_LMDR0_WY_SHIFT)) & MCM_LMDR0_WY_MASK)
386 
387 #define MCM_LMDR0_LMSZ_MASK                      (0xF000000U)
388 #define MCM_LMDR0_LMSZ_SHIFT                     (24U)
389 #define MCM_LMDR0_LMSZ_WIDTH                     (4U)
390 #define MCM_LMDR0_LMSZ(x)                        (((uint32_t)(((uint32_t)(x)) << MCM_LMDR0_LMSZ_SHIFT)) & MCM_LMDR0_LMSZ_MASK)
391 
392 #define MCM_LMDR0_LMSZH_MASK                     (0x10000000U)
393 #define MCM_LMDR0_LMSZH_SHIFT                    (28U)
394 #define MCM_LMDR0_LMSZH_WIDTH                    (1U)
395 #define MCM_LMDR0_LMSZH(x)                       (((uint32_t)(((uint32_t)(x)) << MCM_LMDR0_LMSZH_SHIFT)) & MCM_LMDR0_LMSZH_MASK)
396 
397 #define MCM_LMDR0_V_MASK                         (0x80000000U)
398 #define MCM_LMDR0_V_SHIFT                        (31U)
399 #define MCM_LMDR0_V_WIDTH                        (1U)
400 #define MCM_LMDR0_V(x)                           (((uint32_t)(((uint32_t)(x)) << MCM_LMDR0_V_SHIFT)) & MCM_LMDR0_V_MASK)
401 /*! @} */
402 
403 /*! @name LMDR1 - Local Memory Descriptor 1 */
404 /*! @{ */
405 
406 #define MCM_LMDR1_EEWG_MASK                      (0x1U)
407 #define MCM_LMDR1_EEWG_SHIFT                     (0U)
408 #define MCM_LMDR1_EEWG_WIDTH                     (1U)
409 #define MCM_LMDR1_EEWG(x)                        (((uint32_t)(((uint32_t)(x)) << MCM_LMDR1_EEWG_SHIFT)) & MCM_LMDR1_EEWG_MASK)
410 
411 #define MCM_LMDR1_EERC_MASK                      (0x2U)
412 #define MCM_LMDR1_EERC_SHIFT                     (1U)
413 #define MCM_LMDR1_EERC_WIDTH                     (1U)
414 #define MCM_LMDR1_EERC(x)                        (((uint32_t)(((uint32_t)(x)) << MCM_LMDR1_EERC_SHIFT)) & MCM_LMDR1_EERC_MASK)
415 
416 #define MCM_LMDR1_MT_MASK                        (0xE000U)
417 #define MCM_LMDR1_MT_SHIFT                       (13U)
418 #define MCM_LMDR1_MT_WIDTH                       (3U)
419 #define MCM_LMDR1_MT(x)                          (((uint32_t)(((uint32_t)(x)) << MCM_LMDR1_MT_SHIFT)) & MCM_LMDR1_MT_MASK)
420 
421 #define MCM_LMDR1_RO_MASK                        (0x10000U)
422 #define MCM_LMDR1_RO_SHIFT                       (16U)
423 #define MCM_LMDR1_RO_WIDTH                       (1U)
424 #define MCM_LMDR1_RO(x)                          (((uint32_t)(((uint32_t)(x)) << MCM_LMDR1_RO_SHIFT)) & MCM_LMDR1_RO_MASK)
425 
426 #define MCM_LMDR1_DPW_MASK                       (0xE0000U)
427 #define MCM_LMDR1_DPW_SHIFT                      (17U)
428 #define MCM_LMDR1_DPW_WIDTH                      (3U)
429 #define MCM_LMDR1_DPW(x)                         (((uint32_t)(((uint32_t)(x)) << MCM_LMDR1_DPW_SHIFT)) & MCM_LMDR1_DPW_MASK)
430 
431 #define MCM_LMDR1_WY_MASK                        (0xF00000U)
432 #define MCM_LMDR1_WY_SHIFT                       (20U)
433 #define MCM_LMDR1_WY_WIDTH                       (4U)
434 #define MCM_LMDR1_WY(x)                          (((uint32_t)(((uint32_t)(x)) << MCM_LMDR1_WY_SHIFT)) & MCM_LMDR1_WY_MASK)
435 
436 #define MCM_LMDR1_LMSZ_MASK                      (0xF000000U)
437 #define MCM_LMDR1_LMSZ_SHIFT                     (24U)
438 #define MCM_LMDR1_LMSZ_WIDTH                     (4U)
439 #define MCM_LMDR1_LMSZ(x)                        (((uint32_t)(((uint32_t)(x)) << MCM_LMDR1_LMSZ_SHIFT)) & MCM_LMDR1_LMSZ_MASK)
440 
441 #define MCM_LMDR1_LMSZH_MASK                     (0x10000000U)
442 #define MCM_LMDR1_LMSZH_SHIFT                    (28U)
443 #define MCM_LMDR1_LMSZH_WIDTH                    (1U)
444 #define MCM_LMDR1_LMSZH(x)                       (((uint32_t)(((uint32_t)(x)) << MCM_LMDR1_LMSZH_SHIFT)) & MCM_LMDR1_LMSZH_MASK)
445 
446 #define MCM_LMDR1_V_MASK                         (0x80000000U)
447 #define MCM_LMDR1_V_SHIFT                        (31U)
448 #define MCM_LMDR1_V_WIDTH                        (1U)
449 #define MCM_LMDR1_V(x)                           (((uint32_t)(((uint32_t)(x)) << MCM_LMDR1_V_SHIFT)) & MCM_LMDR1_V_MASK)
450 /*! @} */
451 
452 /*!
453  * @}
454  */ /* end of group MCM_Register_Masks */
455 
456 /*!
457  * @}
458  */ /* end of group MCM_Peripheral_Access_Layer */
459 
460 #endif  /* #if !defined(S32Z2_MCM_H_) */
461