aboutsummaryrefslogtreecommitdiff
path: root/lib/chibios-contrib/ext/mcux-sdk/devices/MIMX8MN3/MIMX8MN3_cm7_features.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/chibios-contrib/ext/mcux-sdk/devices/MIMX8MN3/MIMX8MN3_cm7_features.h')
-rw-r--r--lib/chibios-contrib/ext/mcux-sdk/devices/MIMX8MN3/MIMX8MN3_cm7_features.h319
1 files changed, 319 insertions, 0 deletions
diff --git a/lib/chibios-contrib/ext/mcux-sdk/devices/MIMX8MN3/MIMX8MN3_cm7_features.h b/lib/chibios-contrib/ext/mcux-sdk/devices/MIMX8MN3/MIMX8MN3_cm7_features.h
new file mode 100644
index 000000000..c912ad834
--- /dev/null
+++ b/lib/chibios-contrib/ext/mcux-sdk/devices/MIMX8MN3/MIMX8MN3_cm7_features.h
@@ -0,0 +1,319 @@
1/*
2** ###################################################################
3** Version: rev. 2.0, 2019-09-23
4** Build: b200519
5**
6** Abstract:
7** Chip specific module features.
8**
9** Copyright 2016 Freescale Semiconductor, Inc.
10** Copyright 2016-2020 NXP
11** All rights reserved.
12**
13** SPDX-License-Identifier: BSD-3-Clause
14**
15** http: www.nxp.com
16** mail: [email protected]
17**
18** Revisions:
19** - rev. 1.0 (2019-04-22)
20** Initial version.
21** - rev. 2.0 (2019-09-23)
22** Rev.B Header RFP
23**
24** ###################################################################
25*/
26
27#ifndef _MIMX8MN3_cm7_FEATURES_H_
28#define _MIMX8MN3_cm7_FEATURES_H_
29
30/* SOC module features */
31
32/* @brief AIPSTZ availability on the SoC. */
33#define FSL_FEATURE_SOC_AIPSTZ_COUNT (1)
34/* @brief APBH availability on the SoC. */
35#define FSL_FEATURE_SOC_APBH_COUNT (1)
36/* @brief ASRC availability on the SoC. */
37#define FSL_FEATURE_SOC_ASRC_COUNT (1)
38/* @brief BCH availability on the SoC. */
39#define FSL_FEATURE_SOC_BCH_COUNT (1)
40/* @brief CCM availability on the SoC. */
41#define FSL_FEATURE_SOC_CCM_COUNT (1)
42/* @brief CCM_ANALOG availability on the SoC. */
43#define FSL_FEATURE_SOC_CCM_ANALOG_COUNT (1)
44/* @brief ECSPI availability on the SoC. */
45#define FSL_FEATURE_SOC_ECSPI_COUNT (3)
46/* @brief ENET availability on the SoC. */
47#define FSL_FEATURE_SOC_ENET_COUNT (1)
48/* @brief GPC availability on the SoC. */
49#define FSL_FEATURE_SOC_GPC_COUNT (1)
50/* @brief GPC_PGC availability on the SoC. */
51#define FSL_FEATURE_SOC_GPC_PGC_COUNT (1)
52/* @brief GPMI availability on the SoC. */
53#define FSL_FEATURE_SOC_GPMI_COUNT (1)
54/* @brief GPT availability on the SoC. */
55#define FSL_FEATURE_SOC_GPT_COUNT (6)
56/* @brief I2S availability on the SoC. */
57#define FSL_FEATURE_SOC_I2S_COUNT (5)
58/* @brief IGPIO availability on the SoC. */
59#define FSL_FEATURE_SOC_IGPIO_COUNT (5)
60/* @brief II2C availability on the SoC. */
61#define FSL_FEATURE_SOC_II2C_COUNT (4)
62/* @brief IOMUXC availability on the SoC. */
63#define FSL_FEATURE_SOC_IOMUXC_COUNT (1)
64/* @brief IOMUXC_GPR availability on the SoC. */
65#define FSL_FEATURE_SOC_IOMUXC_GPR_COUNT (1)
66/* @brief IPWM availability on the SoC. */
67#define FSL_FEATURE_SOC_IPWM_COUNT (4)
68/* @brief ISI availability on the SoC. */
69#define FSL_FEATURE_SOC_ISI_COUNT (1)
70/* @brief IUART availability on the SoC. */
71#define FSL_FEATURE_SOC_IUART_COUNT (4)
72/* @brief LCDIF availability on the SoC. */
73#define FSL_FEATURE_SOC_LCDIF_COUNT (1)
74/* @brief MU availability on the SoC. */
75#define FSL_FEATURE_SOC_MU_COUNT (1)
76/* @brief OCOTP availability on the SoC. */
77#define FSL_FEATURE_SOC_OCOTP_COUNT (1)
78/* @brief PDM availability on the SoC. */
79#define FSL_FEATURE_SOC_PDM_COUNT (1)
80/* @brief RDC availability on the SoC. */
81#define FSL_FEATURE_SOC_RDC_COUNT (1)
82/* @brief RDC_SEMAPHORE availability on the SoC. */
83#define FSL_FEATURE_SOC_RDC_SEMAPHORE_COUNT (2)
84/* @brief SDMA availability on the SoC. */
85#define FSL_FEATURE_SOC_SDMA_COUNT (3)
86/* @brief SEMA4 availability on the SoC. */
87#define FSL_FEATURE_SOC_SEMA4_COUNT (1)
88/* @brief SNVS availability on the SoC. */
89#define FSL_FEATURE_SOC_SNVS_COUNT (1)
90/* @brief SPBA availability on the SoC. */
91#define FSL_FEATURE_SOC_SPBA_COUNT (2)
92/* @brief SPDIF availability on the SoC. */
93#define FSL_FEATURE_SOC_SPDIF_COUNT (2)
94/* @brief SRC availability on the SoC. */
95#define FSL_FEATURE_SOC_SRC_COUNT (1)
96/* @brief USB availability on the SoC. */
97#define FSL_FEATURE_SOC_USB_COUNT (1)
98/* @brief USBNC availability on the SoC. */
99#define FSL_FEATURE_SOC_USBNC_COUNT (1)
100/* @brief USDHC availability on the SoC. */
101#define FSL_FEATURE_SOC_USDHC_COUNT (3)
102/* @brief WDOG availability on the SoC. */
103#define FSL_FEATURE_SOC_WDOG_COUNT (3)
104/* @brief XTALOSC availability on the SoC. */
105#define FSL_FEATURE_SOC_XTALOSC_COUNT (1)
106
107/* ECSPI module features */
108
109/* @brief ECSPI Tx FIFO Size. */
110#define FSL_FEATURE_ECSPI_TX_FIFO_SIZEn(x) (64)
111
112/* ENET module features */
113
114/* @brief Support Interrupt Coalesce */
115#define FSL_FEATURE_ENET_HAS_INTERRUPT_COALESCE (1)
116/* @brief Queue Size. */
117#define FSL_FEATURE_ENET_QUEUE (3)
118/* @brief Has AVB Support. */
119#define FSL_FEATURE_ENET_HAS_AVB (1)
120/* @brief Has Timer Pulse Width control. */
121#define FSL_FEATURE_ENET_HAS_TIMER_PWCONTROL (0)
122/* @brief Has Extend MDIO Support. */
123#define FSL_FEATURE_ENET_HAS_EXTEND_MDIO (1)
124/* @brief Has Additional 1588 Timer Channel Interrupt. */
125#define FSL_FEATURE_ENET_HAS_ADD_1588_TIMER_CHN_INT (1)
126/* @brief Support Interrupt Coalesce for each instance */
127#define FSL_FEATURE_ENET_INSTANCE_HAS_INTERRUPT_COALESCEn(x) (0)
128/* @brief Queue Size for each instance. */
129#define FSL_FEATURE_ENET_INSTANCE_QUEUEn(x) (3)
130/* @brief Has AVB Support for each instance. */
131#define FSL_FEATURE_ENET_INSTANCE_HAS_AVBn(x) (1)
132/* @brief Has Timer Pulse Width control for each instance. */
133#define FSL_FEATURE_ENET_INSTANCE_HAS_TIMER_PWCONTROLn(x) (0)
134/* @brief Has Extend MDIO Support for each instance. */
135#define FSL_FEATURE_ENET_INSTANCE_HAS_EXTEND_MDIOn(x) (1)
136/* @brief Has Additional 1588 Timer Channel Interrupt for each instance. */
137#define FSL_FEATURE_ENET_INSTANCE_HAS_ADD_1588_TIMER_CHN_INTn(x) (1)
138/* @brief Has threshold for the number of frames in the receive FIFO (register bit field RSEM[STAT_SECTION_EMPTY]). */
139#define FSL_FEATURE_ENET_HAS_RECEIVE_STATUS_THRESHOLD (1)
140
141/* GPC module features */
142
143/* @brief Has PGC MF. */
144#define FSL_FEATURE_GPC_HAS_PGC_MF (0)
145
146/* IGPIO module features */
147
148/* @brief Has data register set DR_SET. */
149#define FSL_FEATURE_IGPIO_HAS_DR_SET (0)
150/* @brief Has data register clear DR_CLEAR. */
151#define FSL_FEATURE_IGPIO_HAS_DR_CLEAR (0)
152/* @brief Has data register toggle DR_TOGGLE. */
153#define FSL_FEATURE_IGPIO_HAS_DR_TOGGLE (0)
154
155/* SAI module features */
156
157/* @brief Receive/transmit FIFO size in item count (register bit fields TCSR[FRDE], TCSR[FRIE], TCSR[FRF], TCR1[TFW],
158 * RCSR[FRDE], RCSR[FRIE], RCSR[FRF], RCR1[RFW], registers TFRn, RFRn). */
159#define FSL_FEATURE_SAI_FIFO_COUNT (128)
160/* @brief Receive/transmit channel number (register bit fields TCR3[TCE], RCR3[RCE], registers TDRn and RDRn). */
161#define FSL_FEATURE_SAI_CHANNEL_COUNTn(x) (8)
162/* @brief Maximum words per frame (register bit fields TCR3[WDFL], TCR4[FRSZ], TMR[TWM], RCR3[WDFL], RCR4[FRSZ],
163 * RMR[RWM]). */
164#define FSL_FEATURE_SAI_MAX_WORDS_PER_FRAME (32)
165/* @brief Has support of combining multiple data channel FIFOs into single channel FIFO (register bit fields TCR3[CFR],
166 * TCR4[FCOMB], TFR0[WCP], TFR1[WCP], RCR3[CFR], RCR4[FCOMB], RFR0[RCP], RFR1[RCP]). */
167#define FSL_FEATURE_SAI_HAS_FIFO_COMBINE_MODE (1)
168/* @brief Has packing of 8-bit and 16-bit data into each 32-bit FIFO word (register bit fields TCR4[FPACK],
169 * RCR4[FPACK]). */
170#define FSL_FEATURE_SAI_HAS_FIFO_PACKING (1)
171/* @brief Configures when the SAI will continue transmitting after a FIFO error has been detected (register bit fields
172 * TCR4[FCONT], RCR4[FCONT]). */
173#define FSL_FEATURE_SAI_HAS_FIFO_FUNCTION_AFTER_ERROR (1)
174/* @brief Configures if the frame sync is generated internally, a frame sync is only generated when the FIFO warning
175 * flag is clear or continuously (register bit fields TCR4[ONDEM], RCR4[ONDEM]). */
176#define FSL_FEATURE_SAI_HAS_ON_DEMAND_MODE (1)
177/* @brief Simplified bit clock source and asynchronous/synchronous mode selection (register bit fields TCR2[CLKMODE],
178 * RCR2[CLKMODE]), in comparison with the exclusively implemented TCR2[SYNC,BCS,BCI,MSEL], RCR2[SYNC,BCS,BCI,MSEL]. */
179#define FSL_FEATURE_SAI_HAS_CLOCKING_MODE (0)
180/* @brief Has register for configuration of the MCLK divide ratio (register bit fields MDR[FRACT], MDR[DIVIDE]). */
181#define FSL_FEATURE_SAI_HAS_MCLKDIV_REGISTER (0)
182/* @brief Interrupt source number */
183#define FSL_FEATURE_SAI_INT_SOURCE_NUM (1)
184/* @brief Has register of MCR. */
185#define FSL_FEATURE_SAI_HAS_MCR (1)
186/* @brief Has bit field MICS of the MCR register. */
187#define FSL_FEATURE_SAI_HAS_NO_MCR_MICS (1)
188/* @brief Has register of MDR */
189#define FSL_FEATURE_SAI_HAS_MDR (0)
190/* @brief Has support the BCLK bypass mode when BCLK = MCLK. */
191#define FSL_FEATURE_SAI_HAS_BCLK_BYPASS (1)
192/* @brief Has DIV bit fields of MCR register (register bit fields MCR[DIV]. */
193#define FSL_FEATURE_SAI_HAS_MCR_MCLK_POST_DIV (1)
194/* @brief Support Channel Mode (register bit fields TCR4[CHMOD]). */
195#define FSL_FEATURE_SAI_HAS_CHANNEL_MODE (1)
196/* @brief SAI5 AND SAI6 SHARE ONE IRQNUMBER. */
197#define FSL_FEATURE_SAI_SAI5_SAI6_SHARE_IRQ (1)
198
199/* MEMORY module features */
200
201/* @brief Memory map has offset between subsystems. */
202#define FSL_FEATURE_MEMORY_HAS_ADDRESS_OFFSET (1)
203
204/* MU module features */
205
206/* @brief MU side for current core */
207#define FSL_FEATURE_MU_SIDE_B (1)
208/* @brief MU Has register CCR */
209#define FSL_FEATURE_MU_HAS_CCR (0)
210/* @brief MU Has register SR[RS], BSR[ARS] */
211#define FSL_FEATURE_MU_HAS_SR_RS (1)
212/* @brief MU Has register CR[RDIE], CR[RAIE], SR[RDIP], SR[RAIP] */
213#define FSL_FEATURE_MU_HAS_RESET_INT (0)
214/* @brief MU Has register SR[MURIP] */
215#define FSL_FEATURE_MU_HAS_SR_MURIP (0)
216/* @brief brief MU Has register SR[HRIP] */
217#define FSL_FEATURE_MU_HAS_SR_HRIP (0)
218/* @brief brief MU does not support enable clock of the other core, CR[CLKE] or CCR[CLKE]. */
219#define FSL_FEATURE_MU_NO_CLKE (1)
220/* @brief brief MU does not support NMI, CR[NMI]. */
221#define FSL_FEATURE_MU_NO_NMI (1)
222/* @brief brief MU does not support hold the other core reset. CR[RSTH] or CCR[RSTH]. */
223#define FSL_FEATURE_MU_NO_RSTH (1)
224/* @brief brief MU does not supports MU reset, CR[MUR]. */
225#define FSL_FEATURE_MU_NO_MUR (1)
226/* @brief brief MU does not supports hardware reset, CR[HR] or CCR[HR]. */
227#define FSL_FEATURE_MU_NO_HR (1)
228/* @brief brief MU supports mask the hardware reset. CR[HRM] or CCR[HRM]. */
229#define FSL_FEATURE_MU_HAS_HRM (1)
230
231/* interrupt module features */
232
233/* @brief Lowest interrupt request number. */
234#define FSL_FEATURE_INTERRUPT_IRQ_MIN (-14)
235/* @brief Highest interrupt request number. */
236#define FSL_FEATURE_INTERRUPT_IRQ_MAX (105)
237
238/* PDM module features */
239
240/* @brief PDM FIFO offset */
241#define FSL_FEATURE_PDM_FIFO_OFFSET (4)
242/* @brief PDM Channel Number */
243#define FSL_FEATURE_PDM_CHANNEL_NUM (8)
244/* @brief PDM FIFO WIDTH Size */
245#define FSL_FEATURE_PDM_FIFO_WIDTH (2)
246/* @brief PDM FIFO DEPTH Size */
247#define FSL_FEATURE_PDM_FIFO_DEPTH (8)
248
249/* SDMA module features */
250
251/* @brief SDMA module channel number. */
252#define FSL_FEATURE_SDMA_MODULE_CHANNEL (32)
253/* @brief SDMA module event number. */
254#define FSL_FEATURE_SDMA_EVENT_NUM (48)
255/* @brief SDMA ROM memory to memory script start address. */
256#define FSL_FEATURE_SDMA_M2M_ADDR (644)
257/* @brief SDMA ROM peripheral to memory script start address. */
258#define FSL_FEATURE_SDMA_P2M_ADDR (685)
259/* @brief SDMA ROM memory to peripheral script start address. */
260#define FSL_FEATURE_SDMA_M2P_ADDR (749)
261/* @brief SDMA ROM uart to memory script start address. */
262#define FSL_FEATURE_SDMA_UART2M_ADDR (819)
263/* @brief SDMA ROM peripheral on SPBA to memory script start address. */
264#define FSL_FEATURE_SDMA_SHP2M_ADDR (893)
265/* @brief SDMA ROM memory to peripheral on SPBA script start address. */
266#define FSL_FEATURE_SDMA_M2SHP_ADDR (962)
267/* @brief SDMA ROM UART on SPBA to memory script start address. */
268#define FSL_FEATURE_SDMA_UARTSH2M_ADDR (1034)
269/* @brief SDMA ROM SPDIF to memory script start address. */
270#define FSL_FEATURE_SDMA_SPDIF2M_ADDR (1102)
271/* @brief SDMA ROM memory to SPDIF script start address. */
272#define FSL_FEATURE_SDMA_M2SPDIF_ADDR (1136)
273/* @brief SDMA ROM memory to MULTI_FIFO_SAI_TX script start address. */
274#define FSL_FEATURE_SDMA_MULTI_FIFO_SAI_TX_ADDR (6235)
275/* @brief SDMA ROM memory to MULTI_FIFO_SAI_RX script start address. */
276#define FSL_FEATURE_SDMA_MULTI_FIFO_SAI_RX_ADDR (6729)
277
278/* SEMA4 module features */
279
280/* @brief Gate counts */
281#define FSL_FEATURE_SEMA4_GATE_COUNT (16)
282
283/* SPBA module features */
284
285/* @brief SPBA module start address. */
286#define FSL_FEATURE_SPBA_STARTn(x) (((x) == SPBA2) ? (0x30000000) : (((x) == SPBA1) ? (0x30800000) : (-1)))
287/* @brief SPBA module end address. */
288#define FSL_FEATURE_SPBA_ENDn(x) (((x) == SPBA2) ? (0x300FFFFF) : (((x) == SPBA1) ? (0x308FFFFF) : (-1)))
289
290/* SysTick module features */
291
292/* @brief Systick has external reference clock. */
293#define FSL_FEATURE_SYSTICK_HAS_EXT_REF (0)
294/* @brief Systick external reference clock is core clock divided by this value. */
295#define FSL_FEATURE_SYSTICK_EXT_REF_CORE_DIV (0)
296
297/* IUART module features */
298
299/* @brief UART Transmit/Receive FIFO Size */
300#define FSL_FEATURE_IUART_FIFO_SIZEn(x) (32)
301/* @brief UART RX MUXed input selected option */
302#define FSL_FEATURE_IUART_RXDMUXSEL (1)
303
304/* USDHC module features */
305
306/* @brief Has external DMA support (VEND_SPEC[EXT_DMA_EN]) */
307#define FSL_FEATURE_USDHC_HAS_EXT_DMA (1)
308/* @brief Has HS400 mode (MIX_CTRL[HS400_MODE]) */
309#define FSL_FEATURE_USDHC_HAS_HS400_MODE (1)
310/* @brief Has SDR50 support (HOST_CTRL_CAP[SDR50_SUPPORT]) */
311#define FSL_FEATURE_USDHC_HAS_SDR50_MODE (1)
312/* @brief Has SDR104 support (HOST_CTRL_CAP[SDR104_SUPPORT]) */
313#define FSL_FEATURE_USDHC_HAS_SDR104_MODE (1)
314/* @brief USDHC has reset control */
315#define FSL_FEATURE_USDHC_HAS_RESET (0)
316/* @brief USDHC has no bitfield WTMK_LVL[WR_BRST_LEN] and WTMK_LVL[RD_BRST_LEN] */
317#define FSL_FEATURE_USDHC_HAS_NO_RW_BURST_LEN (0)
318
319#endif /* _MIMX8MN3_cm7_FEATURES_H_ */