Fix for x86_64 build fail
[platform/upstream/connectedhomeip.git] / examples / platform / efr32 / efr32mg21 / BRD4180A / hal-config.h
1 /*
2  *
3  *    Copyright (c) 2020 Project CHIP Authors
4  *    All rights reserved.
5  *
6  *    Licensed under the Apache License, Version 2.0 (the "License");
7  *    you may not use this file except in compliance with the License.
8  *    You may obtain a copy of the License at
9  *
10  *        http://www.apache.org/licenses/LICENSE-2.0
11  *
12  *    Unless required by applicable law or agreed to in writing, software
13  *    distributed under the License is distributed on an "AS IS" BASIS,
14  *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  *    See the License for the specific language governing permissions and
16  *    limitations under the License.
17  */
18 /*******************************************************************************
19  * @file
20  * @brief hal-config.h
21  *******************************************************************************
22  * # License
23  * <b>Copyright 2018 Silicon Laboratories Inc. www.silabs.com</b>
24  *******************************************************************************
25  *
26  * The licensor of this software is Silicon Laboratories Inc. Your use of this
27  * software is governed by the terms of Silicon Labs Master Software License
28  * Agreement (MSLA) available at
29  * www.silabs.com/about-us/legal/master-software-license-agreement. This
30  * software is distributed to you in Source Code format and is governed by the
31  * sections of the MSLA applicable to Source Code.
32  *
33  ******************************************************************************/
34
35 #pragma once
36
37 #include "board_features.h"
38 #include "em_device.h"
39 #include "hal-config-app-common.h"
40 #include "hal-config-types.h"
41
42 #ifndef HAL_VCOM_ENABLE
43 #define HAL_VCOM_ENABLE (1)
44 #endif
45 #ifndef HAL_I2CSENSOR_ENABLE
46 #define HAL_I2CSENSOR_ENABLE (0)
47 #endif
48
49 #ifndef HAL_SPIDISPLAY_ENABLE
50 #define HAL_SPIDISPLAY_ENABLE (1)
51 #endif
52 #define HAL_SPIDISPLAY_EXTCOMIN_CALLBACK
53 #if defined(FEATURE_IOEXPANDER)
54 #define HAL_SPIDISPLAY_EXTMODE_EXTCOMIN (0)
55 #else
56 #define HAL_SPIDISPLAY_EXTMODE_EXTCOMIN (1)
57 #endif
58 #define HAL_SPIDISPLAY_EXTMODE_SPI (0)
59 #define HAL_SPIDISPLAY_EXTCOMIN_USE_PRS (0)
60 #define HAL_SPIDISPLAY_EXTCOMIN_USE_CALLBACK (0)
61 #define HAL_SPIDISPLAY_FREQUENCY (1000000)
62
63 // $[CMU]
64 #define HAL_CLK_HFCLK_SOURCE (HAL_CLK_HFCLK_SOURCE_HFXO)
65 #define HAL_CLK_EM4CLK_SOURCE (HAL_CLK_LFCLK_SOURCE_LFRCO)
66 #define HAL_CLK_EM23CLK_SOURCE (HAL_CLK_LFCLK_SOURCE_LFRCO)
67 #define HAL_CLK_RTCCCLK_SOURCE (HAL_CLK_LFCLK_SOURCE_LFRCO)
68
69 // $[SERIAL]
70 #define HAL_SERIAL_USART0_ENABLE (0)
71 #define HAL_SERIAL_LEUART0_ENABLE (0)
72 #define HAL_SERIAL_USART1_ENABLE (0)
73 #define HAL_SERIAL_USART2_ENABLE (0)
74 #define HAL_SERIAL_USART3_ENABLE (0)
75 #define HAL_SERIAL_RXWAKE_ENABLE (0)
76 #define HAL_SERIAL_APP_RX_QUEUE_SIZE (128UL)
77 #define HAL_SERIAL_APP_BAUD_RATE (115200UL)
78 #define HAL_SERIAL_APP_RXSTOP (16UL)
79 #define HAL_SERIAL_APP_RXSTART (16UL)
80 #define HAL_SERIAL_APP_TX_QUEUE_SIZE (128UL)
81 #define HAL_SERIAL_APP_FLOW_CONTROL (HAL_USART_FLOW_CONTROL_HWUART)
82
83 // $[USART0]
84 #define HAL_USART0_ENABLE (1)
85 #define HAL_USART0_RX_QUEUE_SIZE (128UL)
86 #define HAL_USART0_BAUD_RATE (115200UL)
87 #define HAL_USART0_RXSTOP (16UL)
88 #define HAL_USART0_RXSTART (16UL)
89 #define HAL_USART0_TX_QUEUE_SIZE (128UL)
90 #define HAL_USART0_FLOW_CONTROL (HAL_USART_FLOW_CONTROL_HWUART)
91
92 // $[BTL_BUTTON]
93
94 #define BSP_BTL_BUTTON_PIN (2U)
95 #define BSP_BTL_BUTTON_PORT (gpioPortD)
96
97 // [BTL_BUTTON]$
98
99 // $[BUTTON]
100 #define BSP_BUTTON_PRESENT (1)
101
102 #define BSP_BUTTON0_PIN (2U)
103 #define BSP_BUTTON0_PORT (gpioPortD)
104
105 #define BSP_BUTTON1_PIN (3U)
106 #define BSP_BUTTON1_PORT (gpioPortD)
107
108 #define BSP_BUTTON_COUNT (2U)
109 #define BSP_BUTTON_INIT                                                                                                            \
110     {                                                                                                                              \
111         { BSP_BUTTON0_PORT, BSP_BUTTON0_PIN }, { BSP_BUTTON1_PORT, BSP_BUTTON1_PIN }                                               \
112     }
113 #define BSP_BUTTON_GPIO_DOUT (HAL_GPIO_DOUT_LOW)
114 #define BSP_BUTTON_GPIO_MODE (HAL_GPIO_MODE_INPUT)
115 // [BUTTON]$
116
117 // $[CMU]
118 #define BSP_CLK_HFXO_PRESENT (1)
119 #define BSP_CLK_HFXO_FREQ (38400000UL)
120 #define BSP_CLK_HFXO_INIT CMU_HFXOINIT_DEFAULT
121 #define BSP_CLK_HFXO_CTUNE (129)
122 #define BSP_CLK_LFXO_PRESENT (1)
123 #define BSP_CLK_LFXO_INIT CMU_LFXOINIT_DEFAULT
124 #define BSP_CLK_LFXO_FREQ (32768U)
125 #define BSP_CLK_LFXO_CTUNE (79U)
126 // [CMU]$
127
128 // $[GPIO]
129 #define PORTIO_GPIO_SWV_PIN (3U)
130 #define PORTIO_GPIO_SWV_PORT (gpioPortA)
131
132 #define BSP_TRACE_SWO_PIN (3U)
133 #define BSP_TRACE_SWO_PORT (gpioPortA)
134
135 // [GPIO]$
136
137 // $[LED]
138 #define BSP_LED_PRESENT (1)
139
140 #define BSP_LED0_PIN (0U)
141 #define BSP_LED0_PORT (gpioPortB)
142
143 #define BSP_LED1_PIN (1U)
144 #define BSP_LED1_PORT (gpioPortB)
145
146 #define BSP_LED_COUNT (2U)
147 #define BSP_LED_INIT                                                                                                               \
148     {                                                                                                                              \
149         { BSP_LED0_PORT, BSP_LED0_PIN }, { BSP_LED1_PORT, BSP_LED1_PIN }                                                           \
150     }
151 #define BSP_LED_POLARITY (1)
152 // [LED]$
153
154 // $[PA]
155
156 #define BSP_PA_VOLTAGE (3300U)
157 // [PA]$
158
159 // $[PRS]
160 #define PORTIO_PRS_ASYNCH4_PIN (0U)
161 #define PORTIO_PRS_ASYNCH4_PORT (gpioPortA)
162
163 // [PRS]$
164
165 // $[PTI]
166 #define PORTIO_PTI_DFRAME_PIN (5U)
167 #define PORTIO_PTI_DFRAME_PORT (gpioPortC)
168
169 #define PORTIO_PTI_DOUT_PIN (4U)
170 #define PORTIO_PTI_DOUT_PORT (gpioPortC)
171
172 #define BSP_PTI_DFRAME_PIN (5U)
173 #define BSP_PTI_DFRAME_PORT (gpioPortC)
174
175 #define BSP_PTI_DOUT_PIN (4U)
176 #define BSP_PTI_DOUT_PORT (gpioPortC)
177
178 // [PTI]$
179
180 // $[SERIAL]
181 #define BSP_SERIAL_APP_TX_PIN (5U)
182 #define BSP_SERIAL_APP_TX_PORT (gpioPortA)
183
184 #define BSP_SERIAL_APP_RX_PIN (6U)
185 #define BSP_SERIAL_APP_RX_PORT (gpioPortA)
186
187 #define BSP_SERIAL_APP_CTS_PIN (4U)
188 #define BSP_SERIAL_APP_CTS_PORT (gpioPortA)
189
190 #define BSP_SERIAL_APP_RTS_PIN (1U)
191 #define BSP_SERIAL_APP_RTS_PORT (gpioPortC)
192
193 // [SERIAL]$
194
195 // $[SPIDISPLAY]
196
197 #define BSP_SPIDISPLAY_CS_PIN (3U)
198 #define BSP_SPIDISPLAY_CS_PORT (gpioPortC)
199
200 #define BSP_SPIDISPLAY_ENABLE_PIN (4U)
201 #define BSP_SPIDISPLAY_ENABLE_PORT (gpioPortD)
202
203 #define BSP_SPIDISPLAY_EXTCOMIN_PIN (0U)
204 #define BSP_SPIDISPLAY_EXTCOMIN_PORT (gpioPortA)
205
206 #define BSP_SPIDISPLAY_DISPLAY (HAL_DISPLAY_SHARP_LS013B7DH03)
207 #define BSP_SPIDISPLAY_USART (HAL_SPI_PORT_USART2)
208 #define BSP_SPIDISPLAY_EXTCOMIN_CHANNEL (4)
209 #define BSP_SPIDISPLAY_MOSI_PIN (0U)
210 #define BSP_SPIDISPLAY_MOSI_PORT (gpioPortC)
211
212 #define BSP_SPIDISPLAY_MISO_PIN (1U)
213 #define BSP_SPIDISPLAY_MISO_PORT (gpioPortC)
214
215 #define BSP_SPIDISPLAY_CLK_PIN (2U)
216 #define BSP_SPIDISPLAY_CLK_PORT (gpioPortC)
217
218 // [SPIDISPLAY]$
219
220 // $[SPINCP]
221 #define BSP_SPINCP_NHOSTINT_PIN (2U)
222 #define BSP_SPINCP_NHOSTINT_PORT (gpioPortD)
223
224 #define BSP_SPINCP_NWAKE_PIN (3U)
225 #define BSP_SPINCP_NWAKE_PORT (gpioPortD)
226
227 #define BSP_SPINCP_USART_PORT (HAL_SPI_PORT_USART2)
228 #define BSP_SPINCP_MOSI_PIN (0U)
229 #define BSP_SPINCP_MOSI_PORT (gpioPortC)
230
231 #define BSP_SPINCP_MISO_PIN (1U)
232 #define BSP_SPINCP_MISO_PORT (gpioPortC)
233
234 #define BSP_SPINCP_CLK_PIN (2U)
235 #define BSP_SPINCP_CLK_PORT (gpioPortC)
236
237 #define BSP_SPINCP_CS_PIN (3U)
238 #define BSP_SPINCP_CS_PORT (gpioPortC)
239
240 // [SPINCP]$
241
242 // $[UARTNCP]
243 #define BSP_UARTNCP_USART_PORT (HAL_SERIAL_PORT_USART0)
244 #define BSP_UARTNCP_TX_PIN (5U)
245 #define BSP_UARTNCP_TX_PORT (gpioPortA)
246
247 #define BSP_UARTNCP_RX_PIN (6U)
248 #define BSP_UARTNCP_RX_PORT (gpioPortA)
249
250 #define BSP_UARTNCP_CTS_PIN (4U)
251 #define BSP_UARTNCP_CTS_PORT (gpioPortA)
252
253 #define BSP_UARTNCP_RTS_PIN (1U)
254 #define BSP_UARTNCP_RTS_PORT (gpioPortC)
255
256 // [UARTNCP]$
257
258 // $[USART0]
259 #define PORTIO_USART0_CTS_PIN (4U)
260 #define PORTIO_USART0_CTS_PORT (gpioPortA)
261
262 #define PORTIO_USART0_RTS_PIN (1U)
263 #define PORTIO_USART0_RTS_PORT (gpioPortC)
264
265 #define PORTIO_USART0_RX_PIN (6U)
266 #define PORTIO_USART0_RX_PORT (gpioPortA)
267
268 #define PORTIO_USART0_TX_PIN (5U)
269 #define PORTIO_USART0_TX_PORT (gpioPortA)
270
271 #define BSP_USART0_TX_PIN (5U)
272 #define BSP_USART0_TX_PORT (gpioPortA)
273
274 #define BSP_USART0_RX_PIN (6U)
275 #define BSP_USART0_RX_PORT (gpioPortA)
276
277 #define BSP_USART0_CTS_PIN (4U)
278 #define BSP_USART0_CTS_PORT (gpioPortA)
279
280 #define BSP_USART0_RTS_PIN (1U)
281 #define BSP_USART0_RTS_PORT (gpioPortC)
282
283 // [USART0]$
284
285 // $[USART2]
286 #define PORTIO_USART2_CLK_PIN (2U)
287 #define PORTIO_USART2_CLK_PORT (gpioPortC)
288
289 #define PORTIO_USART2_CS_PIN (3U)
290 #define PORTIO_USART2_CS_PORT (gpioPortC)
291
292 #define PORTIO_USART2_RX_PIN (1U)
293 #define PORTIO_USART2_RX_PORT (gpioPortC)
294
295 #define PORTIO_USART2_TX_PIN (0U)
296 #define PORTIO_USART2_TX_PORT (gpioPortC)
297
298 #define BSP_USART2_MOSI_PIN (0U)
299 #define BSP_USART2_MOSI_PORT (gpioPortC)
300
301 #define BSP_USART2_MISO_PIN (1U)
302 #define BSP_USART2_MISO_PORT (gpioPortC)
303
304 #define BSP_USART2_CLK_PIN (2U)
305 #define BSP_USART2_CLK_PORT (gpioPortC)
306
307 #define BSP_USART2_CS_PIN (3U)
308 #define BSP_USART2_CS_PORT (gpioPortC)
309
310 // [USART2]$
311
312 // $[VCOM]
313
314 #define BSP_VCOM_ENABLE_PIN (4U)
315 #define BSP_VCOM_ENABLE_PORT (gpioPortD)
316
317 // [VCOM]$
318
319 #if defined(_SILICON_LABS_MODULE)
320 #include "sl_module.h"
321 #endif