1 /*
2  * Copyright 2020-2023 NXP
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 
7 #ifndef EMIOS_PWM_IP_IRQ_H
8 #define EMIOS_PWM_IP_IRQ_H
9 
10 /**
11 *   @file       Emios_Pwm_Ip_Irq.h
12 *
13 *   @addtogroup emios_pwm_ip Emios Pwm IPL
14 *   @{
15 */
16 
17 #ifdef __cplusplus
18 extern "C"{
19 #endif
20 
21 
22 /*==================================================================================================
23 *                                          INCLUDE FILES
24 * 1) system and project includes
25 * 2) needed interfaces from external units
26 * 3) internal and external interfaces from this unit
27 ==================================================================================================*/
28 #include "Std_Types.h"
29 
30 /*==================================================================================================
31 *                                 SOURCE FILE VERSION INFORMATION
32 ==================================================================================================*/
33 #define EMIOS_PWM_IP_IRQ_VENDOR_ID                    43
34 #define EMIOS_PWM_IP_IRQ_MODULE_ID                    121
35 #define EMIOS_PWM_IP_IRQ_AR_RELEASE_MAJOR_VERSION     4
36 #define EMIOS_PWM_IP_IRQ_AR_RELEASE_MINOR_VERSION     7
37 #define EMIOS_PWM_IP_IRQ_AR_RELEASE_REVISION_VERSION  0
38 #define EMIOS_PWM_IP_IRQ_SW_MAJOR_VERSION             3
39 #define EMIOS_PWM_IP_IRQ_SW_MINOR_VERSION             0
40 #define EMIOS_PWM_IP_IRQ_SW_PATCH_VERSION             0
41 
42 /*==================================================================================================
43 *                                       FILE VERSION CHECKS
44 ==================================================================================================*/
45 #ifndef DISABLE_MCAL_INTERMODULE_ASR_CHECK
46     /* Check if header file and Std_Types.h are of the same AUTOSAR version */
47     #if ((EMIOS_PWM_IP_IRQ_AR_RELEASE_MAJOR_VERSION != STD_AR_RELEASE_MAJOR_VERSION) || \
48          (EMIOS_PWM_IP_IRQ_AR_RELEASE_MINOR_VERSION != STD_AR_RELEASE_MINOR_VERSION))
49         #error "AUTOSAR Version Numbers of Emios_Pwm_Ip_Irq.h and Std_Types.h are different"
50     #endif
51 #endif
52 
53 /*==================================================================================================
54 *                                            CONSTANTS
55 ==================================================================================================*/
56 
57 /*==================================================================================================
58 *                                       DEFINES AND MACROS
59 ==================================================================================================*/
60 
61 /*==================================================================================================
62 *                                              ENUMS
63 ==================================================================================================*/
64 
65 /*==================================================================================================
66 *                                  STRUCTURES AND OTHER TYPEDEFS
67 ==================================================================================================*/
68 
69 /*==================================================================================================
70 *                                  GLOBAL VARIABLE DECLARATIONS
71 ==================================================================================================*/
72 
73 /*==================================================================================================
74 *                                       FUNCTION PROTOTYPES
75 ==================================================================================================*/
76 #define PWM_START_SEC_CODE
77 #include "Pwm_MemMap.h"
78 
79 /**
80 * @brief          Interrupt handler for Emios Pwm channels.
81 * @details        Interrupt handler that clears the flags and calls the user notification function.
82 *
83 * @param[in]      instance    Emios instance id on which the interrupt occured.
84 * @param[in]      channel     Channell id within the emios instance that triggered the interrupt.
85 */
86 void Emios_Pwm_Ip_IrqHandler(uint8 Instance, uint8 Channel);
87 
88 #define PWM_STOP_SEC_CODE
89 #include "Pwm_MemMap.h"
90 
91 
92 #ifdef __cplusplus
93 }
94 #endif
95 
96 /** @} */
97 
98 #endif /* EMIOS_PWM_IP_IRQ_H */
99