aboutsummaryrefslogtreecommitdiff
path: root/lib/chibios-contrib/ext/mcux-sdk/devices/MKE02Z4/MKE02Z4_features.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/chibios-contrib/ext/mcux-sdk/devices/MKE02Z4/MKE02Z4_features.h')
-rw-r--r--lib/chibios-contrib/ext/mcux-sdk/devices/MKE02Z4/MKE02Z4_features.h342
1 files changed, 342 insertions, 0 deletions
diff --git a/lib/chibios-contrib/ext/mcux-sdk/devices/MKE02Z4/MKE02Z4_features.h b/lib/chibios-contrib/ext/mcux-sdk/devices/MKE02Z4/MKE02Z4_features.h
new file mode 100644
index 000000000..972d84d19
--- /dev/null
+++ b/lib/chibios-contrib/ext/mcux-sdk/devices/MKE02Z4/MKE02Z4_features.h
@@ -0,0 +1,342 @@
1/*
2** ###################################################################
3** Version: rev. 1.0, 2017-05-19
4** Build: b201014
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 (2017-05-19)
20** Initial version.
21**
22** ###################################################################
23*/
24
25#ifndef _MKE02Z4_FEATURES_H_
26#define _MKE02Z4_FEATURES_H_
27
28/* SOC module features */
29
30/* @brief ACMP availability on the SoC. */
31#define FSL_FEATURE_SOC_ACMP_COUNT (2)
32/* @brief ADC availability on the SoC. */
33#define FSL_FEATURE_SOC_ADC_COUNT (1)
34/* @brief CRC availability on the SoC. */
35#define FSL_FEATURE_SOC_CRC_COUNT (1)
36/* @brief FGPIO availability on the SoC. */
37#define FSL_FEATURE_SOC_FGPIO_COUNT (2)
38/* @brief FTM availability on the SoC. */
39#define FSL_FEATURE_SOC_FTM_COUNT (3)
40/* @brief FTMRH availability on the SoC. */
41#define FSL_FEATURE_SOC_FTMRH_COUNT (1)
42/* @brief GPIO availability on the SoC. */
43#define FSL_FEATURE_SOC_GPIO_COUNT (2)
44/* @brief I2C availability on the SoC. */
45#define FSL_FEATURE_SOC_I2C_COUNT (1)
46/* @brief ICS availability on the SoC. */
47#define FSL_FEATURE_SOC_ICS_COUNT (1)
48/* @brief IRQ availability on the SoC. */
49#define FSL_FEATURE_SOC_IRQ_COUNT (1)
50/* @brief KBI availability on the SoC. */
51#define FSL_FEATURE_SOC_KBI_COUNT (2)
52/* @brief MCM availability on the SoC. */
53#define FSL_FEATURE_SOC_MCM_COUNT (1)
54/* @brief OSC availability on the SoC. */
55#define FSL_FEATURE_SOC_OSC_COUNT (1)
56/* @brief PIT availability on the SoC. */
57#define FSL_FEATURE_SOC_PIT_COUNT (1)
58/* @brief PMC availability on the SoC. */
59#define FSL_FEATURE_SOC_PMC_COUNT (1)
60/* @brief PORT availability on the SoC. */
61#define FSL_FEATURE_SOC_PORT_COUNT (1)
62/* @brief ROM availability on the SoC. */
63#define FSL_FEATURE_SOC_ROM_COUNT (1)
64/* @brief RTC availability on the SoC. */
65#define FSL_FEATURE_SOC_RTC_COUNT (1)
66/* @brief SIM availability on the SoC. */
67#define FSL_FEATURE_SOC_SIM_COUNT (1)
68/* @brief SPI availability on the SoC. */
69#define FSL_FEATURE_SOC_SPI_COUNT (2)
70/* @brief UART availability on the SoC. */
71#define FSL_FEATURE_SOC_UART_COUNT (3)
72/* @brief WDOG availability on the SoC. */
73#define FSL_FEATURE_SOC_WDOG_COUNT (1)
74
75/* ADC module features */
76
77/* @brief Has status and control register 5. */
78#define FSL_FEATURE_ADC_HAS_SC5_REG (0)
79/* @brief Has hardware trigger multiple conversion enable. */
80#define FSL_FEATURE_ADC_HAS_SC4_HTRGME (0)
81
82/* CRC module features */
83
84/* @brief Has data register with name CRC */
85#define FSL_FEATURE_CRC_HAS_CRC_REG (0)
86
87/* FGPIO module features */
88
89/* No feature definitions */
90
91/* FTM module features */
92
93/* @brief Number of channels. */
94#define FSL_FEATURE_FTM_CHANNEL_COUNTn(x) (8)
95/* @brief Has counter reset by the selected input capture event (register bits C0SC[ICRST], C1SC[ICRST], ...). */
96#define FSL_FEATURE_FTM_HAS_COUNTER_RESET_BY_CAPTURE_EVENT (0)
97/* @brief Has extended deadtime value. */
98#define FSL_FEATURE_FTM_HAS_EXTENDED_DEADTIME_VALUE (0)
99/* @brief Enable pwm output for the module. */
100#define FSL_FEATURE_FTM_HAS_ENABLE_PWM_OUTPUT (0)
101/* @brief Has half-cycle reload for the module. */
102#define FSL_FEATURE_FTM_HAS_HALFCYCLE_RELOAD (0)
103/* @brief Has reload interrupt. */
104#define FSL_FEATURE_FTM_HAS_RELOAD_INTERRUPT (0)
105/* @brief Has reload initialization trigger. */
106#define FSL_FEATURE_FTM_HAS_RELOAD_INITIALIZATION_TRIGGER (0)
107/* @brief Has DMA support, bitfield CnSC[DMA]. */
108#define FSL_FEATURE_FTM_HAS_DMA_SUPPORT (0)
109/* @brief If channel 6 is used to generate channel trigger, bitfield EXTTRIG[CH6TRIG]. */
110#define FSL_FEATURE_FTM_HAS_CHANNEL6_TRIGGER (0)
111/* @brief If channel 7 is used to generate channel trigger, bitfield EXTTRIG[CH7TRIG]. */
112#define FSL_FEATURE_FTM_HAS_CHANNEL7_TRIGGER (0)
113/* @brief Has no QDCTRL. */
114#define FSL_FEATURE_FTM_HAS_NO_QDCTRL (1)
115/* @brief If instance has only TPM function. */
116#define FSL_FEATURE_FTM_IS_TPM_ONLY_INSTANCEn(x) \
117 (((x) == FTM0) ? (1) : \
118 (((x) == FTM1) ? (1) : \
119 (((x) == FTM2) ? (0) : (-1))))
120/* @brief TPM Has no CONF. */
121#define FSL_FEATURE_TPM_HAS_NO_CONF (1)
122/* @brief There is CLKS bit in SC register. */
123#define FSL_FEATURE_TPM_HAS_SC_CLKS (1)
124/* @brief Wait CnV register is updated after CnV register is written. */
125#define FSL_FEATURE_TPM_WAIT_CnV_REGISTER_UPDATE (1)
126/* @brief CHF is cleared by write a 0 to the CHF bit in CnSC register. */
127#define FSL_FEATURE_TPM_CnSC_CHF_WRITE_0_CLEAR (1)
128/* @brief Has no STATUS. */
129#define FSL_FEATURE_TPM_HAS_NO_STATUS (1)
130/* @brief Number of channels. */
131#define FSL_FEATURE_TPM_CHANNEL_COUNTn(x) ((x) == TPM0 ? (2) : ((x) == TPM1 ? (2) : (-1)))
132
133/* FTMRH module features */
134
135/* @brief Is of type FTMRE. */
136#define FSL_FEATURE_FLASH_IS_FTMRE (0U)
137/* @brief Is of type FTMRH. */
138#define FSL_FEATURE_FLASH_IS_FTMRH (1U)
139/* @brief Has EEPROM region protection (register FEPROT). */
140#define FSL_FEATURE_FLASH_HAS_EEROM_REGION_PROTECTION (0U)
141/* @brief Has flash cache control in FMC module. */
142#define FSL_FEATURE_FLASH_HAS_FMC_FLASH_CACHE_CONTROLS (0U)
143/* @brief Has flash cache control in MCM module. */
144#define FSL_FEATURE_FLASH_HAS_MCM_FLASH_CACHE_CONTROLS (1U)
145/* @brief P-Flash higher region start address. */
146#define FSL_FEATURE_FLASH_PFLASH_HIGH_START_ADDRESS (0x00007FFFUL)
147/* @brief P-Flash start address. */
148#define FSL_FEATURE_FLASH_PFLASH_START_ADDRESS (0x00000000UL)
149/* @brief P-Flash block count. */
150#define FSL_FEATURE_FLASH_PFLASH_BLOCK_COUNT (1U)
151/* @brief P-Flash block size. */
152#define FSL_FEATURE_FLASH_PFLASH_BLOCK_SIZE (65536UL)
153/* @brief P-Flash sector size. */
154#define FSL_FEATURE_FLASH_PFLASH_BLOCK_SECTOR_SIZE (512UL)
155/* @brief P-Flash write unit size. */
156#define FSL_FEATURE_FLASH_PFLASH_BLOCK_WRITE_UNIT_SIZE (8U)
157/* @brief P-Flash data path width. */
158#define FSL_FEATURE_FLASH_PFLASH_BLOCK_DATA_PATH_WIDTH (16U)
159/* @brief Has EEPROM memory. */
160#define FSL_FEATURE_FLASH_HAS_EEPROM (1U)
161/* @brief EEPROM start address. */
162#define FSL_FEATURE_FLASH_EEPROM_START_ADDRESS (0x10000000UL)
163/* @brief EEPROM block count. */
164#define FSL_FEATURE_FLASH_EEPROM_BLOCK_COUNT (1U)
165/* @brief EEPROM block size . */
166#define FSL_FEATURE_FLASH_EEPROM_BLOCK_SIZE (256UL)
167/* @brief EEPROM sector size. */
168#define FSL_FEATURE_FLASH_EEPROM_BLOCK_SECTOR_SIZE (2U)
169/* @brief EEPROM write unit size. */
170#define FSL_FEATURE_FLASH_EEPROM_BLOCK_WRITE_UNIT_SIZE (8U)
171/* @brief EEPROM data path width. */
172#define FSL_FEATURE_FLASH_EEPROM_BLOCK_DATA_PATH_WIDTH (8U)
173/* @brief Has 0x01 Erase Verify All Blocks command. */
174#define FSL_FEATURE_FLASH_HAS_ERASE_VERIFY_ALL_BLOCKS_CMD (1U)
175/* @brief Has 0x02 Erase Verify Block command. */
176#define FSL_FEATURE_FLASH_HAS_ERASE_VERIFY_BLOCK_CMD (1U)
177/* @brief Has 0x03 Erase Verify Flash Section command. */
178#define FSL_FEATURE_FLASH_HAS_ERASE_VERIFY_FLASH_SECTION_CMD (1U)
179/* @brief Has 0x04 Read Once command. */
180#define FSL_FEATURE_FLASH_HAS_READ_ONCE_CMD (1U)
181/* @brief Has 0x06 Program Flash command. */
182#define FSL_FEATURE_FLASH_HAS_PROGRAM_FLASH_CMD (1U)
183/* @brief Has 0x07 Program Once command. */
184#define FSL_FEATURE_FLASH_HAS_PROGRAM_ONCE_CMD (1U)
185/* @brief Has 0x08 Erase All Blocks command. */
186#define FSL_FEATURE_FLASH_HAS_ERASE_ALL_BLOCKS_CMD (1U)
187/* @brief Has 0x09 Erase Flash Block command. */
188#define FSL_FEATURE_FLASH_HAS_ERASE_FLASH_BLOCK_CMD (1U)
189/* @brief Has 0x0A Erase Flash Sector command. */
190#define FSL_FEATURE_FLASH_HAS_ERASE_FLASH_SECTOR_CMD (1U)
191/* @brief Has 0x0B Unsecure Flash command. */
192#define FSL_FEATURE_FLASH_HAS_UNSECURE_FLASH_CMD (1U)
193/* @brief Has 0x0C Verify Backdoor Access Key command. */
194#define FSL_FEATURE_FLASH_HAS_VERIFY_BACKDOOR_ACCESS_KEY_CMD (1U)
195/* @brief Has 0x0D Set User Margin Level command. */
196#define FSL_FEATURE_FLASH_HAS_SET_USER_MARGIN_LEVEL_CMD (1U)
197/* @brief Has 0x0E Set Factory Margin Level command. */
198#define FSL_FEATURE_FLASH_HAS_SET_FACTORY_MARGIN_LEVEL_CMD (1U)
199/* @brief Has 0x0F Configure NVM command. */
200#define FSL_FEATURE_FLASH_HAS_CONFIGURE_NVM_CMD (1U)
201/* @brief Has 0x10 Erase Verify EEPROM Section command. */
202#define FSL_FEATURE_FLASH_HAS_ERASE_VERIFY_EEPROM_SECTION_CMD (1U)
203/* @brief Has 0x11 Program EEPROM command. */
204#define FSL_FEATURE_FLASH_HAS_PROGRAM_EEPROM_CMD (1U)
205/* @brief Has 0x12 Erase EEPROM Sector command. */
206#define FSL_FEATURE_FLASH_HAS_ERASE_EEPROM_SECTOR_CMD (1U)
207/* @brief P-Flash Erase sector command address alignment. */
208#define FSL_FEATURE_FLASH_PFLASH_SECTOR_CMD_ADDRESS_ALIGMENT (4U)
209/* @brief P-Flash Rrogram/Verify section command address alignment. */
210#define FSL_FEATURE_FLASH_PFLASH_SECTION_CMD_ADDRESS_ALIGMENT (4U)
211/* @brief P-Flash Program flash command address alignment. */
212#define FSL_FEATURE_FLASH_PFLASH_PROGRAM_CMD_ADDRESS_ALIGMENT (4U)
213
214/* GPIO module features */
215
216/* @brief Has GPIO attribute checker register (GACR). */
217#define FSL_FEATURE_GPIO_HAS_ATTRIBUTE_CHECKER (0)
218
219/* I2C module features */
220
221/* @brief Has System Management Bus support (registers SMB, A2, SLTL and SLTH). */
222#define FSL_FEATURE_I2C_HAS_SMBUS (1)
223/* @brief Maximum supported baud rate in kilobit per second. */
224#define FSL_FEATURE_I2C_MAX_BAUD_KBPS (400)
225/* @brief Is affected by errata with ID 6070 (repeat start cannot be generated if the F[MULT] bit field is set to a
226 * non-zero value). */
227#define FSL_FEATURE_I2C_HAS_ERRATA_6070 (0)
228/* @brief Has DMA support (register bit C1[DMAEN]). */
229#define FSL_FEATURE_I2C_HAS_DMA_SUPPORT (0)
230/* @brief Has I2C bus start and stop detection (register bits FLT[SSIE], FLT[STARTF] and FLT[STOPF]). */
231#define FSL_FEATURE_I2C_HAS_START_STOP_DETECT (1)
232/* @brief Has I2C bus stop detection (register bits FLT[STOPIE] and FLT[STOPF]). */
233#define FSL_FEATURE_I2C_HAS_STOP_DETECT (0)
234/* @brief Has I2C bus stop hold off (register bit FLT[SHEN]). */
235#define FSL_FEATURE_I2C_HAS_STOP_HOLD_OFF (1)
236/* @brief Maximum width of the glitch filter in number of bus clocks. */
237#define FSL_FEATURE_I2C_MAX_GLITCH_FILTER_WIDTH (15)
238/* @brief Has control of the drive capability of the I2C pins. */
239#define FSL_FEATURE_I2C_HAS_HIGH_DRIVE_SELECTION (0)
240/* @brief Has double buffering support (register S2). */
241#define FSL_FEATURE_I2C_HAS_DOUBLE_BUFFERING (0)
242/* @brief Has double buffer enable. */
243#define FSL_FEATURE_I2C_HAS_DOUBLE_BUFFER_ENABLE (0)
244
245/* KBI module features */
246
247/* @brief KBI module has source pin. */
248#define FSL_FEATURE_KBI_HAS_SOURCE_PIN (0)
249/* @brief KBI register width. */
250#define FSL_FEATURE_KBI_REG_WIDTH (8)
251
252/* PIT module features */
253
254/* @brief Number of channels (related to number of registers LDVALn, CVALn, TCTRLn, TFLGn). */
255#define FSL_FEATURE_PIT_TIMER_COUNT (2)
256/* @brief Has lifetime timer (related to existence of registers LTMR64L and LTMR64H). */
257#define FSL_FEATURE_PIT_HAS_LIFETIME_TIMER (0)
258/* @brief Has chain mode (related to existence of register bit field TCTRLn[CHN]). */
259#define FSL_FEATURE_PIT_HAS_CHAIN_MODE (1)
260/* @brief Has shared interrupt handler (has not individual interrupt handler for each channel). */
261#define FSL_FEATURE_PIT_HAS_SHARED_IRQ_HANDLER (0)
262/* @brief Has timer enable control. */
263#define FSL_FEATURE_PIT_HAS_MDIS (1)
264
265/* SPI module features */
266
267/* @brief Capacity (number of entries) of the transmit/receive FIFO (or zero if no FIFO is available). */
268#define FSL_FEATURE_SPI_HAS_FIFO (0)
269/* @brief Has DMA support (register bit fields C2[RXDMAE] and C2[TXDMAE]). */
270#define FSL_FEATURE_SPI_HAS_DMA_SUPPORT (0)
271/* @brief Has separate DMA RX and TX requests. */
272#define FSL_FEATURE_SPI_HAS_SEPARATE_DMA_RX_TX_REQn(x) (0)
273/* @brief Receive/transmit FIFO size in number of 16-bit communication items. */
274#define FSL_FEATURE_SPI_FIFO_SIZEn(x) (0)
275/* @brief Maximum transfer data width in bits. */
276#define FSL_FEATURE_SPI_MAX_DATA_WIDTH (8)
277/* @brief The data register name has postfix (L as low and H as high). */
278#define FSL_FEATURE_SPI_DATA_REGISTER_HAS_POSTFIX (0)
279/* @brief Has separated TXDATA and CMD FIFOs (register SREX). */
280#define FSL_FEATURE_SPI_HAS_SEPARATE_TXDATA_CMD_FIFO (0)
281/* @brief Has 16-bit data transfer support. */
282#define FSL_FEATURE_SPI_16BIT_TRANSFERS (0)
283
284/* UART module features */
285
286/* @brief Has receive FIFO overflow detection (bit field CFIFO[RXOFE]). */
287#define FSL_FEATURE_UART_HAS_IRQ_EXTENDED_FUNCTIONS (1)
288/* @brief Has low power features (can be enabled in wait mode via register bit C1[DOZEEN] or CTRL[DOZEEN] if the
289 * registers are 32-bit wide). */
290#define FSL_FEATURE_UART_HAS_LOW_POWER_UART_SUPPORT (0)
291/* @brief Has extended data register ED (or extra flags in the DATA register if the registers are 32-bit wide). */
292#define FSL_FEATURE_UART_HAS_EXTENDED_DATA_REGISTER_FLAGS (0)
293/* @brief Capacity (number of entries) of the transmit/receive FIFO (or zero if no FIFO is available). */
294#define FSL_FEATURE_UART_HAS_FIFO (0)
295/* @brief Hardware flow control (RTS, CTS) is supported. */
296#define FSL_FEATURE_UART_HAS_MODEM_SUPPORT (0)
297/* @brief Infrared (modulation) is supported. */
298#define FSL_FEATURE_UART_HAS_IR_SUPPORT (0)
299/* @brief 2 bits long stop bit is available. */
300#define FSL_FEATURE_UART_HAS_STOP_BIT_CONFIG_SUPPORT (1)
301/* @brief If 10-bit mode is supported. */
302#define FSL_FEATURE_UART_HAS_10BIT_DATA_SUPPORT (0)
303/* @brief Baud rate fine adjustment is available. */
304#define FSL_FEATURE_UART_HAS_BAUD_RATE_FINE_ADJUST_SUPPORT (0)
305/* @brief Baud rate oversampling is available (has bit fields C4[OSR], C5[BOTHEDGE], C5[RESYNCDIS] or BAUD[OSR],
306 * BAUD[BOTHEDGE], BAUD[RESYNCDIS] if the registers are 32-bit wide). */
307#define FSL_FEATURE_UART_HAS_BAUD_RATE_OVER_SAMPLING_SUPPORT (0)
308/* @brief Baud rate oversampling is available. */
309#define FSL_FEATURE_UART_HAS_RX_RESYNC_SUPPORT (1)
310/* @brief Baud rate oversampling is available. */
311#define FSL_FEATURE_UART_HAS_BOTH_EDGE_SAMPLING_SUPPORT (1)
312/* @brief Peripheral type. */
313#define FSL_FEATURE_UART_IS_SCI (0)
314/* @brief Capacity (number of entries) of the transmit/receive FIFO (or zero if no FIFO is available). */
315#define FSL_FEATURE_UART_FIFO_SIZE (0)
316/* @brief Supports two match addresses to filter incoming frames. */
317#define FSL_FEATURE_UART_HAS_ADDRESS_MATCHING (0)
318/* @brief Has transmitter/receiver DMA enable bits C5[TDMAE]/C5[RDMAE] (or BAUD[TDMAE]/BAUD[RDMAE] if the registers are
319 * 32-bit wide). */
320#define FSL_FEATURE_UART_HAS_DMA_ENABLE (0)
321/* @brief Has transmitter/receiver DMA select bits C4[TDMAS]/C4[RDMAS], resp. C5[TDMAS]/C5[RDMAS] if IS_SCI = 0. */
322#define FSL_FEATURE_UART_HAS_DMA_SELECT (0)
323/* @brief Data character bit order selection is supported (bit field S2[MSBF] or STAT[MSBF] if the registers are 32-bit
324 * wide). */
325#define FSL_FEATURE_UART_HAS_BIT_ORDER_SELECT (0)
326/* @brief Has smart card (ISO7816 protocol) support and no improved smart card support. */
327#define FSL_FEATURE_UART_HAS_SMART_CARD_SUPPORT (0)
328/* @brief Has improved smart card (ISO7816 protocol) support. */
329#define FSL_FEATURE_UART_HAS_IMPROVED_SMART_CARD_SUPPORT (0)
330/* @brief Has local operation network (CEA709.1-B protocol) support. */
331#define FSL_FEATURE_UART_HAS_LOCAL_OPERATION_NETWORK_SUPPORT (0)
332/* @brief Has 32-bit registers (BAUD, STAT, CTRL, DATA, MATCH, MODIR) instead of 8-bit (BDH, BDL, C1, S1, D, etc.). */
333#define FSL_FEATURE_UART_HAS_32BIT_REGISTERS (0)
334/* @brief Lin break detect available (has bit BDH[LBKDIE]). */
335#define FSL_FEATURE_UART_HAS_LIN_BREAK_DETECT (1)
336/* @brief UART stops in Wait mode available (has bit C1[UARTSWAI]). */
337#define FSL_FEATURE_UART_HAS_WAIT_MODE_OPERATION (1)
338/* @brief Has separate DMA RX and TX requests. */
339#define FSL_FEATURE_UART_HAS_SEPARATE_DMA_RX_TX_REQn(x) (0)
340
341#endif /* _MKE02Z4_FEATURES_H_ */
342