1 /*
2  * Copyright 2023 NXP
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 
7 #ifndef EMIOS_ICU_IP_SA_INIT_PBCFG_H
8 #define EMIOS_ICU_IP_SA_INIT_PBCFG_H
9 
10 /**
11  *   @file    Emios_Icu_Ip_SA_Init_PBCfg.h
12  *   @version 3.0.0
13  *
14  *   @brief   AUTOSAR Icu - contains the data exported by the ICU module.
15  *   @details Contains the information that will be exported by the module, as requested by Autosar.
16  *
17  *   @addtogroup emios_icu_ip EMIOS IPL
18  *   @{
19  */
20 
21 #ifdef __cplusplus
22 extern "C"{
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_Icu_Ip_Types.h"
32 /*==================================================================================================
33  *                              SOURCE FILE VERSION INFORMATION
34  *================================================================================================*/
35 #define EMIOS_ICU_IP_SA_INIT_PBCFG_VENDOR_ID                    43
36 #define EMIOS_ICU_IP_SA_INIT_PBCFG_AR_RELEASE_MAJOR_VERSION     4
37 #define EMIOS_ICU_IP_SA_INIT_PBCFG_AR_RELEASE_MINOR_VERSION     7
38 #define EMIOS_ICU_IP_SA_INIT_PBCFG_AR_RELEASE_REVISION_VERSION  0
39 #define EMIOS_ICU_IP_SA_INIT_PBCFG_SW_MAJOR_VERSION             3
40 #define EMIOS_ICU_IP_SA_INIT_PBCFG_SW_MINOR_VERSION             0
41 #define EMIOS_ICU_IP_SA_INIT_PBCFG_SW_PATCH_VERSION             0
42 
43 /*==================================================================================================
44  *                                      FILE VERSION CHECKS
45  *================================================================================================*/
46 /* Check if source file and ICU header file are of the same vendor */
47 #if (EMIOS_ICU_IP_SA_INIT_PBCFG_VENDOR_ID != EMIOS_ICU_IP_TYPES_VENDOR_ID)
48     #error "Emios_Icu_Ip_SA_Init_PBcfg.h and Emios_Icu_Ip_Types.h have different vendor IDs"
49 #endif
50 /* Check if source file and ICU header file are of the same AutoSar version */
51 #if ((EMIOS_ICU_IP_SA_INIT_PBCFG_AR_RELEASE_MAJOR_VERSION    != EMIOS_ICU_IP_TYPES_AR_RELEASE_MAJOR_VERSION) || \
52      (EMIOS_ICU_IP_SA_INIT_PBCFG_AR_RELEASE_MINOR_VERSION    != EMIOS_ICU_IP_TYPES_AR_RELEASE_MINOR_VERSION) || \
53      (EMIOS_ICU_IP_SA_INIT_PBCFG_AR_RELEASE_REVISION_VERSION != EMIOS_ICU_IP_TYPES_AR_RELEASE_REVISION_VERSION))
54     #error "AutoSar Version Numbers of Emios_Icu_Ip_SA_Init_PBcfg.h and Emios_Icu_Ip_Types.h are different"
55 #endif
56 /* Check if source file and ICU header file are of the same Software version */
57 #if ((EMIOS_ICU_IP_SA_INIT_PBCFG_SW_MAJOR_VERSION != EMIOS_ICU_IP_TYPES_SW_MAJOR_VERSION) || \
58      (EMIOS_ICU_IP_SA_INIT_PBCFG_SW_MINOR_VERSION != EMIOS_ICU_IP_TYPES_SW_MINOR_VERSION) || \
59      (EMIOS_ICU_IP_SA_INIT_PBCFG_SW_PATCH_VERSION != EMIOS_ICU_IP_TYPES_SW_PATCH_VERSION))
60     #error "Software Version Numbers of Emios_Icu_Ip_SA_Init_PBcfg.h and Emios_Icu_Ip_Types.h are different"
61 #endif
62 /*==================================================================================================
63 *                                            CONSTANTS
64 ==================================================================================================*/
65 
66 /*==================================================================================================
67 *                                       DEFINES AND MACROS
68 ==================================================================================================*/
69 #if (STD_ON == EMIOS_ICU_IP_USED)
70 
71 #if DT_REG_ADDR(DT_INST(0, nxp_s32_emios)) == IP_EMIOS_0_BASE
72 #define EMIOS_0_DRV_INST    0
73 #elif DT_REG_ADDR(DT_INST(1, nxp_s32_emios)) == IP_EMIOS_0_BASE
74 #define EMIOS_0_DRV_INST    1
75 #else
76 #define EMIOS_0_DRV_INST    2
77 #endif
78 
79 #if DT_REG_ADDR(DT_INST(0, nxp_s32_emios)) == IP_EMIOS_1_BASE
80 #define EMIOS_1_DRV_INST    0
81 #elif DT_REG_ADDR(DT_INST(1, nxp_s32_emios)) == IP_EMIOS_1_BASE
82 #define EMIOS_1_DRV_INST    1
83 #else
84 #define EMIOS_1_DRV_INST    2
85 #endif
86 
87 #if DT_REG_ADDR(DT_INST(0, nxp_s32_emios)) == IP_EMIOS_2_BASE
88 #define EMIOS_2_DRV_INST    0
89 #elif DT_REG_ADDR(DT_INST(1, nxp_s32_emios)) == IP_EMIOS_2_BASE
90 #define EMIOS_2_DRV_INST    1
91 #else
92 #define EMIOS_2_DRV_INST    2
93 #endif
94 
95 #define EMIOS_PWM_NODE(n)   DT_CHILD(DT_INST(n, nxp_s32_emios), pwm)
96 
97 #define HAS_QDEC (DT_HAS_COMPAT_STATUS_OKAY(nxp_qdec_s32) && CONFIG_QDEC_NXP_S32)
98 
99 #define EMIOS_ICU_CHANNEL(node_id, ch)                                   \
100         IF_ENABLED(DT_ENUM_HAS_VALUE(node_id, pwm_mode, SAIC),           \
101                   ((DT_PROP(node_id, channel) == ch) ||))
102 
103 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
104                                        EMIOS_ICU_CHANNEL, 0) 0
105 #ifndef ICU_EMIOS_0_CH_0_ISR_USED
106     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
107     #define ICU_EMIOS_0_CH_0_ISR_USED    (STD_ON)
108 #endif
109 
110 #ifndef EMIOS_0_CH_0_ISR_USED
111     /** @brief Macros for indicate EMIOS interrupts used. */
112     #define EMIOS_0_CH_0_ISR_USED        (STD_ON)
113 #endif
114 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
115 
116 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
117                                        EMIOS_ICU_CHANNEL, 1) 0
118 #ifndef ICU_EMIOS_0_CH_1_ISR_USED
119     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
120     #define ICU_EMIOS_0_CH_1_ISR_USED    (STD_ON)
121 #endif
122 
123 #ifndef EMIOS_0_CH_1_ISR_USED
124     /** @brief Macros for indicate EMIOS interrupts used. */
125     #define EMIOS_0_CH_1_ISR_USED        (STD_ON)
126 #endif
127 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
128 
129 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
130                                        EMIOS_ICU_CHANNEL, 2) 0
131 #ifndef ICU_EMIOS_0_CH_2_ISR_USED
132     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
133     #define ICU_EMIOS_0_CH_2_ISR_USED    (STD_ON)
134 #endif
135 
136 #ifndef EMIOS_0_CH_2_ISR_USED
137     /** @brief Macros for indicate EMIOS interrupts used. */
138     #define EMIOS_0_CH_2_ISR_USED        (STD_ON)
139 #endif
140 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
141 
142 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
143                                        EMIOS_ICU_CHANNEL, 3) 0
144 #ifndef ICU_EMIOS_0_CH_3_ISR_USED
145     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
146     #define ICU_EMIOS_0_CH_3_ISR_USED    (STD_ON)
147 #endif
148 
149 #ifndef EMIOS_0_CH_3_ISR_USED
150     /** @brief Macros for indicate EMIOS interrupts used. */
151     #define EMIOS_0_CH_3_ISR_USED        (STD_ON)
152 #endif
153 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
154 
155 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
156                                        EMIOS_ICU_CHANNEL, 4) 0
157 #ifndef ICU_EMIOS_0_CH_4_ISR_USED
158     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
159     #define ICU_EMIOS_0_CH_4_ISR_USED    (STD_ON)
160 #endif
161 
162 #ifndef EMIOS_0_CH_4_ISR_USED
163     /** @brief Macros for indicate EMIOS interrupts used. */
164     #define EMIOS_0_CH_4_ISR_USED        (STD_ON)
165 #endif
166 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
167 
168 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
169                                        EMIOS_ICU_CHANNEL, 5) 0
170 #ifndef ICU_EMIOS_0_CH_5_ISR_USED
171     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
172     #define ICU_EMIOS_0_CH_5_ISR_USED    (STD_ON)
173 #endif
174 
175 #ifndef EMIOS_0_CH_5_ISR_USED
176     /** @brief Macros for indicate EMIOS interrupts used. */
177     #define EMIOS_0_CH_5_ISR_USED        (STD_ON)
178 #endif
179 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
180 
181 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
182                                        EMIOS_ICU_CHANNEL, 6) 0 || HAS_QDEC
183 #ifndef ICU_EMIOS_0_CH_6_ISR_USED
184     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
185     #define ICU_EMIOS_0_CH_6_ISR_USED    (STD_ON)
186 #endif
187 
188 #ifndef EMIOS_0_CH_6_ISR_USED
189     /** @brief Macros for indicate EMIOS interrupts used. */
190     #define EMIOS_0_CH_6_ISR_USED        (STD_ON)
191 #endif
192 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
193 
194 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
195                                        EMIOS_ICU_CHANNEL, 7) 0 || HAS_QDEC
196 #ifndef ICU_EMIOS_0_CH_7_ISR_USED
197     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
198     #define ICU_EMIOS_0_CH_7_ISR_USED    (STD_ON)
199 #endif
200 
201 #ifndef EMIOS_0_CH_7_ISR_USED
202     /** @brief Macros for indicate EMIOS interrupts used. */
203     #define EMIOS_0_CH_7_ISR_USED        (STD_ON)
204 #endif
205 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
206 
207 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
208                                        EMIOS_ICU_CHANNEL, 8) 0
209 #ifndef ICU_EMIOS_0_CH_8_ISR_USED
210     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
211     #define ICU_EMIOS_0_CH_8_ISR_USED    (STD_ON)
212 #endif
213 
214 #ifndef EMIOS_0_CH_8_ISR_USED
215     /** @brief Macros for indicate EMIOS interrupts used. */
216     #define EMIOS_0_CH_8_ISR_USED        (STD_ON)
217 #endif
218 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
219 
220 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
221                                        EMIOS_ICU_CHANNEL, 9) 0
222 #ifndef ICU_EMIOS_0_CH_9_ISR_USED
223     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
224     #define ICU_EMIOS_0_CH_9_ISR_USED    (STD_ON)
225 #endif
226 
227 #ifndef EMIOS_0_CH_9_ISR_USED
228     /** @brief Macros for indicate EMIOS interrupts used. */
229     #define EMIOS_0_CH_9_ISR_USED        (STD_ON)
230 #endif
231 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
232 
233 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
234                                        EMIOS_ICU_CHANNEL, 10) 0
235 #ifndef ICU_EMIOS_0_CH_10_ISR_USED
236     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
237     #define ICU_EMIOS_0_CH_10_ISR_USED    (STD_ON)
238 #endif
239 
240 #ifndef EMIOS_0_CH_10_ISR_USED
241     /** @brief Macros for indicate EMIOS interrupts used. */
242     #define EMIOS_0_CH_10_ISR_USED        (STD_ON)
243 #endif
244 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
245 
246 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
247                                        EMIOS_ICU_CHANNEL, 11) 0
248 #ifndef ICU_EMIOS_0_CH_11_ISR_USED
249     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
250     #define ICU_EMIOS_0_CH_11_ISR_USED    (STD_ON)
251 #endif
252 
253 #ifndef EMIOS_0_CH_11_ISR_USED
254     /** @brief Macros for indicate EMIOS interrupts used. */
255     #define EMIOS_0_CH_11_ISR_USED        (STD_ON)
256 #endif
257 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
258 
259 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
260                                        EMIOS_ICU_CHANNEL, 12) 0
261 #ifndef ICU_EMIOS_0_CH_12_ISR_USED
262     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
263     #define ICU_EMIOS_0_CH_12_ISR_USED    (STD_ON)
264 #endif
265 
266 #ifndef EMIOS_0_CH_12_ISR_USED
267     /** @brief Macros for indicate EMIOS interrupts used. */
268     #define EMIOS_0_CH_12_ISR_USED        (STD_ON)
269 #endif
270 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
271 
272 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
273                                        EMIOS_ICU_CHANNEL, 13) 0
274 #ifndef ICU_EMIOS_0_CH_13_ISR_USED
275     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
276     #define ICU_EMIOS_0_CH_13_ISR_USED    (STD_ON)
277 #endif
278 
279 #ifndef EMIOS_0_CH_13_ISR_USED
280     /** @brief Macros for indicate EMIOS interrupts used. */
281     #define EMIOS_0_CH_13_ISR_USED        (STD_ON)
282 #endif
283 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
284 
285 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
286                                        EMIOS_ICU_CHANNEL, 14) 0
287 #ifndef ICU_EMIOS_0_CH_14_ISR_USED
288     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
289     #define ICU_EMIOS_0_CH_14_ISR_USED    (STD_ON)
290 #endif
291 
292 #ifndef EMIOS_0_CH_14_ISR_USED
293     /** @brief Macros for indicate EMIOS interrupts used. */
294     #define EMIOS_0_CH_14_ISR_USED        (STD_ON)
295 #endif
296 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
297 
298 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
299                                        EMIOS_ICU_CHANNEL, 15) 0
300 #ifndef ICU_EMIOS_0_CH_15_ISR_USED
301     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
302     #define ICU_EMIOS_0_CH_15_ISR_USED    (STD_ON)
303 #endif
304 
305 #ifndef EMIOS_0_CH_15_ISR_USED
306     /** @brief Macros for indicate EMIOS interrupts used. */
307     #define EMIOS_0_CH_15_ISR_USED        (STD_ON)
308 #endif
309 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
310 
311 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
312                                        EMIOS_ICU_CHANNEL, 16) 0
313 #ifndef ICU_EMIOS_0_CH_16_ISR_USED
314     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
315     #define ICU_EMIOS_0_CH_16_ISR_USED    (STD_ON)
316 #endif
317 
318 #ifndef EMIOS_0_CH_16_ISR_USED
319     /** @brief Macros for indicate EMIOS interrupts used. */
320     #define EMIOS_0_CH_16_ISR_USED        (STD_ON)
321 #endif
322 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
323 
324 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
325                                        EMIOS_ICU_CHANNEL, 17) 0
326 #ifndef ICU_EMIOS_0_CH_17_ISR_USED
327     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
328     #define ICU_EMIOS_0_CH_17_ISR_USED    (STD_ON)
329 #endif
330 
331 #ifndef EMIOS_0_CH_17_ISR_USED
332     /** @brief Macros for indicate EMIOS interrupts used. */
333     #define EMIOS_0_CH_17_ISR_USED        (STD_ON)
334 #endif
335 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
336 
337 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
338                                        EMIOS_ICU_CHANNEL, 18) 0
339 #ifndef ICU_EMIOS_0_CH_18_ISR_USED
340     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
341     #define ICU_EMIOS_0_CH_18_ISR_USED    (STD_ON)
342 #endif
343 
344 #ifndef EMIOS_0_CH_18_ISR_USED
345     /** @brief Macros for indicate EMIOS interrupts used. */
346     #define EMIOS_0_CH_18_ISR_USED        (STD_ON)
347 #endif
348 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
349 
350 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
351                                        EMIOS_ICU_CHANNEL, 19) 0
352 #ifndef ICU_EMIOS_0_CH_19_ISR_USED
353     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
354     #define ICU_EMIOS_0_CH_19_ISR_USED    (STD_ON)
355 #endif
356 
357 #ifndef EMIOS_0_CH_19_ISR_USED
358     /** @brief Macros for indicate EMIOS interrupts used. */
359     #define EMIOS_0_CH_19_ISR_USED        (STD_ON)
360 #endif
361 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
362 
363 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
364                                        EMIOS_ICU_CHANNEL, 20) 0
365 #ifndef ICU_EMIOS_0_CH_20_ISR_USED
366     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
367     #define ICU_EMIOS_0_CH_20_ISR_USED    (STD_ON)
368 #endif
369 
370 #ifndef EMIOS_0_CH_20_ISR_USED
371     /** @brief Macros for indicate EMIOS interrupts used. */
372     #define EMIOS_0_CH_20_ISR_USED        (STD_ON)
373 #endif
374 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
375 
376 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
377                                        EMIOS_ICU_CHANNEL, 21) 0
378 #ifndef ICU_EMIOS_0_CH_21_ISR_USED
379     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
380     #define ICU_EMIOS_0_CH_21_ISR_USED    (STD_ON)
381 #endif
382 
383 #ifndef EMIOS_0_CH_21_ISR_USED
384     /** @brief Macros for indicate EMIOS interrupts used. */
385     #define EMIOS_0_CH_21_ISR_USED        (STD_ON)
386 #endif
387 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
388 
389 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
390                                        EMIOS_ICU_CHANNEL, 22) 0
391 #ifndef ICU_EMIOS_0_CH_22_ISR_USED
392     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
393     #define ICU_EMIOS_0_CH_22_ISR_USED    (STD_ON)
394 #endif
395 
396 #ifndef EMIOS_0_CH_22_ISR_USED
397     /** @brief Macros for indicate EMIOS interrupts used. */
398     #define EMIOS_0_CH_22_ISR_USED        (STD_ON)
399 #endif
400 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
401 
402 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_0_DRV_INST), \
403                                        EMIOS_ICU_CHANNEL, 23) 0
404 #ifndef ICU_EMIOS_0_CH_23_ISR_USED
405     /** @brief Macros for check EMIOS channels used by MCL. */
406     #define ICU_EMIOS_0_CH_23_ISR_USED          (STD_ON)
407 #endif
408 
409 #ifndef EMIOS_0_CH_23_ISR_USED
410     /** @brief Macros for indicate EMIOS interrupts used. */
411     #define EMIOS_0_CH_23_ISR_USED          (STD_ON)
412 #endif
413 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
414 
415 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
416                                        EMIOS_ICU_CHANNEL, 0) 0
417 #ifndef ICU_EMIOS_1_CH_0_ISR_USED
418     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
419     #define ICU_EMIOS_1_CH_0_ISR_USED    (STD_ON)
420 #endif
421 
422 #ifndef EMIOS_1_CH_0_ISR_USED
423     /** @brief Macros for indicate EMIOS interrupts used. */
424     #define EMIOS_1_CH_0_ISR_USED        (STD_ON)
425 #endif
426 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
427 
428 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
429                                        EMIOS_ICU_CHANNEL, 1) 0
430 #ifndef ICU_EMIOS_1_CH_1_ISR_USED
431     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
432     #define ICU_EMIOS_1_CH_1_ISR_USED    (STD_ON)
433 #endif
434 
435 #ifndef EMIOS_1_CH_1_ISR_USED
436     /** @brief Macros for indicate EMIOS interrupts used. */
437     #define EMIOS_1_CH_1_ISR_USED        (STD_ON)
438 #endif
439 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
440 
441 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
442                                        EMIOS_ICU_CHANNEL, 2) 0
443 #ifndef ICU_EMIOS_1_CH_2_ISR_USED
444     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
445     #define ICU_EMIOS_1_CH_2_ISR_USED    (STD_ON)
446 #endif
447 
448 #ifndef EMIOS_1_CH_2_ISR_USED
449     /** @brief Macros for indicate EMIOS interrupts used. */
450     #define EMIOS_1_CH_2_ISR_USED        (STD_ON)
451 #endif
452 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
453 
454 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
455                                        EMIOS_ICU_CHANNEL, 3) 0
456 #ifndef ICU_EMIOS_1_CH_3_ISR_USED
457     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
458     #define ICU_EMIOS_1_CH_3_ISR_USED    (STD_ON)
459 #endif
460 
461 #ifndef EMIOS_1_CH_3_ISR_USED
462     /** @brief Macros for indicate EMIOS interrupts used. */
463     #define EMIOS_1_CH_3_ISR_USED        (STD_ON)
464 #endif
465 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
466 
467 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
468                                        EMIOS_ICU_CHANNEL, 4) 0
469 #ifndef ICU_EMIOS_1_CH_4_ISR_USED
470     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
471     #define ICU_EMIOS_1_CH_4_ISR_USED    (STD_ON)
472 #endif
473 
474 #ifndef EMIOS_1_CH_4_ISR_USED
475     /** @brief Macros for indicate EMIOS interrupts used. */
476     #define EMIOS_1_CH_4_ISR_USED        (STD_ON)
477 #endif
478 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
479 
480 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
481                                        EMIOS_ICU_CHANNEL, 5) 0
482 #ifndef ICU_EMIOS_1_CH_5_ISR_USED
483     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
484     #define ICU_EMIOS_1_CH_5_ISR_USED    (STD_ON)
485 #endif
486 
487 #ifndef EMIOS_1_CH_5_ISR_USED
488     /** @brief Macros for indicate EMIOS interrupts used. */
489     #define EMIOS_1_CH_5_ISR_USED        (STD_ON)
490 #endif
491 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
492 
493 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
494                                        EMIOS_ICU_CHANNEL, 6) 0
495 #ifndef ICU_EMIOS_1_CH_6_ISR_USED
496     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
497     #define ICU_EMIOS_1_CH_6_ISR_USED    (STD_ON)
498 #endif
499 
500 #ifndef EMIOS_1_CH_6_ISR_USED
501     /** @brief Macros for indicate EMIOS interrupts used. */
502     #define EMIOS_1_CH_6_ISR_USED        (STD_ON)
503 #endif
504 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
505 
506 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
507                                        EMIOS_ICU_CHANNEL, 7) 0
508 #ifndef ICU_EMIOS_1_CH_7_ISR_USED
509     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
510     #define ICU_EMIOS_1_CH_7_ISR_USED    (STD_ON)
511 #endif
512 
513 #ifndef EMIOS_1_CH_7_ISR_USED
514     /** @brief Macros for indicate EMIOS interrupts used. */
515     #define EMIOS_1_CH_7_ISR_USED        (STD_ON)
516 #endif
517 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
518 
519 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
520                                        EMIOS_ICU_CHANNEL, 8) 0
521 #ifndef ICU_EMIOS_1_CH_8_ISR_USED
522     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
523     #define ICU_EMIOS_1_CH_8_ISR_USED    (STD_ON)
524 #endif
525 
526 #ifndef EMIOS_1_CH_8_ISR_USED
527     /** @brief Macros for indicate EMIOS interrupts used. */
528     #define EMIOS_1_CH_8_ISR_USED        (STD_ON)
529 #endif
530 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
531 
532 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
533                                        EMIOS_ICU_CHANNEL, 9) 0
534 #ifndef ICU_EMIOS_1_CH_9_ISR_USED
535     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
536     #define ICU_EMIOS_1_CH_9_ISR_USED    (STD_ON)
537 #endif
538 
539 #ifndef EMIOS_1_CH_9_ISR_USED
540     /** @brief Macros for indicate EMIOS interrupts used. */
541     #define EMIOS_1_CH_9_ISR_USED        (STD_ON)
542 #endif
543 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
544 
545 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
546                                        EMIOS_ICU_CHANNEL, 10) 0
547 #ifndef ICU_EMIOS_1_CH_10_ISR_USED
548     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
549     #define ICU_EMIOS_1_CH_10_ISR_USED    (STD_ON)
550 #endif
551 
552 #ifndef EMIOS_1_CH_10_ISR_USED
553     /** @brief Macros for indicate EMIOS interrupts used. */
554     #define EMIOS_1_CH_10_ISR_USED        (STD_ON)
555 #endif
556 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
557 
558 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
559                                        EMIOS_ICU_CHANNEL, 11) 0
560 #ifndef ICU_EMIOS_1_CH_11_ISR_USED
561     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
562     #define ICU_EMIOS_1_CH_11_ISR_USED    (STD_ON)
563 #endif
564 
565 #ifndef EMIOS_1_CH_11_ISR_USED
566     /** @brief Macros for indicate EMIOS interrupts used. */
567     #define EMIOS_1_CH_11_ISR_USED        (STD_ON)
568 #endif
569 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
570 
571 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
572                                        EMIOS_ICU_CHANNEL, 12) 0
573 #ifndef ICU_EMIOS_1_CH_12_ISR_USED
574     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
575     #define ICU_EMIOS_1_CH_12_ISR_USED    (STD_ON)
576 #endif
577 
578 #ifndef EMIOS_1_CH_12_ISR_USED
579     /** @brief Macros for indicate EMIOS interrupts used. */
580     #define EMIOS_1_CH_12_ISR_USED        (STD_ON)
581 #endif
582 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
583 
584 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
585                                        EMIOS_ICU_CHANNEL, 13) 0
586 #ifndef ICU_EMIOS_1_CH_13_ISR_USED
587     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
588     #define ICU_EMIOS_1_CH_13_ISR_USED    (STD_ON)
589 #endif
590 
591 #ifndef EMIOS_1_CH_13_ISR_USED
592     /** @brief Macros for indicate EMIOS interrupts used. */
593     #define EMIOS_1_CH_13_ISR_USED        (STD_ON)
594 #endif
595 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
596 
597 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
598                                        EMIOS_ICU_CHANNEL, 14) 0
599 #ifndef ICU_EMIOS_1_CH_14_ISR_USED
600     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
601     #define ICU_EMIOS_1_CH_14_ISR_USED    (STD_ON)
602 #endif
603 
604 #ifndef EMIOS_1_CH_14_ISR_USED
605     /** @brief Macros for indicate EMIOS interrupts used. */
606     #define EMIOS_1_CH_14_ISR_USED        (STD_ON)
607 #endif
608 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
609 
610 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
611                                        EMIOS_ICU_CHANNEL, 15) 0
612 #ifndef ICU_EMIOS_1_CH_15_ISR_USED
613     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
614     #define ICU_EMIOS_1_CH_15_ISR_USED    (STD_ON)
615 #endif
616 
617 #ifndef EMIOS_1_CH_15_ISR_USED
618     /** @brief Macros for indicate EMIOS interrupts used. */
619     #define EMIOS_1_CH_15_ISR_USED        (STD_ON)
620 #endif
621 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
622 
623 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
624                                        EMIOS_ICU_CHANNEL, 16) 0
625 #ifndef ICU_EMIOS_1_CH_16_ISR_USED
626     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
627     #define ICU_EMIOS_1_CH_16_ISR_USED    (STD_ON)
628 #endif
629 
630 #ifndef EMIOS_1_CH_16_ISR_USED
631     /** @brief Macros for indicate EMIOS interrupts used. */
632     #define EMIOS_1_CH_16_ISR_USED        (STD_ON)
633 #endif
634 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
635 
636 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
637                                        EMIOS_ICU_CHANNEL, 17) 0
638 #ifndef ICU_EMIOS_1_CH_17_ISR_USED
639     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
640     #define ICU_EMIOS_1_CH_17_ISR_USED    (STD_ON)
641 #endif
642 
643 #ifndef EMIOS_1_CH_17_ISR_USED
644     /** @brief Macros for indicate EMIOS interrupts used. */
645     #define EMIOS_1_CH_17_ISR_USED        (STD_ON)
646 #endif
647 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
648 
649 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
650                                        EMIOS_ICU_CHANNEL, 18) 0
651 #ifndef ICU_EMIOS_1_CH_18_ISR_USED
652     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
653     #define ICU_EMIOS_1_CH_18_ISR_USED    (STD_ON)
654 #endif
655 
656 #ifndef EMIOS_1_CH_18_ISR_USED
657     /** @brief Macros for indicate EMIOS interrupts used. */
658     #define EMIOS_1_CH_18_ISR_USED        (STD_ON)
659 #endif
660 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
661 
662 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
663                                        EMIOS_ICU_CHANNEL, 19) 0
664 #ifndef ICU_EMIOS_1_CH_19_ISR_USED
665     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
666     #define ICU_EMIOS_1_CH_19_ISR_USED    (STD_ON)
667 #endif
668 
669 #ifndef EMIOS_1_CH_19_ISR_USED
670     /** @brief Macros for indicate EMIOS interrupts used. */
671     #define EMIOS_1_CH_19_ISR_USED        (STD_ON)
672 #endif
673 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
674 
675 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
676                                        EMIOS_ICU_CHANNEL, 20) 0
677 #ifndef ICU_EMIOS_1_CH_20_ISR_USED
678     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
679     #define ICU_EMIOS_1_CH_20_ISR_USED    (STD_ON)
680 #endif
681 
682 #ifndef EMIOS_1_CH_20_ISR_USED
683     /** @brief Macros for indicate EMIOS interrupts used. */
684     #define EMIOS_1_CH_20_ISR_USED        (STD_ON)
685 #endif
686 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
687 
688 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
689                                        EMIOS_ICU_CHANNEL, 21) 0
690 #ifndef ICU_EMIOS_1_CH_21_ISR_USED
691     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
692     #define ICU_EMIOS_1_CH_21_ISR_USED    (STD_ON)
693 #endif
694 
695 #ifndef EMIOS_1_CH_21_ISR_USED
696     /** @brief Macros for indicate EMIOS interrupts used. */
697     #define EMIOS_1_CH_21_ISR_USED        (STD_ON)
698 #endif
699 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
700 
701 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
702                                        EMIOS_ICU_CHANNEL, 22) 0
703 #ifndef ICU_EMIOS_1_CH_22_ISR_USED
704     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
705     #define ICU_EMIOS_1_CH_22_ISR_USED    (STD_ON)
706 #endif
707 
708 #ifndef EMIOS_1_CH_22_ISR_USED
709     /** @brief Macros for indicate EMIOS interrupts used. */
710     #define EMIOS_1_CH_22_ISR_USED        (STD_ON)
711 #endif
712 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
713 
714 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_1_DRV_INST), \
715                                        EMIOS_ICU_CHANNEL, 23) 0
716 #ifndef ICU_EMIOS_1_CH_23_ISR_USED
717     /** @brief Macros for check EMIOS channels used by MCL. */
718     #define ICU_EMIOS_1_CH_23_ISR_USED          (STD_ON)
719 #endif
720 
721 #ifndef EMIOS_1_CH_23_ISR_USED
722     /** @brief Macros for indicate EMIOS interrupts used. */
723     #define EMIOS_1_CH_23_ISR_USED          (STD_ON)
724 #endif
725 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
726 
727 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
728                                        EMIOS_ICU_CHANNEL, 0) 0
729 #ifndef ICU_EMIOS_2_CH_0_ISR_USED
730     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
731     #define ICU_EMIOS_2_CH_0_ISR_USED    (STD_ON)
732 #endif
733 
734 #ifndef EMIOS_2_CH_0_ISR_USED
735     /** @brief Macros for indicate EMIOS interrupts used. */
736     #define EMIOS_2_CH_0_ISR_USED        (STD_ON)
737 #endif
738 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
739 
740 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
741                                        EMIOS_ICU_CHANNEL, 1) 0
742 #ifndef ICU_EMIOS_2_CH_1_ISR_USED
743     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
744     #define ICU_EMIOS_2_CH_1_ISR_USED    (STD_ON)
745 #endif
746 
747 #ifndef EMIOS_2_CH_1_ISR_USED
748     /** @brief Macros for indicate EMIOS interrupts used. */
749     #define EMIOS_2_CH_1_ISR_USED        (STD_ON)
750 #endif
751 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
752 
753 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
754                                        EMIOS_ICU_CHANNEL, 2) 0
755 #ifndef ICU_EMIOS_2_CH_2_ISR_USED
756     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
757     #define ICU_EMIOS_2_CH_2_ISR_USED    (STD_ON)
758 #endif
759 
760 #ifndef EMIOS_2_CH_2_ISR_USED
761     /** @brief Macros for indicate EMIOS interrupts used. */
762     #define EMIOS_2_CH_2_ISR_USED        (STD_ON)
763 #endif
764 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
765 
766 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
767                                        EMIOS_ICU_CHANNEL, 3) 0
768 #ifndef ICU_EMIOS_2_CH_3_ISR_USED
769     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
770     #define ICU_EMIOS_2_CH_3_ISR_USED    (STD_ON)
771 #endif
772 
773 #ifndef EMIOS_2_CH_3_ISR_USED
774     /** @brief Macros for indicate EMIOS interrupts used. */
775     #define EMIOS_2_CH_3_ISR_USED        (STD_ON)
776 #endif
777 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
778 
779 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
780                                        EMIOS_ICU_CHANNEL, 4) 0
781 #ifndef ICU_EMIOS_2_CH_4_ISR_USED
782     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
783     #define ICU_EMIOS_2_CH_4_ISR_USED    (STD_ON)
784 #endif
785 
786 #ifndef EMIOS_2_CH_4_ISR_USED
787     /** @brief Macros for indicate EMIOS interrupts used. */
788     #define EMIOS_2_CH_4_ISR_USED        (STD_ON)
789 #endif
790 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
791 
792 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
793                                        EMIOS_ICU_CHANNEL, 5) 0
794 #ifndef ICU_EMIOS_2_CH_5_ISR_USED
795     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
796     #define ICU_EMIOS_2_CH_5_ISR_USED    (STD_ON)
797 #endif
798 
799 #ifndef EMIOS_2_CH_5_ISR_USED
800     /** @brief Macros for indicate EMIOS interrupts used. */
801     #define EMIOS_2_CH_5_ISR_USED        (STD_ON)
802 #endif
803 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
804 
805 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
806                                        EMIOS_ICU_CHANNEL, 6) 0
807 #ifndef ICU_EMIOS_2_CH_6_ISR_USED
808     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
809     #define ICU_EMIOS_2_CH_6_ISR_USED    (STD_ON)
810 #endif
811 
812 #ifndef EMIOS_2_CH_6_ISR_USED
813     /** @brief Macros for indicate EMIOS interrupts used. */
814     #define EMIOS_2_CH_6_ISR_USED        (STD_ON)
815 #endif
816 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
817 
818 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
819                                        EMIOS_ICU_CHANNEL, 7) 0
820 #ifndef ICU_EMIOS_2_CH_7_ISR_USED
821     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
822     #define ICU_EMIOS_2_CH_7_ISR_USED    (STD_ON)
823 #endif
824 
825 #ifndef EMIOS_2_CH_7_ISR_USED
826     /** @brief Macros for indicate EMIOS interrupts used. */
827     #define EMIOS_2_CH_7_ISR_USED        (STD_ON)
828 #endif
829 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
830 
831 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
832                                        EMIOS_ICU_CHANNEL, 8) 0
833 #ifndef ICU_EMIOS_2_CH_8_ISR_USED
834     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
835     #define ICU_EMIOS_2_CH_8_ISR_USED    (STD_ON)
836 #endif
837 
838 #ifndef EMIOS_2_CH_8_ISR_USED
839     /** @brief Macros for indicate EMIOS interrupts used. */
840     #define EMIOS_2_CH_8_ISR_USED        (STD_ON)
841 #endif
842 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
843 
844 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
845                                        EMIOS_ICU_CHANNEL, 9) 0
846 #ifndef ICU_EMIOS_2_CH_9_ISR_USED
847     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
848     #define ICU_EMIOS_2_CH_9_ISR_USED    (STD_ON)
849 #endif
850 
851 #ifndef EMIOS_2_CH_9_ISR_USED
852     /** @brief Macros for indicate EMIOS interrupts used. */
853     #define EMIOS_2_CH_9_ISR_USED        (STD_ON)
854 #endif
855 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
856 
857 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
858                                        EMIOS_ICU_CHANNEL, 10) 0
859 #ifndef ICU_EMIOS_2_CH_10_ISR_USED
860     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
861     #define ICU_EMIOS_2_CH_10_ISR_USED    (STD_ON)
862 #endif
863 
864 #ifndef EMIOS_2_CH_10_ISR_USED
865     /** @brief Macros for indicate EMIOS interrupts used. */
866     #define EMIOS_2_CH_10_ISR_USED        (STD_ON)
867 #endif
868 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
869 
870 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
871                                        EMIOS_ICU_CHANNEL, 11) 0
872 #ifndef ICU_EMIOS_2_CH_11_ISR_USED
873     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
874     #define ICU_EMIOS_2_CH_11_ISR_USED    (STD_ON)
875 #endif
876 
877 #ifndef EMIOS_2_CH_11_ISR_USED
878     /** @brief Macros for indicate EMIOS interrupts used. */
879     #define EMIOS_2_CH_11_ISR_USED        (STD_ON)
880 #endif
881 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
882 
883 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
884                                        EMIOS_ICU_CHANNEL, 12) 0
885 #ifndef ICU_EMIOS_2_CH_12_ISR_USED
886     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
887     #define ICU_EMIOS_2_CH_12_ISR_USED    (STD_ON)
888 #endif
889 
890 #ifndef EMIOS_2_CH_12_ISR_USED
891     /** @brief Macros for indicate EMIOS interrupts used. */
892     #define EMIOS_2_CH_12_ISR_USED        (STD_ON)
893 #endif
894 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
895 
896 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
897                                        EMIOS_ICU_CHANNEL, 13) 0
898 #ifndef ICU_EMIOS_2_CH_13_ISR_USED
899     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
900     #define ICU_EMIOS_2_CH_13_ISR_USED    (STD_ON)
901 #endif
902 
903 #ifndef EMIOS_2_CH_13_ISR_USED
904     /** @brief Macros for indicate EMIOS interrupts used. */
905     #define EMIOS_2_CH_13_ISR_USED        (STD_ON)
906 #endif
907 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
908 
909 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
910                                        EMIOS_ICU_CHANNEL, 14) 0
911 #ifndef ICU_EMIOS_2_CH_14_ISR_USED
912     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
913     #define ICU_EMIOS_2_CH_14_ISR_USED    (STD_ON)
914 #endif
915 
916 #ifndef EMIOS_2_CH_14_ISR_USED
917     /** @brief Macros for indicate EMIOS interrupts used. */
918     #define EMIOS_2_CH_14_ISR_USED        (STD_ON)
919 #endif
920 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
921 
922 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
923                                        EMIOS_ICU_CHANNEL, 15) 0
924 #ifndef ICU_EMIOS_2_CH_15_ISR_USED
925     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
926     #define ICU_EMIOS_2_CH_15_ISR_USED    (STD_ON)
927 #endif
928 
929 #ifndef EMIOS_2_CH_15_ISR_USED
930     /** @brief Macros for indicate EMIOS interrupts used. */
931     #define EMIOS_2_CH_15_ISR_USED        (STD_ON)
932 #endif
933 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
934 
935 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
936                                        EMIOS_ICU_CHANNEL, 16) 0
937 #ifndef ICU_EMIOS_2_CH_16_ISR_USED
938     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
939     #define ICU_EMIOS_2_CH_16_ISR_USED    (STD_ON)
940 #endif
941 
942 #ifndef EMIOS_2_CH_16_ISR_USED
943     /** @brief Macros for indicate EMIOS interrupts used. */
944     #define EMIOS_2_CH_16_ISR_USED        (STD_ON)
945 #endif
946 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
947 
948 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
949                                        EMIOS_ICU_CHANNEL, 17) 0
950 #ifndef ICU_EMIOS_2_CH_17_ISR_USED
951     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
952     #define ICU_EMIOS_2_CH_17_ISR_USED    (STD_ON)
953 #endif
954 
955 #ifndef EMIOS_2_CH_17_ISR_USED
956     /** @brief Macros for indicate EMIOS interrupts used. */
957     #define EMIOS_2_CH_17_ISR_USED        (STD_ON)
958 #endif
959 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
960 
961 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
962                                        EMIOS_ICU_CHANNEL, 18) 0
963 #ifndef ICU_EMIOS_2_CH_18_ISR_USED
964     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
965     #define ICU_EMIOS_2_CH_18_ISR_USED    (STD_ON)
966 #endif
967 
968 #ifndef EMIOS_2_CH_18_ISR_USED
969     /** @brief Macros for indicate EMIOS interrupts used. */
970     #define EMIOS_2_CH_18_ISR_USED        (STD_ON)
971 #endif
972 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
973 
974 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
975                                        EMIOS_ICU_CHANNEL, 19) 0
976 #ifndef ICU_EMIOS_2_CH_19_ISR_USED
977     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
978     #define ICU_EMIOS_2_CH_19_ISR_USED    (STD_ON)
979 #endif
980 
981 #ifndef EMIOS_2_CH_19_ISR_USED
982     /** @brief Macros for indicate EMIOS interrupts used. */
983     #define EMIOS_2_CH_19_ISR_USED        (STD_ON)
984 #endif
985 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
986 
987 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
988                                        EMIOS_ICU_CHANNEL, 20) 0
989 #ifndef ICU_EMIOS_2_CH_20_ISR_USED
990     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
991     #define ICU_EMIOS_2_CH_20_ISR_USED    (STD_ON)
992 #endif
993 
994 #ifndef EMIOS_2_CH_20_ISR_USED
995     /** @brief Macros for indicate EMIOS interrupts used. */
996     #define EMIOS_2_CH_20_ISR_USED        (STD_ON)
997 #endif
998 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
999 
1000 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
1001                                        EMIOS_ICU_CHANNEL, 21) 0
1002 #ifndef ICU_EMIOS_2_CH_21_ISR_USED
1003     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
1004     #define ICU_EMIOS_2_CH_21_ISR_USED    (STD_ON)
1005 #endif
1006 
1007 #ifndef EMIOS_2_CH_21_ISR_USED
1008     /** @brief Macros for indicate EMIOS interrupts used. */
1009     #define EMIOS_2_CH_21_ISR_USED        (STD_ON)
1010 #endif
1011 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
1012 
1013 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
1014                                        EMIOS_ICU_CHANNEL, 22) 0
1015 #ifndef ICU_EMIOS_2_CH_22_ISR_USED
1016     /** @brief Macros for indicate EMIOS interrupts used by ICU. */
1017     #define ICU_EMIOS_2_CH_22_ISR_USED    (STD_ON)
1018 #endif
1019 
1020 #ifndef EMIOS_2_CH_22_ISR_USED
1021     /** @brief Macros for indicate EMIOS interrupts used. */
1022     #define EMIOS_2_CH_22_ISR_USED        (STD_ON)
1023 #endif
1024 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
1025 
1026 #if DT_FOREACH_CHILD_STATUS_OKAY_VARGS(EMIOS_PWM_NODE(EMIOS_2_DRV_INST), \
1027                                        EMIOS_ICU_CHANNEL, 23) 0
1028 #ifndef ICU_EMIOS_2_CH_23_ISR_USED
1029     /** @brief Macros for check EMIOS channels used by MCL. */
1030     #define ICU_EMIOS_2_CH_23_ISR_USED          (STD_ON)
1031 #endif
1032 
1033 #ifndef EMIOS_2_CH_23_ISR_USED
1034     /** @brief Macros for indicate EMIOS interrupts used. */
1035     #define EMIOS_2_CH_23_ISR_USED          (STD_ON)
1036 #endif
1037 #endif /* DT_FOREACH_CHILD_STATUS_OKAY_VARGS */
1038 
1039 #define EMIOS_ICU_CONFIG_SA_INIT_PB
1040 
1041 #endif  /* EMIOS_ICU_IP_USED */
1042 
1043 /*==================================================================================================
1044 *                                              ENUMS
1045 ==================================================================================================*/
1046 
1047 /*==================================================================================================
1048 *                                  STRUCTURES AND OTHER TYPEDEFS
1049 ==================================================================================================*/
1050 
1051 /*==================================================================================================
1052 *                                  GLOBAL VARIABLE DECLARATIONS
1053 ==================================================================================================*/
1054 
1055 /*==================================================================================================
1056 *                                       FUNCTION PROTOTYPES
1057 ==================================================================================================*/
1058 
1059 #ifdef __cplusplus
1060 }
1061 #endif
1062 
1063 /** @} */
1064 
1065 #endif /* EMIOS_ICU_IP_SA_INIT_PBCFG_H */
1066 
1067