xWRL6432 MMWAVE-L-SDK  05.04.00.01
cslr_soc_defines.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2020-23 Texas Instruments Incorporated
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  *
8  * Redistributions of source code must retain the above copyright
9  * notice, this list of conditions and the following disclaimer.
10  *
11  * Redistributions in binary form must reproduce the above copyright
12  * notice, this list of conditions and the following disclaimer in the
13  * documentation and/or other materials provided with the
14  * distribution.
15  *
16  * Neither the name of Texas Instruments Incorporated nor the names of
17  * its contributors may be used to endorse or promote products derived
18  * from this software without specific prior written permission.
19  *
20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31  *
32  */
33 
34 #ifndef CSLR_SOC_DEFINES_H_
35 #define CSLR_SOC_DEFINES_H_
36 
37 /* ========================================================================== */
38 /* Include Files */
39 /* ========================================================================== */
40 
41 /* None */
42 
43 #ifdef __cplusplus
44 extern "C" {
45 #endif
46 
47 /* ========================================================================== */
48 /* Macros & Typedefs */
49 /* ========================================================================== */
50 
57 #define CSL_CORE_ID_M4FSS0_0 (0U)
58 #define CSL_CORE_ID_MAX (1U)
59 
62 #define CSL_APSS_UART_PER_CNT (2U)
63 
65 #define CSL_APPSS_MCSPI_PER_CNT (1U)
66 
68 #define CSL_APPSS_I2C_CNT (1U)
69 
71 #define CSL_APPSS_LIN_CNT (1U)
72 
74 #define CSL_APPSS_QSPI_CNT (1U)
75 
77 #define CSL_APPSS_MCAN_CNT (1U)
78 
80 #define CSL_APPSS_PWM_CNT (1U)
81 
82 /*
83  * This represents the maximum supported in a SOC across all instances of EDMA
84  */
86 #define SOC_EDMA_NUM_DMACH (64U)
87 
88 #define SOC_EDMA_NUM_QDMACH (8U)
89 
90 #define SOC_EDMA_NUM_PARAMSETS (128U)
91 
92 #define SOC_EDMA_NUM_EVQUE (2U)
93 
94 #define SOC_EDMA_CHMAPEXIST (1U)
95 
96 #define SOC_EDMA_NUM_REGIONS (8)
97 
98 #define SOC_EDMA_MEMPROTECT (1U)
99 
103 #define MCAN_MSG_RAM_MAX_WORD_COUNT (4352U)
104 
106 #define MCAN_MAX_RX_DMA_BUFFERS (3U)
107 
109 #define MCAN_MAX_TX_DMA_BUFFERS (3U)
110 
111 /* ESM number of groups */
112 #define ESM_NUM_GROUP_MAX (3U)
113 #define ESM_NUM_INTR_PER_GROUP (128U)
114 
116 #define EDMA_APPSS_TPCC_A_EVT_SPI1_DMA_RX_REQ 0
117 #define EDMA_APPSS_TPCC_A_EVT_SPI1_DMA_TX_REQ 1
118 #define EDMA_APPSS_TPCC_A_EVT_SPI2_DMA_RX_REQ 2
119 #define EDMA_APPSS_TPCC_A_EVT_SPI2_DMA_TX_REQ 3
120 #define EDMA_APPSS_TPCC_A_EVT_SCI1_DMA_RX_REQ 4
121 #define EDMA_APPSS_TPCC_A_EVT_SCI1_DMA_TX_REQ 5
122 #define EDMA_APPSS_TPCC_A_EVT_LIN_DMA_RX_REQ 6
123 #define EDMA_APPSS_TPCC_A_EVT_LIN_DMA_TX_REQ 7
124 #define EDMA_APPSS_TPCC_A_EVT_MCAN_DMA_REQ0 8
125 #define EDMA_APPSS_TPCC_A_EVT_MCAN_DMA_REQ1 9
126 #define EDMA_APPSS_TPCC_A_EVT_MCAN_FE_INT1 10
127 #define EDMA_APPSS_TPCC_A_EVT_MCAN_FE_INT2 11
128 #define EDMA_APPSS_TPCC_A_EVT_MCAN_FE_INT3 12
129 #define EDMA_APPSS_TPCC_A_EVT_MCAN_FE_INT4 13
130 #define EDMA_APPSS_TPCC_A_EVT_MCAN_FE_INT5 14
131 #define EDMA_APPSS_TPCC_A_EVT_MCAN_FE_INT6 15
132 #define EDMA_APPSS_TPCC_A_EVT_MCAN_FE_INT7 16
133 #define EDMA_APPSS_TPCC_A_EVT_I2C_DMA_REQ0 17
134 #define EDMA_APPSS_TPCC_A_EVT_I2C_DMA_REQ1 18
135 #define EDMA_APPSS_TPCC_A_GIO_INT0 19
136 #define EDMA_APPSS_TPCC_A_GIO_INT1 20
137 #define EDMA_APPSS_TPCC_A_APP_RTI1_DMA_REQ0 21
138 #define EDMA_APPSS_TPCC_A_APP_RTI1_DMA_REQ1 22
139 #define EDMA_APPSS_TPCC_A_APP_RTI1_DMA_REQ2 23
140 #define EDMA_APPSS_TPCC_A_APP_RTI1_DMA_REQ3 24
141 #define EDMA_APPSS_TPCC_A_APP_RTI2_DMA_REQ0 25
142 #define EDMA_APPSS_TPCC_A_APP_RTI2_DMA_REQ1 26
143 #define EDMA_APPSS_TPCC_A_APP_RTI2_DMA_REQ2 27
144 #define EDMA_APPSS_TPCC_A_APP_RTI2_DMA_REQ3 28
145 #define EDMA_APPSS_TPCC_A_MCRC_DMA_REQ0 29
146 #define EDMA_APPSS_TPCC_A_MCRC_DMA_REQ1 30
147 #define EDMA_APPSS_TPCC_A_QSPI_DMA_REQ 31
148 #define EDMA_APPSS_TPCC_A_PWM_DMA_REQ0 32
149 #define EDMA_APPSS_TPCC_A_PWM_DMA_REQ1 33
150 #define EDMA_APPSS_TPCC_A_SCI2_DMA_RX_REQ 34
151 #define EDMA_APPSS_TPCC_A_SCI2_DMA_TX_REQ 35
152 #define EDMA_APPSS_TPCC_A_FRAMETIMER_FRAME_START 36
153 #define EDMA_APPSS_TPCC_A_CHIP_AVAIL_IRQ 37
154 #define EDMA_APPSS_TPCC_A_CHIRPTIMER_CHIRP_END 38
155 #define EDMA_APPSS_TPCC_A_CHIRPTIMER_CHIRP_START 39
156 #define EDMA_APPSS_TPCC_A_CHIRPTIMER_FRAME_END 40
157 #define EDMA_APPSS_TPCC_A_ADC_VALID_START 41
158 #define EDMA_APPSS_TPCC_A_DTHE_SHA_DMA_REQ0 42
159 #define EDMA_APPSS_TPCC_A_DTHE_SHA_DMA_REQ1 43
160 #define EDMA_APPSS_TPCC_A_DTHE_SHA_DMA_REQ2 44
161 #define EDMA_APPSS_TPCC_A_DTHE_SHA_DMA_REQ3 45
162 #define EDMA_APPSS_TPCC_A_DTHE_SHA_DMA_REQ4 46
163 #define EDMA_APPSS_TPCC_A_DTHE_SHA_DMA_REQ5 47
164 #define EDMA_APPSS_TPCC_A_DTHE_AES_DMA_REQ0 48
165 #define EDMA_APPSS_TPCC_A_DTHE_AES_DMA_REQ1 49
166 #define EDMA_APPSS_TPCC_A_DTHE_AES_DMA_REQ2 50
167 #define EDMA_APPSS_TPCC_A_DTHE_AES_DMA_REQ3 51
168 #define EDMA_APPSS_TPCC_A_DTHE_AES_DMA_REQ4 52
169 #define EDMA_APPSS_TPCC_A_DTHE_AES_DMA_REQ5 53
170 #define EDMA_APPSS_TPCC_A_DTHE_AES_DMA_REQ6 54
171 #define EDMA_APPSS_TPCC_A_DTHE_AES_DMA_REQ7 55
172 #define EDMA_APPSS_TPCC_A_EVT_FREE_0 56
173 #define EDMA_APPSS_TPCC_A_FEC_INTR0 57
174 #define EDMA_APPSS_TPCC_A_FEC_INTR1 58
175 #define EDMA_APPSS_TPCC_A_FEC_INTR2 59
176 #define EDMA_APPSS_TPCC_A_FEC_INTR3 60
177 #define EDMA_APPSS_TPCC_A_EVT_FREE_1 61
178 #define EDMA_APPSS_TPCC_A_SP1_SPI2_DMA_RX_REQ 62
179 #define EDMA_APPSS_TPCC_A_SP1_SPI2_DMA_TX_REQ 63
180 
182 #define EDMA_APPSS_TPCC_B_EVT_FRAMETIMER_FRAME_START 0
183 #define EDMA_APPSS_TPCC_B_EVT_CHIRP_AVAIL_IRQ 1
184 #define EDMA_APPSS_TPCC_B_EVT_CHIRPTIMER_CHIRP_END 2
185 #define EDMA_APPSS_TPCC_B_EVT_CHIRPTIMER_CHIRP_START 3
186 #define EDMA_APPSS_TPCC_B_EVT_CHIRPTIMER_FRAME_END 4
187 #define EDMA_APPSS_TPCC_B_EVT_ADC_VALID_START 5
188 #define EDMA_APPSS_TPCC_B_EVT_HWA_DMA_REQ0 6
189 #define EDMA_APPSS_TPCC_B_EVT_HWA_DMA_REQ1 7
190 #define EDMA_APPSS_TPCC_B_EVT_HWA_DMA_REQ2 8
191 #define EDMA_APPSS_TPCC_B_EVT_HWA_DMA_REQ3 9
192 #define EDMA_APPSS_TPCC_B_EVT_HWA_DMA_REQ4 10
193 #define EDMA_APPSS_TPCC_B_EVT_HWA_DMA_REQ5 11
194 #define EDMA_APPSS_TPCC_B_EVT_HWA_DMA_REQ6 12
195 #define EDMA_APPSS_TPCC_B_EVT_HWA_DMA_REQ7 13
196 #define EDMA_APPSS_TPCC_B_EVT_HWA_DMA_REQ8 14
197 #define EDMA_APPSS_TPCC_B_EVT_HWA_DMA_REQ9 15
198 #define EDMA_APPSS_TPCC_B_EVT_HWA_DMA_REQ10 16
199 #define EDMA_APPSS_TPCC_B_EVT_HWA_DMA_REQ11 17
200 #define EDMA_APPSS_TPCC_B_EVT_HWA_DMA_REQ12 18
201 #define EDMA_APPSS_TPCC_B_EVT_HWA_DMA_REQ13 19
202 #define EDMA_APPSS_TPCC_B_EVT_HWA_DMA_REQ14 20
203 #define EDMA_APPSS_TPCC_B_EVT_HWA_DMA_REQ15 21
204 #define EDMA_APPSS_TPCC_B_EVT_HWA_LOOP_INT 22
205 #define EDMA_APPSS_TPCC_B_EVT_HWA_PARAMDONE_INT 23
206 #define EDMA_APPSS_TPCC_B_EVT_SPI1_DMA_RX_REQ 24
207 #define EDMA_APPSS_TPCC_B_EVT_SPI1_DMA_TX_REQ 25
208 #define EDMA_APPSS_TPCC_B_EVT_SPI2_DMA_RX_REQ 26
209 #define EDMA_APPSS_TPCC_B_EVT_SPI2_DMA_TX_REQ 27
210 #define EDMA_APPSS_TPCC_B_EVT_FREE_0 28
211 #define EDMA_APPSS_TPCC_B_EVT_FREE_1 29
212 #define EDMA_APPSS_TPCC_B_EVT_FREE_2 30
213 #define EDMA_APPSS_TPCC_B_EVT_FREE_3 31
214 #define EDMA_APPSS_TPCC_B_EVT_FREE_4 32
215 #define EDMA_APPSS_TPCC_B_EVT_FREE_5 33
216 #define EDMA_APPSS_TPCC_B_EVT_FREE_6 34
217 #define EDMA_APPSS_TPCC_B_EVT_FREE_7 35
218 #define EDMA_APPSS_TPCC_B_EVT_FREE_8 36
219 #define EDMA_APPSS_TPCC_B_EVT_FREE_9 37
220 #define EDMA_APPSS_TPCC_B_EVT_FREE_10 38
221 #define EDMA_APPSS_TPCC_B_EVT_FREE_11 39
222 #define EDMA_APPSS_TPCC_B_EVT_FREE_12 40
223 #define EDMA_APPSS_TPCC_B_EVT_FREE_13 41
224 #define EDMA_APPSS_TPCC_B_EVT_FREE_14 42
225 #define EDMA_APPSS_TPCC_B_EVT_FREE_15 43
226 #define EDMA_APPSS_TPCC_B_EVT_FREE_16 44
227 #define EDMA_APPSS_TPCC_B_EVT_FREE_17 45
228 #define EDMA_APPSS_TPCC_B_EVT_FREE_18 46
229 #define EDMA_APPSS_TPCC_B_EVT_FREE_19 47
230 #define EDMA_APPSS_TPCC_B_EVT_FREE_20 48
231 #define EDMA_APPSS_TPCC_B_EVT_FREE_21 49
232 #define EDMA_APPSS_TPCC_B_EVT_FREE_22 50
233 #define EDMA_APPSS_TPCC_B_EVT_FREE_23 51
234 #define EDMA_APPSS_TPCC_B_EVT_FREE_24 52
235 #define EDMA_APPSS_TPCC_B_EVT_FREE_25 53
236 #define EDMA_APPSS_TPCC_B_EVT_FREE_26 54
237 #define EDMA_APPSS_TPCC_B_EVT_FREE_27 55
238 #define EDMA_APPSS_TPCC_B_EVT_FREE_28 56
239 #define EDMA_APPSS_TPCC_B_EVT_FREE_29 57
240 #define EDMA_APPSS_TPCC_B_EVT_FREE_30 58
241 #define EDMA_APPSS_TPCC_B_EVT_FREE_31 59
242 #define EDMA_APPSS_TPCC_B_EVT_FREE_32 60
243 #define EDMA_APPSS_TPCC_B_EVT_FREE_33 61
244 #define EDMA_APPSS_TPCC_B_EVT_FREE_34 62
245 #define EDMA_APPSS_TPCC_B_EVT_FREE_35 63
246 
247 #define EDMA_APPSS_TPCC_A_NUM_PARAM_SETS (128U)
248 #define EDMA_APPSS_TPCC_A_NUM_DMA_CHANS (64U)
249 #define EDMA_APPSS_TPCC_A_NUM_TC (2U)
250 
251 #define EDMA_APPSS_TPCC_B_NUM_PARAM_SETS (128U)
252 #define EDMA_APPSS_TPCC_B_NUM_DMA_CHANS (64U)
253 #define EDMA_APPSS_TPCC_B_NUM_TC (2U)
254 
255 #define EDMA_TPCC_ERRAGG_TPCC_EERINT__POS (0U)
256 #define EDMA_TPCC_INTAGG_TPCC_INTG__POS (0U)
257 #define EDMA_TPCC_ERRAGG_TPTC_MIN_ERR__POS (2U) /* position of the lowest TC Id, others are higher */
258 
259 #define EDMA_APPSS_NUM_CC 4
260 
261 #define EDMA_APPSS_MAX_NUM_TC CSL_MAX(EDMA_APPSS_TPCC_A_NUM_TC, \
262  CSL_MAX(EDMA_APPSS_TPCC_B_NUM_TC, \
263  CSL_MAX(EDMA_APPSS_TPCC_C_NUM_TC, \
264  EDMA_RCSS_TPCC_A_NUM_TC)))
265 
266 #define EDMA_MSS_NUM_CC 6
267 
268 #define EDMA_MSS_MAX_NUM_TC CSL_MAX(EDMA_MSS_TPCC_A_NUM_TC, \
269  CSL_MAX(EDMA_MSS_TPCC_B_NUM_TC, \
270  CSL_MAX(EDMA_APPSS_TPCC_A_NUM_TC, \
271  CSL_MAX(EDMA_APPSS_TPCC_B_NUM_TC, \
272  CSL_MAX(EDMA_APPSS_TPCC_C_NUM_TC, \
273  EDMA_RCSS_TPCC_A_NUM_TC)))))
274 
275 /***********************************************************************
276  * Peripheral number of instance definition
277  ***********************************************************************/
278 #define HWA_NUM_INSTANCES (1U)
279 
281 #define SOC_HWA_NUM_MEM_BANKS (4U)
282 
283 #define SOC_HWA_NUM_PARAM_SETS (32U)
284 
285 #define SOC_HWA_NUM_DMA_CHANNEL (16U)
286 
287 #define SOC_HWA_MEM_SIZE (CSL_APP_HWA_BANK_SIZE * SOC_HWA_NUM_MEM_BANKS)
288 
289 /***********************************************************************
290  * HWA Hardware trigger source definitions
291  ***********************************************************************/
292 #define HWA_HARDWARE_TRIGGER_SOURCE_CSI2B_CONTEXT_0_LINE_END (0U)
293 #define HWA_HARDWARE_TRIGGER_SOURCE_CSI2B_CONTEXT_1_LINE_END (1U)
294 #define HWA_HARDWARE_TRIGGER_SOURCE_CSI2B_CONTEXT_2_LINE_END (2U)
295 #define HWA_HARDWARE_TRIGGER_SOURCE_CSI2B_CONTEXT_3_LINE_END (3U)
296 #define HWA_HARDWARE_TRIGGER_SOURCE_CSI2B_CONTEXT_4_LINE_END (4U)
297 #define HWA_HARDWARE_TRIGGER_SOURCE_CSI2B_CONTEXT_5_LINE_END (5U)
298 #define HWA_HARDWARE_TRIGGER_SOURCE_CSI2B_CONTEXT_6_LINE_END (6U)
299 #define HWA_HARDWARE_TRIGGER_SOURCE_CSI2B_CONTEXT_7_LINE_END (7U)
300 #define HWA_HARDWARE_TRIGGER_SOURCE_CSI2B_FRAME_START_0 (8U)
301 #define HWA_HARDWARE_TRIGGER_SOURCE_CSI2B_FRAME_START_1 (9U)
302 
303 #define HWA_HARDWARE_TRIGGER_SOURCE_CSI2A_CONTEXT_0_LINE_END (10U)
304 #define HWA_HARDWARE_TRIGGER_SOURCE_CSI2A_CONTEXT_1_LINE_END (11U)
305 #define HWA_HARDWARE_TRIGGER_SOURCE_CSI2A_CONTEXT_2_LINE_END (12U)
306 #define HWA_HARDWARE_TRIGGER_SOURCE_CSI2A_CONTEXT_3_LINE_END (13U)
307 #define HWA_HARDWARE_TRIGGER_SOURCE_CSI2A_CONTEXT_4_LINE_END (14U)
308 #define HWA_HARDWARE_TRIGGER_SOURCE_CSI2A_CONTEXT_5_LINE_END (15U)
309 #define HWA_HARDWARE_TRIGGER_SOURCE_CSI2A_CONTEXT_6_LINE_END (16U)
310 #define HWA_HARDWARE_TRIGGER_SOURCE_CSI2A_CONTEXT_7_LINE_END (17U)
311 #define HWA_HARDWARE_TRIGGER_SOURCE_CSI2A_FRAME_START_0 (18U)
312 #define HWA_HARDWARE_TRIGGER_SOURCE_CSI2A_FRAME_START_1 (19U)
313 
314 
315 /***********************************************************************
316  * MSS - CLOCK settings
317  ***********************************************************************/
318  /* Sys_vclk : 160MHz */
319 #define APPSS_SYS_VCLK 160000000U
320 
321 
322 /* ========================================================================== */
323 /* Structures and Enums */
324 /* ========================================================================== */
325 
327 //#define ADDR_TRANSLATE_CPU_TO_HWA(x) (uint16_t)(((uint32_t)(x) - SOC_XWR18XX_MSS_HWA_MEM0_BASE_ADDRESS) & 0x0000FFFFU)
328 
329 
330 /* None */
331 
332 /* ========================================================================== */
333 /* Global Variables */
334 /* ========================================================================== */
335 
336 /* None */
337 
338 /* ========================================================================== */
339 /* Function Declarations */
340 /* ========================================================================== */
341 
342 /* None */
343 
344 #ifdef __cplusplus
345 }
346 #endif
347 
348 #endif /* CSLR_SOC_DEFINES_H_ */