1 /* 2 ** ################################################################### 3 ** Version: rev. 1.0, 2017-05-19 4 ** Build: b210915 5 ** 6 ** Abstract: 7 ** Chip specific module features. 8 ** 9 ** Copyright 2016 Freescale Semiconductor, Inc. 10 ** Copyright 2016-2021 NXP 11 ** All rights reserved. 12 ** 13 ** SPDX-License-Identifier: BSD-3-Clause 14 ** 15 ** http: www.nxp.com 16 ** mail: support@nxp.com 17 ** 18 ** Revisions: 19 ** - rev. 1.0 (2017-05-19) 20 ** Initial version. 21 ** 22 ** ################################################################### 23 */ 24 25 #ifndef _MKE04Z1284_FEATURES_H_ 26 #define _MKE04Z1284_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 (3) 38 /* @brief FTM availability on the SoC. */ 39 #define FSL_FEATURE_SOC_FTM_COUNT (3) 40 /* @brief FTMRE availability on the SoC. */ 41 #define FSL_FEATURE_SOC_FTMRE_COUNT (1) 42 /* @brief GPIO availability on the SoC. */ 43 #define FSL_FEATURE_SOC_GPIO_COUNT (3) 44 /* @brief I2C availability on the SoC. */ 45 #define FSL_FEATURE_SOC_I2C_COUNT (2) 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 PWT availability on the SoC. */ 63 #define FSL_FEATURE_SOC_PWT_COUNT (1) 64 /* @brief ROM availability on the SoC. */ 65 #define FSL_FEATURE_SOC_ROM_COUNT (1) 66 /* @brief RTC availability on the SoC. */ 67 #define FSL_FEATURE_SOC_RTC_COUNT (1) 68 /* @brief SIM availability on the SoC. */ 69 #define FSL_FEATURE_SOC_SIM_COUNT (1) 70 /* @brief SPI availability on the SoC. */ 71 #define FSL_FEATURE_SOC_SPI_COUNT (2) 72 /* @brief UART availability on the SoC. */ 73 #define FSL_FEATURE_SOC_UART_COUNT (3) 74 /* @brief WDOG availability on the SoC. */ 75 #define FSL_FEATURE_SOC_WDOG_COUNT (1) 76 77 /* ADC module features */ 78 79 /* @brief Has status and control register 5. */ 80 #define FSL_FEATURE_ADC_HAS_SC5_REG (1) 81 /* @brief Has hardware trigger multiple conversion enable. */ 82 #define FSL_FEATURE_ADC_HAS_SC4_HTRGME (1) 83 84 /* CRC module features */ 85 86 /* @brief Has data register with name CRC */ 87 #define FSL_FEATURE_CRC_HAS_CRC_REG (0) 88 89 /* FGPIO module features */ 90 91 /* No feature definitions */ 92 93 /* FTM module features */ 94 95 /* @brief Number of channels. */ 96 #define FSL_FEATURE_FTM_CHANNEL_COUNTn(x) (8) 97 /* @brief Has counter reset by the selected input capture event (register bits C0SC[ICRST], C1SC[ICRST], ...). */ 98 #define FSL_FEATURE_FTM_HAS_COUNTER_RESET_BY_CAPTURE_EVENT (0) 99 /* @brief Has extended deadtime value. */ 100 #define FSL_FEATURE_FTM_HAS_EXTENDED_DEADTIME_VALUE (0) 101 /* @brief Enable pwm output for the module. */ 102 #define FSL_FEATURE_FTM_HAS_ENABLE_PWM_OUTPUT (0) 103 /* @brief Has half-cycle reload for the module. */ 104 #define FSL_FEATURE_FTM_HAS_HALFCYCLE_RELOAD (0) 105 /* @brief Has reload interrupt. */ 106 #define FSL_FEATURE_FTM_HAS_RELOAD_INTERRUPT (0) 107 /* @brief Has reload initialization trigger. */ 108 #define FSL_FEATURE_FTM_HAS_RELOAD_INITIALIZATION_TRIGGER (0) 109 /* @brief Has DMA support, bitfield CnSC[DMA]. */ 110 #define FSL_FEATURE_FTM_HAS_DMA_SUPPORT (0) 111 /* @brief If channel 6 is used to generate channel trigger, bitfield EXTTRIG[CH6TRIG]. */ 112 #define FSL_FEATURE_FTM_HAS_CHANNEL6_TRIGGER (0) 113 /* @brief If channel 7 is used to generate channel trigger, bitfield EXTTRIG[CH7TRIG]. */ 114 #define FSL_FEATURE_FTM_HAS_CHANNEL7_TRIGGER (0) 115 /* @brief Has no QDCTRL. */ 116 #define FSL_FEATURE_FTM_HAS_NO_QDCTRL (1) 117 /* @brief If instance has only TPM function. */ 118 #define FSL_FEATURE_FTM_IS_TPM_ONLY_INSTANCEn(x) \ 119 (((x) == FTM0) ? (1) : \ 120 (((x) == FTM1) ? (1) : \ 121 (((x) == FTM2) ? (0) : (-1)))) 122 /* @brief TPM Has no CONF. */ 123 #define FSL_FEATURE_TPM_HAS_NO_CONF (1) 124 /* @brief There is CLKS bit in SC register. */ 125 #define FSL_FEATURE_TPM_HAS_SC_CLKS (1) 126 /* @brief Wait CnV register is updated after CnV register is written. */ 127 #define FSL_FEATURE_TPM_WAIT_CnV_REGISTER_UPDATE (1) 128 /* @brief CHF is cleared by write a 0 to the CHF bit in CnSC register. */ 129 #define FSL_FEATURE_TPM_CnSC_CHF_WRITE_0_CLEAR (1) 130 /* @brief Has no STATUS. */ 131 #define FSL_FEATURE_TPM_HAS_NO_STATUS (1) 132 /* @brief Number of channels. */ 133 #define FSL_FEATURE_TPM_CHANNEL_COUNTn(x) \ 134 (((x) == FTM0) ? (2) : \ 135 (((x) == FTM1) ? (2) : \ 136 (((x) == FTM2) ? (-1) : (-1)))) 137 /* @brief Whether TRIG register has effect. */ 138 #define FSL_FEATURE_TPM_TRIG_HAS_EFFECTn(x) (0) 139 /* @brief Whether POL register has effect. */ 140 #define FSL_FEATURE_TPM_POL_HAS_EFFECTn(x) (0) 141 /* @brief Whether 32 bits counter has effect. */ 142 #define FSL_FEATURE_TPM_HAS_32BIT_COUNTERn(x) (0) 143 144 /* FTMRE module features */ 145 146 #if defined(CPU_MKE04Z128VLD4) || defined(CPU_MKE04Z128VLH4) || defined(CPU_MKE04Z128VLK4) || defined(CPU_MKE04Z128VQH4) 147 /* @brief Is of type FTMRE. */ 148 #define FSL_FEATURE_FLASH_IS_FTMRE (1) 149 /* @brief Is of type FTMRH. */ 150 #define FSL_FEATURE_FLASH_IS_FTMRH (0) 151 /* @brief Has EEPROM region protection (register FEPROT). */ 152 #define FSL_FEATURE_FLASH_HAS_EEROM_REGION_PROTECTION (0) 153 /* @brief Has flash cache control in FMC module. */ 154 #define FSL_FEATURE_FLASH_HAS_FMC_FLASH_CACHE_CONTROLS (0) 155 /* @brief Has flash cache control in MCM module. */ 156 #define FSL_FEATURE_FLASH_HAS_MCM_FLASH_CACHE_CONTROLS (1) 157 /* @brief P-Flash higher region start address. */ 158 #define FSL_FEATURE_FLASH_PFLASH_HIGH_START_ADDRESS (0x00007FFF) 159 /* @brief P-Flash start address. */ 160 #define FSL_FEATURE_FLASH_PFLASH_START_ADDRESS (0x00000000) 161 /* @brief P-Flash block count. */ 162 #define FSL_FEATURE_FLASH_PFLASH_BLOCK_COUNT (1) 163 /* @brief P-Flash block size. */ 164 #define FSL_FEATURE_FLASH_PFLASH_BLOCK_SIZE (131072) 165 /* @brief P-Flash sector size. */ 166 #define FSL_FEATURE_FLASH_PFLASH_BLOCK_SECTOR_SIZE (512) 167 /* @brief P-Flash write unit size. */ 168 #define FSL_FEATURE_FLASH_PFLASH_BLOCK_WRITE_UNIT_SIZE (8) 169 /* @brief P-Flash data path width. */ 170 #define FSL_FEATURE_FLASH_PFLASH_BLOCK_DATA_PATH_WIDTH (16) 171 /* @brief Has EEPROM memory. */ 172 #define FSL_FEATURE_FLASH_HAS_EEPROM (0) 173 /* @brief EEPROM start address. */ 174 #define FSL_FEATURE_FLASH_EEPROM_START_ADDRESS (0x10000000) 175 /* @brief EEPROM block count. */ 176 #define FSL_FEATURE_FLASH_EEPROM_BLOCK_COUNT (0) 177 /* @brief EEPROM block size . */ 178 #define FSL_FEATURE_FLASH_EEPROM_BLOCK_SIZE (0) 179 /* @brief EEPROM sector size. */ 180 #define FSL_FEATURE_FLASH_EEPROM_BLOCK_SECTOR_SIZE (0) 181 /* @brief EEPROM write unit size. */ 182 #define FSL_FEATURE_FLASH_EEPROM_BLOCK_WRITE_UNIT_SIZE (0) 183 /* @brief EEPROM data path width. */ 184 #define FSL_FEATURE_FLASH_EEPROM_BLOCK_DATA_PATH_WIDTH (0) 185 /* @brief Has 0x01 Erase Verify All Blocks command. */ 186 #define FSL_FEATURE_FLASH_HAS_ERASE_VERIFY_ALL_BLOCKS_CMD (1) 187 /* @brief Has 0x02 Erase Verify Block command. */ 188 #define FSL_FEATURE_FLASH_HAS_ERASE_VERIFY_BLOCK_CMD (1) 189 /* @brief Has 0x03 Erase Verify Flash Section command. */ 190 #define FSL_FEATURE_FLASH_HAS_ERASE_VERIFY_FLASH_SECTION_CMD (1) 191 /* @brief Has 0x04 Read Once command. */ 192 #define FSL_FEATURE_FLASH_HAS_READ_ONCE_CMD (1) 193 /* @brief Has 0x06 Program Flash command. */ 194 #define FSL_FEATURE_FLASH_HAS_PROGRAM_FLASH_CMD (1) 195 /* @brief Has 0x07 Program Once command. */ 196 #define FSL_FEATURE_FLASH_HAS_PROGRAM_ONCE_CMD (1) 197 /* @brief Has 0x08 Erase All Blocks command. */ 198 #define FSL_FEATURE_FLASH_HAS_ERASE_ALL_BLOCKS_CMD (1) 199 /* @brief Has 0x09 Erase Flash Block command. */ 200 #define FSL_FEATURE_FLASH_HAS_ERASE_FLASH_BLOCK_CMD (1) 201 /* @brief Has 0x0A Erase Flash Sector command. */ 202 #define FSL_FEATURE_FLASH_HAS_ERASE_FLASH_SECTOR_CMD (1) 203 /* @brief Has 0x0B Unsecure Flash command. */ 204 #define FSL_FEATURE_FLASH_HAS_UNSECURE_FLASH_CMD (1) 205 /* @brief Has 0x0C Verify Backdoor Access Key command. */ 206 #define FSL_FEATURE_FLASH_HAS_VERIFY_BACKDOOR_ACCESS_KEY_CMD (1) 207 /* @brief Has 0x0D Set User Margin Level command. */ 208 #define FSL_FEATURE_FLASH_HAS_SET_USER_MARGIN_LEVEL_CMD (1) 209 /* @brief Has 0x0E Set Factory Margin Level command. */ 210 #define FSL_FEATURE_FLASH_HAS_SET_FACTORY_MARGIN_LEVEL_CMD (1) 211 /* @brief Has 0x0F Configure NVM command. */ 212 #define FSL_FEATURE_FLASH_HAS_CONFIGURE_NVM_CMD (1) 213 /* @brief Has 0x10 Erase Verify EEPROM Section command. */ 214 #define FSL_FEATURE_FLASH_HAS_ERASE_VERIFY_EEPROM_SECTION_CMD (0) 215 /* @brief Has 0x11 Program EEPROM command. */ 216 #define FSL_FEATURE_FLASH_HAS_PROGRAM_EEPROM_CMD (0) 217 /* @brief Has 0x12 Erase EEPROM Sector command. */ 218 #define FSL_FEATURE_FLASH_HAS_ERASE_EEPROM_SECTOR_CMD (0) 219 /* @brief P-Flash Erase sector command address alignment. */ 220 #define FSL_FEATURE_FLASH_PFLASH_SECTOR_CMD_ADDRESS_ALIGMENT (4) 221 /* @brief P-Flash Rrogram/Verify section command address alignment. */ 222 #define FSL_FEATURE_FLASH_PFLASH_SECTION_CMD_ADDRESS_ALIGMENT (4) 223 /* @brief P-Flash Program flash command address alignment. */ 224 #define FSL_FEATURE_FLASH_PFLASH_PROGRAM_CMD_ADDRESS_ALIGMENT (4) 225 #elif defined(CPU_MKE04Z64VLD4) || defined(CPU_MKE04Z64VLH4) || defined(CPU_MKE04Z64VLK4) || defined(CPU_MKE04Z64VQH4) 226 /* @brief Is of type FTMRE. */ 227 #define FSL_FEATURE_FLASH_IS_FTMRE (1) 228 /* @brief Is of type FTMRH. */ 229 #define FSL_FEATURE_FLASH_IS_FTMRH (0) 230 /* @brief Has EEPROM region protection (register FEPROT). */ 231 #define FSL_FEATURE_FLASH_HAS_EEROM_REGION_PROTECTION (0) 232 /* @brief Has flash cache control in FMC module. */ 233 #define FSL_FEATURE_FLASH_HAS_FMC_FLASH_CACHE_CONTROLS (0) 234 /* @brief Has flash cache control in MCM module. */ 235 #define FSL_FEATURE_FLASH_HAS_MCM_FLASH_CACHE_CONTROLS (1) 236 /* @brief P-Flash higher region start address. */ 237 #define FSL_FEATURE_FLASH_PFLASH_HIGH_START_ADDRESS (0x00007FFF) 238 /* @brief P-Flash start address. */ 239 #define FSL_FEATURE_FLASH_PFLASH_START_ADDRESS (0x00000000) 240 /* @brief P-Flash block count. */ 241 #define FSL_FEATURE_FLASH_PFLASH_BLOCK_COUNT (1) 242 /* @brief P-Flash block size. */ 243 #define FSL_FEATURE_FLASH_PFLASH_BLOCK_SIZE (65536) 244 /* @brief P-Flash sector size. */ 245 #define FSL_FEATURE_FLASH_PFLASH_BLOCK_SECTOR_SIZE (512) 246 /* @brief P-Flash write unit size. */ 247 #define FSL_FEATURE_FLASH_PFLASH_BLOCK_WRITE_UNIT_SIZE (8) 248 /* @brief P-Flash data path width. */ 249 #define FSL_FEATURE_FLASH_PFLASH_BLOCK_DATA_PATH_WIDTH (16) 250 /* @brief Has EEPROM memory. */ 251 #define FSL_FEATURE_FLASH_HAS_EEPROM (0) 252 /* @brief EEPROM start address. */ 253 #define FSL_FEATURE_FLASH_EEPROM_START_ADDRESS (0x10000000) 254 /* @brief EEPROM block count. */ 255 #define FSL_FEATURE_FLASH_EEPROM_BLOCK_COUNT (0) 256 /* @brief EEPROM block size . */ 257 #define FSL_FEATURE_FLASH_EEPROM_BLOCK_SIZE (0) 258 /* @brief EEPROM sector size. */ 259 #define FSL_FEATURE_FLASH_EEPROM_BLOCK_SECTOR_SIZE (0) 260 /* @brief EEPROM write unit size. */ 261 #define FSL_FEATURE_FLASH_EEPROM_BLOCK_WRITE_UNIT_SIZE (0) 262 /* @brief EEPROM data path width. */ 263 #define FSL_FEATURE_FLASH_EEPROM_BLOCK_DATA_PATH_WIDTH (0) 264 /* @brief Has 0x01 Erase Verify All Blocks command. */ 265 #define FSL_FEATURE_FLASH_HAS_ERASE_VERIFY_ALL_BLOCKS_CMD (1) 266 /* @brief Has 0x02 Erase Verify Block command. */ 267 #define FSL_FEATURE_FLASH_HAS_ERASE_VERIFY_BLOCK_CMD (1) 268 /* @brief Has 0x03 Erase Verify Flash Section command. */ 269 #define FSL_FEATURE_FLASH_HAS_ERASE_VERIFY_FLASH_SECTION_CMD (1) 270 /* @brief Has 0x04 Read Once command. */ 271 #define FSL_FEATURE_FLASH_HAS_READ_ONCE_CMD (1) 272 /* @brief Has 0x06 Program Flash command. */ 273 #define FSL_FEATURE_FLASH_HAS_PROGRAM_FLASH_CMD (1) 274 /* @brief Has 0x07 Program Once command. */ 275 #define FSL_FEATURE_FLASH_HAS_PROGRAM_ONCE_CMD (1) 276 /* @brief Has 0x08 Erase All Blocks command. */ 277 #define FSL_FEATURE_FLASH_HAS_ERASE_ALL_BLOCKS_CMD (1) 278 /* @brief Has 0x09 Erase Flash Block command. */ 279 #define FSL_FEATURE_FLASH_HAS_ERASE_FLASH_BLOCK_CMD (1) 280 /* @brief Has 0x0A Erase Flash Sector command. */ 281 #define FSL_FEATURE_FLASH_HAS_ERASE_FLASH_SECTOR_CMD (1) 282 /* @brief Has 0x0B Unsecure Flash command. */ 283 #define FSL_FEATURE_FLASH_HAS_UNSECURE_FLASH_CMD (1) 284 /* @brief Has 0x0C Verify Backdoor Access Key command. */ 285 #define FSL_FEATURE_FLASH_HAS_VERIFY_BACKDOOR_ACCESS_KEY_CMD (1) 286 /* @brief Has 0x0D Set User Margin Level command. */ 287 #define FSL_FEATURE_FLASH_HAS_SET_USER_MARGIN_LEVEL_CMD (1) 288 /* @brief Has 0x0E Set Factory Margin Level command. */ 289 #define FSL_FEATURE_FLASH_HAS_SET_FACTORY_MARGIN_LEVEL_CMD (1) 290 /* @brief Has 0x0F Configure NVM command. */ 291 #define FSL_FEATURE_FLASH_HAS_CONFIGURE_NVM_CMD (1) 292 /* @brief Has 0x10 Erase Verify EEPROM Section command. */ 293 #define FSL_FEATURE_FLASH_HAS_ERASE_VERIFY_EEPROM_SECTION_CMD (0) 294 /* @brief Has 0x11 Program EEPROM command. */ 295 #define FSL_FEATURE_FLASH_HAS_PROGRAM_EEPROM_CMD (0) 296 /* @brief Has 0x12 Erase EEPROM Sector command. */ 297 #define FSL_FEATURE_FLASH_HAS_ERASE_EEPROM_SECTOR_CMD (0) 298 /* @brief P-Flash Erase sector command address alignment. */ 299 #define FSL_FEATURE_FLASH_PFLASH_SECTOR_CMD_ADDRESS_ALIGMENT (4) 300 /* @brief P-Flash Rrogram/Verify section command address alignment. */ 301 #define FSL_FEATURE_FLASH_PFLASH_SECTION_CMD_ADDRESS_ALIGMENT (4) 302 /* @brief P-Flash Program flash command address alignment. */ 303 #define FSL_FEATURE_FLASH_PFLASH_PROGRAM_CMD_ADDRESS_ALIGMENT (4) 304 #endif /* defined(CPU_MKE04Z128VLD4) || defined(CPU_MKE04Z128VLH4) || defined(CPU_MKE04Z128VLK4) || defined(CPU_MKE04Z128VQH4) */ 305 306 /* GPIO module features */ 307 308 /* @brief Has GPIO attribute checker register (GACR). */ 309 #define FSL_FEATURE_GPIO_HAS_ATTRIBUTE_CHECKER (0) 310 311 /* I2C module features */ 312 313 /* @brief Has System Management Bus support (registers SMB, A2, SLTL and SLTH). */ 314 #define FSL_FEATURE_I2C_HAS_SMBUS (1) 315 /* @brief Maximum supported baud rate in kilobit per second. */ 316 #define FSL_FEATURE_I2C_MAX_BAUD_KBPS (400) 317 /* @brief Is affected by errata with ID 6070 (repeat start cannot be generated if the F[MULT] bit field is set to a non-zero value). */ 318 #define FSL_FEATURE_I2C_HAS_ERRATA_6070 (0) 319 /* @brief Has DMA support (register bit C1[DMAEN]). */ 320 #define FSL_FEATURE_I2C_HAS_DMA_SUPPORT (0) 321 /* @brief Has I2C bus start and stop detection (register bits FLT[SSIE], FLT[STARTF] and FLT[STOPF]). */ 322 #define FSL_FEATURE_I2C_HAS_START_STOP_DETECT (1) 323 /* @brief Has I2C bus stop detection (register bits FLT[STOPIE] and FLT[STOPF]). */ 324 #define FSL_FEATURE_I2C_HAS_STOP_DETECT (0) 325 /* @brief Has I2C bus stop hold off (register bit FLT[SHEN]). */ 326 #define FSL_FEATURE_I2C_HAS_STOP_HOLD_OFF (1) 327 /* @brief Maximum width of the glitch filter in number of bus clocks. */ 328 #define FSL_FEATURE_I2C_MAX_GLITCH_FILTER_WIDTH (15) 329 /* @brief Has control of the drive capability of the I2C pins. */ 330 #define FSL_FEATURE_I2C_HAS_HIGH_DRIVE_SELECTION (0) 331 /* @brief Has double buffering support (register S2). */ 332 #define FSL_FEATURE_I2C_HAS_DOUBLE_BUFFERING (0) 333 /* @brief Has double buffer enable. */ 334 #define FSL_FEATURE_I2C_HAS_DOUBLE_BUFFER_ENABLE (0) 335 336 /* KBI module features */ 337 338 /* @brief KBI module has source pin. */ 339 #define FSL_FEATURE_KBI_HAS_SOURCE_PIN (1) 340 /* @brief KBI register width. */ 341 #define FSL_FEATURE_KBI_REG_WIDTH (32) 342 343 /* PIT module features */ 344 345 /* @brief Number of channels (related to number of registers LDVALn, CVALn, TCTRLn, TFLGn). */ 346 #define FSL_FEATURE_PIT_TIMER_COUNT (2) 347 /* @brief Has lifetime timer (related to existence of registers LTMR64L and LTMR64H). */ 348 #define FSL_FEATURE_PIT_HAS_LIFETIME_TIMER (0) 349 /* @brief Has chain mode (related to existence of register bit field TCTRLn[CHN]). */ 350 #define FSL_FEATURE_PIT_HAS_CHAIN_MODE (1) 351 /* @brief Has shared interrupt handler (has not individual interrupt handler for each channel). */ 352 #define FSL_FEATURE_PIT_HAS_SHARED_IRQ_HANDLER (0) 353 /* @brief Has timer enable control. */ 354 #define FSL_FEATURE_PIT_HAS_MDIS (1) 355 356 /* SPI module features */ 357 358 /* @brief Capacity (number of entries) of the transmit/receive FIFO (or zero if no FIFO is available). */ 359 #define FSL_FEATURE_SPI_HAS_FIFO (0) 360 /* @brief Has DMA support (register bit fields C2[RXDMAE] and C2[TXDMAE]). */ 361 #define FSL_FEATURE_SPI_HAS_DMA_SUPPORT (0) 362 /* @brief Has separate DMA RX and TX requests. */ 363 #define FSL_FEATURE_SPI_HAS_SEPARATE_DMA_RX_TX_REQn(x) (0) 364 /* @brief Receive/transmit FIFO size in number of 16-bit communication items. */ 365 #define FSL_FEATURE_SPI_FIFO_SIZEn(x) (0) 366 /* @brief Maximum transfer data width in bits. */ 367 #define FSL_FEATURE_SPI_MAX_DATA_WIDTH (8) 368 /* @brief The data register name has postfix (L as low and H as high). */ 369 #define FSL_FEATURE_SPI_DATA_REGISTER_HAS_POSTFIX (0) 370 /* @brief Has separated TXDATA and CMD FIFOs (register SREX). */ 371 #define FSL_FEATURE_SPI_HAS_SEPARATE_TXDATA_CMD_FIFO (0) 372 /* @brief Has 16-bit data transfer support. */ 373 #define FSL_FEATURE_SPI_16BIT_TRANSFERS (0) 374 375 /* UART module features */ 376 377 /* @brief Has receive FIFO overflow detection (bit field CFIFO[RXOFE]). */ 378 #define FSL_FEATURE_UART_HAS_IRQ_EXTENDED_FUNCTIONS (1) 379 /* @brief Has low power features (can be enabled in wait mode via register bit C1[DOZEEN] or CTRL[DOZEEN] if the registers are 32-bit wide). */ 380 #define FSL_FEATURE_UART_HAS_LOW_POWER_UART_SUPPORT (0) 381 /* @brief Has extended data register ED (or extra flags in the DATA register if the registers are 32-bit wide). */ 382 #define FSL_FEATURE_UART_HAS_EXTENDED_DATA_REGISTER_FLAGS (0) 383 /* @brief Capacity (number of entries) of the transmit/receive FIFO (or zero if no FIFO is available). */ 384 #define FSL_FEATURE_UART_HAS_FIFO (0) 385 /* @brief Hardware flow control (RTS, CTS) is supported. */ 386 #define FSL_FEATURE_UART_HAS_MODEM_SUPPORT (0) 387 /* @brief Infrared (modulation) is supported. */ 388 #define FSL_FEATURE_UART_HAS_IR_SUPPORT (0) 389 /* @brief 2 bits long stop bit is available. */ 390 #define FSL_FEATURE_UART_HAS_STOP_BIT_CONFIG_SUPPORT (1) 391 /* @brief If 10-bit mode is supported. */ 392 #define FSL_FEATURE_UART_HAS_10BIT_DATA_SUPPORT (0) 393 /* @brief Baud rate fine adjustment is available. */ 394 #define FSL_FEATURE_UART_HAS_BAUD_RATE_FINE_ADJUST_SUPPORT (0) 395 /* @brief Baud rate oversampling is available (has bit fields C4[OSR], C5[BOTHEDGE], C5[RESYNCDIS] or BAUD[OSR], BAUD[BOTHEDGE], BAUD[RESYNCDIS] if the registers are 32-bit wide). */ 396 #define FSL_FEATURE_UART_HAS_BAUD_RATE_OVER_SAMPLING_SUPPORT (0) 397 /* @brief Baud rate oversampling is available. */ 398 #define FSL_FEATURE_UART_HAS_RX_RESYNC_SUPPORT (1) 399 /* @brief Baud rate oversampling is available. */ 400 #define FSL_FEATURE_UART_HAS_BOTH_EDGE_SAMPLING_SUPPORT (1) 401 /* @brief Peripheral type. */ 402 #define FSL_FEATURE_UART_IS_SCI (0) 403 /* @brief Capacity (number of entries) of the transmit/receive FIFO (or zero if no FIFO is available). */ 404 #define FSL_FEATURE_UART_FIFO_SIZE (0) 405 /* @brief Supports two match addresses to filter incoming frames. */ 406 #define FSL_FEATURE_UART_HAS_ADDRESS_MATCHING (0) 407 /* @brief Has transmitter/receiver DMA enable bits C5[TDMAE]/C5[RDMAE] (or BAUD[TDMAE]/BAUD[RDMAE] if the registers are 32-bit wide). */ 408 #define FSL_FEATURE_UART_HAS_DMA_ENABLE (0) 409 /* @brief Has transmitter/receiver DMA select bits C4[TDMAS]/C4[RDMAS], resp. C5[TDMAS]/C5[RDMAS] if IS_SCI = 0. */ 410 #define FSL_FEATURE_UART_HAS_DMA_SELECT (0) 411 /* @brief Data character bit order selection is supported (bit field S2[MSBF] or STAT[MSBF] if the registers are 32-bit wide). */ 412 #define FSL_FEATURE_UART_HAS_BIT_ORDER_SELECT (0) 413 /* @brief Has smart card (ISO7816 protocol) support and no improved smart card support. */ 414 #define FSL_FEATURE_UART_HAS_SMART_CARD_SUPPORT (0) 415 /* @brief Has improved smart card (ISO7816 protocol) support. */ 416 #define FSL_FEATURE_UART_HAS_IMPROVED_SMART_CARD_SUPPORT (0) 417 /* @brief Has local operation network (CEA709.1-B protocol) support. */ 418 #define FSL_FEATURE_UART_HAS_LOCAL_OPERATION_NETWORK_SUPPORT (0) 419 /* @brief Has 32-bit registers (BAUD, STAT, CTRL, DATA, MATCH, MODIR) instead of 8-bit (BDH, BDL, C1, S1, D, etc.). */ 420 #define FSL_FEATURE_UART_HAS_32BIT_REGISTERS (0) 421 /* @brief Lin break detect available (has bit BDH[LBKDIE]). */ 422 #define FSL_FEATURE_UART_HAS_LIN_BREAK_DETECT (1) 423 /* @brief UART stops in Wait mode available (has bit C1[UARTSWAI]). */ 424 #define FSL_FEATURE_UART_HAS_WAIT_MODE_OPERATION (1) 425 /* @brief Has separate DMA RX and TX requests. */ 426 #define FSL_FEATURE_UART_HAS_SEPARATE_DMA_RX_TX_REQn(x) (0) 427 428 #endif /* _MKE04Z1284_FEATURES_H_ */ 429 430