1 /*
2  * Copyright 2021-2022 NXP
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 
7 /**
8 *   @file
9 *
10 *   @addtogroup Swt
11 *   @{
12 */
13 
14 #ifdef __cplusplus
15 extern "C"{
16 #endif
17 
18 /*==================================================================================================
19 *                                        INCLUDE FILES
20 * 1) system and project includes
21 * 2) needed interfaces from external units
22 * 3) internal and external interfaces from this unit
23 ==================================================================================================*/
24 
25 #include "Swt_Ip_Irq.h"
26 
27 /*==================================================================================================
28 *                                 SOURCE FILE VERSION INFORMATION
29 ==================================================================================================*/
30 #define SWT_IP_IRQ_VENDOR_ID_C                      43
31 #define SWT_IP_IRQ_AR_RELEASE_MAJOR_VERSION_C       4
32 #define SWT_IP_IRQ_AR_RELEASE_MINOR_VERSION_C       7
33 #define SWT_IP_IRQ_AR_RELEASE_REVISION_VERSION_C    0
34 #define SWT_IP_IRQ_SW_MAJOR_VERSION_C               0
35 #define SWT_IP_IRQ_SW_MINOR_VERSION_C               9
36 #define SWT_IP_IRQ_SW_PATCH_VERSION_C               0
37 
38 /*==================================================================================================
39 *                                       FILE VERSION CHECKS
40 ==================================================================================================*/
41 
42 /* Check if current file and Swt_Ip_Irq configuration header file are of the same vendor */
43 #if (SWT_IP_IRQ_VENDOR_ID_C != SWT_IP_IRQ_VENDOR_ID)
44 #error "Swt_Ip_Irq.c and Swt_Ip_Irq.h have different vendor ids"
45 #endif
46 
47 #if ((SWT_IP_IRQ_AR_RELEASE_MAJOR_VERSION_C    != SWT_IP_IRQ_AR_RELEASE_MAJOR_VERSION) || \
48      (SWT_IP_IRQ_AR_RELEASE_MINOR_VERSION_C    != SWT_IP_IRQ_AR_RELEASE_MINOR_VERSION) || \
49      (SWT_IP_IRQ_AR_RELEASE_REVISION_VERSION_C != SWT_IP_IRQ_AR_RELEASE_REVISION_VERSION))
50 #error "AutoSar Version Numbers of Swt_Ip_Irq.c and Swt_Ip_Irq.h are different"
51 #endif
52 
53 #if ((SWT_IP_IRQ_SW_MAJOR_VERSION_C != SWT_IP_IRQ_SW_MAJOR_VERSION) || \
54      (SWT_IP_IRQ_SW_MINOR_VERSION_C != SWT_IP_IRQ_SW_MINOR_VERSION) || \
55      (SWT_IP_IRQ_SW_PATCH_VERSION_C != SWT_IP_IRQ_SW_PATCH_VERSION))
56 #error "Software Version Numbers of Swt_Ip_Irq.c and Swt_Ip_Irq.h are different"
57 #endif
58 
59 /*==================================================================================================
60 *                          LOCAL TYPEDEFS (STRUCTURES, UNIONS, ENUMS)
61 ==================================================================================================*/
62 
63 /*==================================================================================================
64 *                                       LOCAL MACROS
65 ==================================================================================================*/
66 
67 /*==================================================================================================
68 *                                      LOCAL CONSTANTS
69 ==================================================================================================*/
70 
71 /*==================================================================================================
72 *                                      LOCAL VARIABLES
73 ==================================================================================================*/
74 
75 /*==================================================================================================
76 *                                      GLOBAL CONSTANTS
77 ==================================================================================================*/
78 
79 /*==================================================================================================
80 *                                      GLOBAL VARIABLES
81 ==================================================================================================*/
82 
83 /*==================================================================================================
84 *                                   LOCAL FUNCTION PROTOTYPES
85 ==================================================================================================*/
86 
87 
88 /*==================================================================================================
89 *                                       LOCAL FUNCTIONS
90 ==================================================================================================*/
91 
92 /*==================================================================================================
93 *                                 GLOBAL FUNCTIONS PROTOTYPES
94 ==================================================================================================*/
95 
96 /*==================================================================================================
97 *                                       GLOBAL FUNCTIONS
98 ==================================================================================================*/
99 
100 #ifdef WDG_ROM
101     #if (WDG_ROM == 1U)
102         #define WDG_START_SEC_CODE
103     #endif
104 #else
105     #if (WDG_RAM == 0U)
106         #define WDG_START_SEC_RAMCODE
107     #endif
108 #endif
109 
110 #include "Wdg_MemMap.h"
111 
112 
113 /**
114 * @brief   Swt handler for initial timeout interrupt.
115 * @details This function implements the ISR occurring on the first SWT timeout.
116 *
117 * @isr
118 *
119 */
120 #ifdef SWT_IP_ISR0_USED
121 #if (SWT_IP_ISR0_USED == STD_ON)
ISR(Swt_Ip_Swt0_Isr)122     ISR(Swt_Ip_Swt0_Isr)
123     {
124         /* Call handler function */
125         Swt_Ip_IrqHandler(0U);
126     }
127 #endif
128 #endif
129 
130 #ifdef SWT_IP_ISR1_USED
131 #if (SWT_IP_ISR1_USED == STD_ON)
ISR(Swt_Ip_Swt1_Isr)132     ISR(Swt_Ip_Swt1_Isr)
133     {
134         /* Call handler function */
135         Swt_Ip_IrqHandler(1U);
136     }
137 #endif
138 #endif
139 
140 #ifdef SWT_IP_ISR2_USED
141 #if (SWT_IP_ISR2_USED == STD_ON)
ISR(Swt_Ip_Swt2_Isr)142     ISR(Swt_Ip_Swt2_Isr)
143     {
144         /* Call handler function */
145         Swt_Ip_IrqHandler(2U);
146     }
147 #endif
148 #endif
149 
150 #ifdef SWT_IP_ISR3_USED
151 #if (SWT_IP_ISR3_USED == STD_ON)
ISR(Swt_Ip_Swt3_Isr)152     ISR(Swt_Ip_Swt3_Isr)
153     {
154         /* Call handler function */
155         Swt_Ip_IrqHandler(3U);
156     }
157 #endif
158 #endif
159 
160 #ifdef SWT_IP_ISR4_USED
161 #if (SWT_IP_ISR4_USED == STD_ON)
ISR(Swt_Ip_Swt4_Isr)162     ISR(Swt_Ip_Swt4_Isr)
163     {
164         /* Call handler function */
165         Swt_Ip_IrqHandler(4U);
166     }
167 #endif
168 #endif
169 
170 #ifdef SWT_IP_ISR5_USED
171 #if (SWT_IP_ISR5_USED == STD_ON)
ISR(Swt_Ip_Swt5_Isr)172     ISR(Swt_Ip_Swt5_Isr)
173     {
174         /* Call handler function */
175         Swt_Ip_IrqHandler(5U);
176     }
177 #endif
178 #endif
179 
180 #ifdef SWT_IP_ISR6_USED
181 #if (SWT_IP_ISR6_USED == STD_ON)
ISR(Swt_Ip_Swt6_Isr)182     ISR(Swt_Ip_Swt6_Isr)
183     {
184         /* Call handler function */
185         Swt_Ip_IrqHandler(6U);
186     }
187 #endif
188 #endif
189 
190 #ifdef SWT_IP_ISR7_USED
191 #if (SWT_IP_ISR7_USED == STD_ON)
ISR(Swt_Ip_Swt7_Isr)192     ISR(Swt_Ip_Swt7_Isr)
193     {
194         /* Call handler function */
195         Swt_Ip_IrqHandler(7U);
196     }
197 #endif
198 #endif
199 
200 #ifdef SWT_IP_ISR8_USED
201 #if (SWT_IP_ISR8_USED == STD_ON)
ISR(Swt_Ip_Swt8_Isr)202     ISR(Swt_Ip_Swt8_Isr)
203     {
204         /* Call handler function */
205         Swt_Ip_IrqHandler(8U);
206     }
207 #endif
208 #endif
209 
210 #ifdef SWT_IP_ISR9_USED
211 #if (SWT_IP_ISR9_USED == STD_ON)
ISR(Swt_Ip_Swt9_Isr)212     ISR(Swt_Ip_Swt9_Isr)
213     {
214         /* Call handler function */
215         Swt_Ip_IrqHandler(9U);
216     }
217 #endif
218 #endif
219 
220 #ifdef SWT_IP_ISR10_USED
221 #if (SWT_IP_ISR10_USED == STD_ON)
ISR(Swt_Ip_Swt10_Isr)222     ISR(Swt_Ip_Swt10_Isr)
223     {
224         /* Call handler function */
225         Swt_Ip_IrqHandler(10U);
226     }
227 #endif
228 #endif
229 
230 #ifdef SWT_IP_ISR11_USED
231 #if (SWT_IP_ISR11_USED == STD_ON)
ISR(Swt_Ip_Swt11_Isr)232     ISR(Swt_Ip_Swt11_Isr)
233     {
234         /* Call handler function */
235         Swt_Ip_IrqHandler(11U);
236     }
237 #endif
238 #endif
239 
240 #ifdef SWT_IP_ISR12_USED
241 #if (SWT_IP_ISR12_USED == STD_ON)
ISR(Swt_Ip_Swt12_Isr)242     ISR(Swt_Ip_Swt12_Isr)
243     {
244         /* Call handler function */
245         Swt_Ip_IrqHandler(12U);
246     }
247 #endif
248 #endif
249 
250 #ifdef WDG_ROM
251     #if (WDG_ROM == 1U)
252         #define WDG_STOP_SEC_CODE
253     #endif
254 #else
255     #if (WDG_RAM == 0U)
256         #define WDG_STOP_SEC_RAMCODE
257     #endif
258 #endif
259 
260 #include "Wdg_MemMap.h"
261 
262 #ifdef __cplusplus
263 }
264 #endif
265 
266 /** @} */
267