1 /*
2  * Copyright 2020-2023 NXP
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 
7 /* Prevention from multiple including the same header */
8 #ifndef LCU_IP_CFG_DEFINES_H_
9 #define LCU_IP_CFG_DEFINES_H_
10 
11 #include "StandardTypes.h"
12 #include "PlatformTypes.h"
13 
14 /*==================================================================================================
15                                SOURCE FILE VERSION INFORMATION
16 ==================================================================================================*/
17 #define LCU_IP_CFG_DEFINES_VENDOR_ID                       43
18 #define LCU_IP_CFG_DEFINES_AR_RELEASE_MAJOR_VERSION        4
19 #define LCU_IP_CFG_DEFINES_AR_RELEASE_MINOR_VERSION        7
20 #define LCU_IP_CFG_DEFINES_AR_RELEASE_REVISION_VERSION     0
21 #define LCU_IP_CFG_DEFINES_SW_MAJOR_VERSION                3
22 #define LCU_IP_CFG_DEFINES_SW_MINOR_VERSION                0
23 #define LCU_IP_CFG_DEFINES_SW_PATCH_VERSION                0
24 
25 /*==================================================================================================
26                                       FILE VERSION CHECKS
27 ==================================================================================================*/
28 #ifndef DISABLE_MCAL_INTERMODULE_ASR_CHECK
29 /* Check if header file and StandardTypes header file are of the same Autosar version */
30 #if ((LCU_IP_CFG_DEFINES_AR_RELEASE_MAJOR_VERSION != STD_AR_RELEASE_MAJOR_VERSION) || \
31      (LCU_IP_CFG_DEFINES_AR_RELEASE_MINOR_VERSION != STD_AR_RELEASE_MINOR_VERSION))
32     #error "AutoSar Version Numbers of Lcu_Ip_Cfg_Defines.h and StandardTypes.h are different"
33 #endif
34 
35 /* Check if header file and PlatformTypes header file are of the same Autosar version */
36 #if ((LCU_IP_CFG_DEFINES_AR_RELEASE_MAJOR_VERSION != PLATFORM_TYPES_AR_RELEASE_MAJOR_VERSION) || \
37      (LCU_IP_CFG_DEFINES_AR_RELEASE_MINOR_VERSION != PLATFORM_TYPES_AR_RELEASE_MINOR_VERSION))
38     #error "AutoSar Version Numbers of Lcu_Ip_Cfg_Defines.h and PlatformTypes.h are different"
39 #endif
40 #endif
41 
42 /*===============================================================================================
43                                        DEFINES AND MACROS
44 ===============================================================================================*/
45 
46 /* LCU Available */
47 #define LCU_IP_IS_AVAILABLE                      STD_ON
48 
49 /* SYNC Functions Available */
50 #define LCU_IP_SYNC_FUNC_IS_AVAILABLE            STD_ON
51 
52 /* SYNC Functions Available */
53 #define LCU_IP_ASYNC_FUNC_IS_AVAILABLE           STD_OFF
54 
55 /* Support DEV ERROR DETECT */
56 #define LCU_IP_DEV_ERROR_DETECT                  STD_OFF
57 
58 /* LCU multi cores */
59 #define LCU_IP_MULTICORE_IS_AVAILABLE            STD_OFF
60 
61 
62 /*-------------------------------------------------------------------/
63 /                       LCU HARDWARE INSTANCES                       /
64 /-------------------------------------------------------------------*/
65 #define LCU_IP_HW_INST_0                         ((uint8)(0U))
66 #define LCU_IP_HW_INST_1                         ((uint8)(1U))
67 
68 /*-------------------------------------------------------------------/
69 /                       LCU OPERATION MODE                          /
70 /-------------------------------------------------------------------*/
71 #define LCU_IP_INTERRUPT_MODE                    ((uint8)(0U))
72 #define LCU_IP_POLLING_MODE                      ((uint8)(1U))
73 
74 /*-------------------------------------------------------------------/
75 /                       LCU HARDWARE LOGIC CELLS                     /
76 /-------------------------------------------------------------------*/
77 #define LCU_IP_HW_LC_0                           ((uint8)(0U))
78 #define LCU_IP_HW_LC_1                           ((uint8)(1U))
79 #define LCU_IP_HW_LC_2                           ((uint8)(2U))
80 
81 /*-------------------------------------------------------------------/
82 /                       LCU SOFTWARE OVERRIDE VALUE                  /
83 /-------------------------------------------------------------------*/
84 #define LCU_IP_SW_OVERRIDE_LOGIC_LOW             ((uint8)(0U))
85 #define LCU_IP_SW_OVERRIDE_LOGIC_HIGH            ((uint8)(1U))
86 
87 /*-------------------------------------------------------------------/
88 /                       LCU SOFTWARE SYNC MODE                       /
89 /-------------------------------------------------------------------*/
90 #define LCU_IP_SW_SYNC_IMMEDIATE                 ((boolean)(FALSE))
91 #define LCU_IP_SW_SYNC_ON_RISING_EDGE            ((boolean)(TRUE))
92 
93 /*-------------------------------------------------------------------/
94 /                       LCU INTERRUPT/DMA                            /
95 /-------------------------------------------------------------------*/
96 #define LCU_IP_DMA_DISABLE                       ((uint8)(0U))
97 #define LCU_IP_DMA_ENABLE                        ((uint8)(1U))
98 #define LCU_IP_INT_DISABLE                       ((uint8)(0U))
99 #define LCU_IP_INT_ENABLE                        ((uint8)(1U))
100 
101 /*-------------------------------------------------------------------/
102 /                       LCU OUTPUT POLARITY                          /
103 /-------------------------------------------------------------------*/
104 #define LCU_IP_OUTPOL_NOT_INVERTED               ((uint8)(0U))
105 #define LCU_IP_OUTPOL_INVERTED                   ((uint8)(1U))
106 
107 /*-------------------------------------------------------------------/
108 /                       LCU FORCE OUTPUT POLARITY                    /
109 /-------------------------------------------------------------------*/
110 #define LCU_IP_FORCE_POL_NOT_INVERTED            ((uint8)(0U))
111 #define LCU_IP_FORCE_POL_INVERTED                ((uint8)(1U))
112 
113 /*-------------------------------------------------------------------/
114 /                       LCU FORCE SENSITIVITY                        /
115 /-------------------------------------------------------------------*/
116 #define LCU_IP_FORCE_SENSE_NOT_AFFECT            ((uint8)(0U))
117 #define LCU_IP_FORCE_SENSE_AFFECT                ((uint8)(1U))
118 
119 /*-------------------------------------------------------------------/
120 /                       LCU SW SYNC_SEL                              /
121 /-------------------------------------------------------------------*/
122 #define LCU_IP_SW_SYNC_SEL_INPUT0                ((uint8)(0U))
123 #define LCU_IP_SW_SYNC_SEL_INPUT1                ((uint8)(1U))
124 #define LCU_IP_SW_SYNC_SEL_INPUT2                ((uint8)(2U))
125 #define LCU_IP_SW_SYNC_SEL_INPUT3                ((uint8)(3U))
126 
127 /*-------------------------------------------------------------------/
128 /                  LCU SOFTWARE OVERRIDE ENABLE/DISABLE              /
129 /-------------------------------------------------------------------*/
130 #define LCU_IP_SW_OVERRIDE_DISABLE               ((uint8)(0U))
131 #define LCU_IP_SW_OVERRIDE_ENABLE                ((uint8)(1U))
132 
133 /*-------------------------------------------------------------------/
134 /                       LCU OUTPUT ENABLE/DISABLE                    /
135 /-------------------------------------------------------------------*/
136 #define LCU_IP_OUTPUT_DISABLE                    ((uint8)(0U))
137 #define LCU_IP_OUTPUT_ENABLE                     ((uint8)(1U))
138 
139 /*-------------------------------------------------------------------/
140 /                       LCU DEBUG MODE ENABLE/DISABLE                /
141 /-------------------------------------------------------------------*/
142 #define LCU_IP_DEBUG_DISABLE                     ((boolean)(FALSE))
143 #define LCU_IP_DEBUG_ENABLE                      ((boolean)(TRUE))
144 
145 /*-------------------------------------------------------------------/
146 /                       LCU SOURCE MUX SELECT                        /
147 /-------------------------------------------------------------------*/
148 #define LCU_IP_MUX_SEL_LOGIC_0                   ((uint8)(0U))
149 #define LCU_IP_MUX_SEL_LU_IN_0                   ((uint8)(1U))
150 #define LCU_IP_MUX_SEL_LU_IN_1                   ((uint8)(2U))
151 #define LCU_IP_MUX_SEL_LU_IN_2                   ((uint8)(3U))
152 #define LCU_IP_MUX_SEL_LU_IN_3                   ((uint8)(4U))
153 #define LCU_IP_MUX_SEL_LU_IN_4                   ((uint8)(5U))
154 #define LCU_IP_MUX_SEL_LU_IN_5                   ((uint8)(6U))
155 #define LCU_IP_MUX_SEL_LU_IN_6                   ((uint8)(7U))
156 #define LCU_IP_MUX_SEL_LU_IN_7                   ((uint8)(8U))
157 #define LCU_IP_MUX_SEL_LU_IN_8                   ((uint8)(9U))
158 #define LCU_IP_MUX_SEL_LU_IN_9                   ((uint8)(10U))
159 #define LCU_IP_MUX_SEL_LU_IN_10                  ((uint8)(11U))
160 #define LCU_IP_MUX_SEL_LU_IN_11                  ((uint8)(12U))
161 #define LCU_IP_MUX_SEL_LU_OUT_0                  ((uint8)(13U))
162 #define LCU_IP_MUX_SEL_LU_OUT_1                  ((uint8)(14U))
163 #define LCU_IP_MUX_SEL_LU_OUT_2                  ((uint8)(15U))
164 #define LCU_IP_MUX_SEL_LU_OUT_3                  ((uint8)(16U))
165 #define LCU_IP_MUX_SEL_LU_OUT_4                  ((uint8)(17U))
166 #define LCU_IP_MUX_SEL_LU_OUT_5                  ((uint8)(18U))
167 #define LCU_IP_MUX_SEL_LU_OUT_6                  ((uint8)(19U))
168 #define LCU_IP_MUX_SEL_LU_OUT_7                  ((uint8)(20U))
169 #define LCU_IP_MUX_SEL_LU_OUT_8                  ((uint8)(21U))
170 #define LCU_IP_MUX_SEL_LU_OUT_9                  ((uint8)(22U))
171 #define LCU_IP_MUX_SEL_LU_OUT_10                 ((uint8)(23U))
172 #define LCU_IP_MUX_SEL_LU_OUT_11                 ((uint8)(24U))
173 
174 /*-------------------------------------------------------------------/
175 /                       LCU SYNC_SEL                                 /
176 /-------------------------------------------------------------------*/
177 #define LCU_IP_SYNC_SEL_INPUT0                   ((uint8)(0U))
178 #define LCU_IP_SYNC_SEL_INPUT1                   ((uint8)(1U))
179 #define LCU_IP_SYNC_SEL_INPUT2                   ((uint8)(2U))
180 #define LCU_IP_SYNC_SEL_INPUT3                   ((uint8)(3U))
181 
182 /*-------------------------------------------------------------------/
183 /                       LCU FORCE_SEL                                /
184 /-------------------------------------------------------------------*/
185 #define LCU_IP_FORCE_SEL_INPUT0                  ((uint8)(0U))
186 #define LCU_IP_FORCE_SEL_INPUT1                  ((uint8)(1U))
187 #define LCU_IP_FORCE_SEL_INPUT2                  ((uint8)(2U))
188 #define LCU_IP_FORCE_SEL_INPUT3                  ((uint8)(3U))
189 
190 /*-------------------------------------------------------------------/
191 /                       LCU CLEAR FORCE SIGNAL MODE                  /
192 /-------------------------------------------------------------------*/
193 #define LCU_IP_CLEAR_FORCE_SIGNAL_IMMEDIATE                             ((uint8)(0U))
194 #define LCU_IP_CLEAR_FORCE_SIGNAL_ON_RISING_EDGE                        ((uint8)(1U))
195 #define LCU_IP_CLEAR_FORCE_SIGNAL_AFTER_CLEAR_STATUS                    ((uint8)(2U))
196 #define LCU_IP_CLEAR_FORCE_SIGNAL_ON_RISING_EDGE_AFTER_CLEAR_STATUS     ((uint8)(3U))
197 
198 #endif  /* #ifndef LCU_IP_CFG_DEFINES_H_ */
199 
200 /*==================================================================================================
201  *                                        END OF FILE
202 ==================================================================================================*/
203