1# Copyright 2025 NXP 2# 3# SPDX-License-Identifier: Apache-2.0 4 5# fsl_common driver 6zephyr_library_sources(${MCUX_SDK_NG_DIR}/drivers/common/fsl_common.c) 7zephyr_include_directories(${MCUX_SDK_NG_DIR}/drivers/common) 8 9if(CONFIG_ARCH STREQUAL "xtensa") 10 zephyr_library_sources(${MCUX_SDK_NG_DIR}/drivers/common/fsl_common_dsp.c) 11elseif(CONFIG_ARCH STREQUAL "arm") 12 zephyr_library_sources(${MCUX_SDK_NG_DIR}/drivers/common/fsl_common_arm.c) 13endif() 14 15set_variable_ifdef(CONFIG_HWINFO_MCUX_SRC_V2 CONFIG_MCUX_COMPONENT_driver.src_2) 16set_variable_ifdef(CONFIG_GPIO_MCUX_IGPIO CONFIG_MCUX_COMPONENT_driver.igpio) 17set_variable_ifdef(CONFIG_ADC_MCUX_LPADC CONFIG_MCUX_COMPONENT_driver.lpadc) 18set_variable_ifdef(CONFIG_COUNTER_MCUX_CTIMER CONFIG_MCUX_COMPONENT_driver.ctimer) 19set_variable_ifdef(CONFIG_COUNTER_MCUX_LPC_RTC CONFIG_MCUX_COMPONENT_driver.lpc_rtc) 20set_variable_ifdef(CONFIG_GLIKEY_MCUX_GLIKEY CONFIG_MCUX_COMPONENT_driver.glikey) 21 22if(CONFIG_NXP_LP_FLEXCOMM) 23 set_variable_ifdef(CONFIG_I2C_MCUX_LPI2C CONFIG_MCUX_COMPONENT_driver.lpflexcomm) 24 set_variable_ifdef(CONFIG_I2C_MCUX_LPI2C CONFIG_MCUX_COMPONENT_driver.lpflexcomm_lpi2c) 25 set_variable_ifdef(CONFIG_UART_MCUX_LPUART CONFIG_MCUX_COMPONENT_driver.lpflexcomm) 26 set_variable_ifdef(CONFIG_UART_MCUX_LPUART CONFIG_MCUX_COMPONENT_driver.lpflexcomm_lpuart) 27else() 28 set_variable_ifdef(CONFIG_I2C_MCUX_LPI2C CONFIG_MCUX_COMPONENT_driver.lpi2c) 29 set_variable_ifdef(CONFIG_UART_MCUX_LPUART CONFIG_MCUX_COMPONENT_driver.lpuart) 30endif() 31 32set_variable_ifdef(CONFIG_DMA_MCUX_LPC CONFIG_MCUX_COMPONENT_driver.lpc_dma) 33set_variable_ifdef(CONFIG_GPIO_MCUX_LPC CONFIG_MCUX_COMPONENT_driver.lpc_gpio) 34set_variable_ifdef(CONFIG_NXP_PINT CONFIG_MCUX_COMPONENT_driver.pint) 35set_variable_ifdef(CONFIG_NXP_INPUTMUX CONFIG_MCUX_COMPONENT_driver.inputmux) 36set_variable_ifdef(CONFIG_I2C_MCUX_FLEXCOMM CONFIG_MCUX_COMPONENT_driver.flexcomm) 37set_variable_ifdef(CONFIG_I2C_MCUX_FLEXCOMM CONFIG_MCUX_COMPONENT_driver.flexcomm_i2c) 38set_variable_ifdef(CONFIG_I2S_MCUX_FLEXCOMM CONFIG_MCUX_COMPONENT_driver.flexcomm) 39set_variable_ifdef(CONFIG_I2S_MCUX_FLEXCOMM CONFIG_MCUX_COMPONENT_driver.flexcomm_i2s) 40set_variable_ifdef(CONFIG_SPI_MCUX_FLEXCOMM CONFIG_MCUX_COMPONENT_driver.flexcomm) 41set_variable_ifdef(CONFIG_SPI_MCUX_FLEXCOMM CONFIG_MCUX_COMPONENT_driver.flexcomm_spi) 42set_variable_ifdef(CONFIG_UART_MCUX_FLEXCOMM CONFIG_MCUX_COMPONENT_driver.flexcomm) 43set_variable_ifdef(CONFIG_UART_MCUX_FLEXCOMM CONFIG_MCUX_COMPONENT_driver.flexcomm_usart) 44set_variable_ifdef(CONFIG_MCUX_OS_TIMER CONFIG_MCUX_COMPONENT_driver.ostimer) 45set_variable_ifdef(CONFIG_PWM_MCUX_SCTIMER CONFIG_MCUX_COMPONENT_driver.sctimer) 46set_variable_ifdef(CONFIG_PWM_MCUX_CTIMER CONFIG_MCUX_COMPONENT_driver.ctimer) 47set_variable_ifdef(CONFIG_SOC_FLASH_LPC CONFIG_MCUX_COMPONENT_driver.flashiap) 48set_variable_ifdef(CONFIG_WDT_MCUX_WWDT CONFIG_MCUX_COMPONENT_driver.wwdt) 49set_variable_ifdef(CONFIG_ADC_MCUX_ADC12 CONFIG_MCUX_COMPONENT_driver.adc12) 50set_variable_ifdef(CONFIG_ADC_MCUX_ADC16 CONFIG_MCUX_COMPONENT_driver.adc16) 51set_variable_ifdef(CONFIG_CAN_MCUX_FLEXCAN CONFIG_MCUX_COMPONENT_driver.flexcan) 52set_variable_ifdef(CONFIG_CAN_MCUX_FLEXCAN_FD CONFIG_MCUX_COMPONENT_driver.flexcan) 53set_variable_ifdef(CONFIG_COUNTER_NXP_PIT CONFIG_MCUX_COMPONENT_driver.pit) 54set_variable_ifdef(CONFIG_COUNTER_MCUX_RTC CONFIG_MCUX_COMPONENT_driver.rtc) 55set_variable_ifdef(CONFIG_DAC_MCUX_DAC CONFIG_MCUX_COMPONENT_driver.dac) 56set_variable_ifdef(CONFIG_DAC_MCUX_DAC12 CONFIG_MCUX_COMPONENT_driver.dac12) 57set_variable_ifdef(CONFIG_DAC_MCUX_DAC32 CONFIG_MCUX_COMPONENT_driver.dac32) 58set_variable_ifdef(CONFIG_DMA_MCUX_EDMA CONFIG_MCUX_COMPONENT_driver.dmamux) 59set_variable_ifdef(CONFIG_DMA_MCUX_EDMA_V3 CONFIG_MCUX_COMPONENT_driver.dmamux) 60set_variable_ifdef(CONFIG_DMA_MCUX_EDMA CONFIG_MCUX_COMPONENT_driver.edma) 61set_variable_ifdef(CONFIG_DMA_MCUX_EDMA_V3 CONFIG_MCUX_COMPONENT_driver.dma3) 62set_variable_ifdef(CONFIG_DMA_MCUX_EDMA_V4 CONFIG_MCUX_COMPONENT_driver.edma4) 63set_variable_ifdef(CONFIG_DMA_NXP_EDMA CONFIG_MCUX_COMPONENT_driver.edma_rev2) 64set_variable_ifdef(CONFIG_DMA_MCUX_EDMA_V5 CONFIG_MCUX_COMPONENT_driver.edma4) 65set_variable_ifdef(CONFIG_ENTROPY_MCUX_RNGA CONFIG_MCUX_COMPONENT_driver.rnga) 66set_variable_ifdef(CONFIG_ENTROPY_MCUX_TRNG CONFIG_MCUX_COMPONENT_driver.trng) 67set_variable_ifdef(CONFIG_ENTROPY_MCUX_CAAM CONFIG_MCUX_COMPONENT_driver.caam) 68set_variable_ifdef(CONFIG_ETH_NXP_ENET CONFIG_MCUX_COMPONENT_driver.enet) 69set_variable_ifdef(CONFIG_SOC_SERIES_KINETIS_K2X CONFIG_MCUX_COMPONENT_driver.smc) 70set_variable_ifdef(CONFIG_I2C_MCUX CONFIG_MCUX_COMPONENT_driver.i2c) 71set_variable_ifdef(CONFIG_I2C_NXP_II2C CONFIG_MCUX_COMPONENT_driver.ii2c) 72set_variable_ifdef(CONFIG_I3C_MCUX CONFIG_MCUX_COMPONENT_driver.i3c) 73set_variable_ifdef(CONFIG_SENSOR_MCUX_ACMP CONFIG_MCUX_COMPONENT_driver.acmp) 74set_variable_ifdef(CONFIG_COMPARATOR_MCUX_ACMP CONFIG_MCUX_COMPONENT_driver.acmp) 75set_variable_ifdef(CONFIG_PWM_MCUX_FTM CONFIG_MCUX_COMPONENT_driver.ftm) 76set_variable_ifdef(CONFIG_PWM_MCUX_TPM CONFIG_MCUX_COMPONENT_driver.tpm) 77set_variable_ifdef(CONFIG_COUNTER_MCUX_TPM CONFIG_MCUX_COMPONENT_driver.tpm) 78set_variable_ifdef(CONFIG_QDEC_TPM CONFIG_MCUX_COMPONENT_driver.tpm) 79set_variable_ifdef(CONFIG_PWM_MCUX_PWT CONFIG_MCUX_COMPONENT_driver.pwt) 80set_variable_ifdef(CONFIG_COUNTER_MCUX_QTMR CONFIG_MCUX_COMPONENT_driver.qtmr_1) 81set_variable_ifdef(CONFIG_PWM_MCUX_QTMR CONFIG_MCUX_COMPONENT_driver.qtmr_1) 82set_variable_ifdef(CONFIG_SPI_MCUX_DSPI CONFIG_MCUX_COMPONENT_driver.dspi) 83set_variable_ifdef(CONFIG_SPI_MCUX_ECSPI CONFIG_MCUX_COMPONENT_driver.ecspi) 84set_variable_ifdef(CONFIG_MCUX_FLEXIO CONFIG_MCUX_COMPONENT_driver.flexio) 85set_variable_ifdef(CONFIG_SPI_MCUX_FLEXIO CONFIG_MCUX_COMPONENT_driver.flexio_spi) 86set_variable_ifdef(CONFIG_UART_MCUX CONFIG_MCUX_COMPONENT_driver.uart) 87set_variable_ifdef(CONFIG_UART_MCUX_LPSCI CONFIG_MCUX_COMPONENT_driver.lpsci) 88set_variable_ifdef(CONFIG_WDT_MCUX_WDOG CONFIG_MCUX_COMPONENT_driver.wdog) 89set_variable_ifdef(CONFIG_WDT_MCUX_WDOG32 CONFIG_MCUX_COMPONENT_driver.wdog32) 90set_variable_ifdef(CONFIG_COUNTER_MCUX_GPT CONFIG_MCUX_COMPONENT_driver.gpt) 91set_variable_ifdef(CONFIG_MCUX_GPT_TIMER CONFIG_MCUX_COMPONENT_driver.gpt) 92set_variable_ifdef(CONFIG_COUNTER_MCUX_LPIT CONFIG_MCUX_COMPONENT_driver.lpit) 93set_variable_ifdef(CONFIG_DISPLAY_MCUX_ELCDIF CONFIG_MCUX_COMPONENT_driver.elcdif) 94set_variable_ifdef(CONFIG_MCUX_PXP CONFIG_MCUX_COMPONENT_driver.pxp) 95set_variable_ifdef(CONFIG_LV_USE_GPU_NXP_PXP CONFIG_MCUX_COMPONENT_driver.pxp) 96set_variable_ifdef(CONFIG_GPIO_MCUX_RGPIO CONFIG_MCUX_COMPONENT_driver.rgpio) 97set_variable_ifdef(CONFIG_I2S_MCUX_SAI CONFIG_MCUX_COMPONENT_driver.sai) 98set_variable_ifdef(CONFIG_DAI_NXP_SAI CONFIG_MCUX_COMPONENT_driver.sai) 99set_variable_ifdef(CONFIG_MEMC_MCUX_FLEXSPI CONFIG_MCUX_COMPONENT_driver.flexspi) 100set_variable_ifdef(CONFIG_PWM_MCUX CONFIG_MCUX_COMPONENT_driver.pwm) 101set_variable_ifdef(CONFIG_VIDEO_MCUX_CSI CONFIG_MCUX_COMPONENT_driver.csi) 102set_variable_ifdef(CONFIG_WDT_MCUX_IMX_WDOG CONFIG_MCUX_COMPONENT_driver.wdog01) 103set_variable_ifdef(CONFIG_WDT_MCUX_RTWDOG CONFIG_MCUX_COMPONENT_driver.rtwdog) 104set_variable_ifdef(CONFIG_HAS_MCUX_RDC CONFIG_MCUX_COMPONENT_driver.rdc) 105set_variable_ifdef(CONFIG_UART_MCUX_IUART CONFIG_MCUX_COMPONENT_driver.iuart) 106set_variable_ifdef(CONFIG_ADC_MCUX_12B1MSPS_SAR CONFIG_MCUX_COMPONENT_driver.adc_12b1msps_sar) 107set_variable_ifdef(CONFIG_HWINFO_MCUX_MCX_CMC CONFIG_MCUX_COMPONENT_driver.mcx_cmc) 108set_variable_ifdef(CONFIG_HWINFO_MCUX_SRC CONFIG_MCUX_COMPONENT_driver.src) 109set_variable_ifdef(CONFIG_HWINFO_MCUX_SIM CONFIG_MCUX_COMPONENT_driver.sim) 110set_variable_ifdef(CONFIG_HWINFO_MCUX_RCM CONFIG_MCUX_COMPONENT_driver.rcm) 111set_variable_ifdef(CONFIG_IPM_MCUX CONFIG_MCUX_COMPONENT_driver.mailbox) 112set_variable_ifdef(CONFIG_MBOX_NXP_MAILBOX CONFIG_MCUX_COMPONENT_driver.mailbox) 113set_variable_ifdef(CONFIG_COUNTER_MCUX_SNVS CONFIG_MCUX_COMPONENT_driver.snvs_hp) 114set_variable_ifdef(CONFIG_MCUX_LPTMR_TIMER CONFIG_MCUX_COMPONENT_driver.lptmr) 115set_variable_ifdef(CONFIG_COUNTER_MCUX_LPTMR CONFIG_MCUX_COMPONENT_driver.lptmr) 116set_variable_ifdef(CONFIG_IMX_USDHC CONFIG_MCUX_COMPONENT_driver.usdhc) 117set_variable_ifdef(CONFIG_MIPI_DSI_MCUX CONFIG_MCUX_COMPONENT_driver.mipi_dsi_split) 118set_variable_ifdef(CONFIG_MIPI_DSI_MCUX_2L CONFIG_MCUX_COMPONENT_driver.mipi_dsi) 119set_variable_ifdef(CONFIG_MCUX_SDIF CONFIG_MCUX_COMPONENT_driver.sdif) 120set_variable_ifdef(CONFIG_MCUX_XBARA CONFIG_MCUX_COMPONENT_driver.xbara) 121set_variable_ifdef(CONFIG_MCUX_XBARB CONFIG_MCUX_COMPONENT_driver.xbarb) 122set_variable_ifdef(CONFIG_QDEC_MCUX CONFIG_MCUX_COMPONENT_driver.enc) 123set_variable_ifdef(CONFIG_CRYPTO_MCUX_DCP CONFIG_MCUX_COMPONENT_driver.dcp) 124set_variable_ifdef(CONFIG_DAC_MCUX_LPDAC CONFIG_MCUX_COMPONENT_driver.dac_1) 125set_variable_ifdef(CONFIG_NXP_IRQSTEER CONFIG_MCUX_COMPONENT_driver.irqsteer) 126set_variable_ifdef(CONFIG_AUDIO_DMIC_MCUX CONFIG_MCUX_COMPONENT_driver.dmic) 127set_variable_ifdef(CONFIG_DMA_NXP_SDMA CONFIG_MCUX_COMPONENT_driver.sdma) 128set_variable_ifdef(CONFIG_ADC_MCUX_GAU CONFIG_MCUX_COMPONENT_driver.cns_adc) 129set_variable_ifdef(CONFIG_DAC_MCUX_GAU CONFIG_MCUX_COMPONENT_driver.cns_dac) 130set_variable_ifdef(CONFIG_DAI_NXP_ESAI CONFIG_MCUX_COMPONENT_driver.esai) 131set_variable_ifdef(CONFIG_MCUX_LPCMP CONFIG_MCUX_COMPONENT_driver.lpcmp) 132set_variable_ifdef(CONFIG_NXP_RF_IMU CONFIG_MCUX_COMPONENT_driver.imu) 133set_variable_ifdef(CONFIG_TRDC_MCUX_TRDC CONFIG_MCUX_COMPONENT_driver.trdc) 134set_variable_ifdef(CONFIG_S3MU_MCUX_S3MU CONFIG_MCUX_COMPONENT_driver.s3mu) 135set_variable_ifdef(CONFIG_DAI_NXP_MICFIL CONFIG_MCUX_COMPONENT_driver.pdm) 136set_variable_ifdef(CONFIG_PINCTRL_NXP_PORT CONFIG_MCUX_COMPONENT_driver.port) 137set_variable_ifdef(CONFIG_DMA_NXP_EDMA CONFIG_MCUX_COMPONENT_driver.edma_soc_rev2) 138set_variable_ifdef(CONFIG_COUNTER_MCUX_SNVS_SRTC CONFIG_MCUX_COMPONENT_driver.snvs_lp) 139set_variable_ifdef(CONFIG_DISPLAY_MCUX_DCNANO_LCDIF CONFIG_MCUX_COMPONENT_driver.lcdif) 140set_variable_ifdef(CONFIG_MIPI_DBI_NXP_DCNANO_LCDIF CONFIG_MCUX_COMPONENT_driver.lcdif) 141set_variable_ifdef(CONFIG_MIPI_DBI_NXP_FLEXIO_LCDIF CONFIG_MCUX_COMPONENT_driver.flexio_mculcd) 142set_variable_ifdef(CONFIG_VIDEO_MCUX_MIPI_CSI2RX CONFIG_MCUX_COMPONENT_driver.mipi_csi2rx) 143set_variable_ifdef(CONFIG_ETH_NXP_IMX_NETC CONFIG_MCUX_COMPONENT_driver.netc) 144if(NOT CONFIG_SOC_MIMX9596) 145 set_variable_ifdef(CONFIG_ETH_NXP_IMX_NETC CONFIG_MCUX_COMPONENT_driver.netc_switch) 146endif() 147 148set_variable_ifdef(CONFIG_SOC_SERIES_IMXRT10XX CONFIG_MCUX_COMPONENT_driver.ocotp) 149set_variable_ifdef(CONFIG_SOC_SERIES_IMXRT11XX CONFIG_MCUX_COMPONENT_driver.ocotp) 150set_variable_ifdef(CONFIG_SOC_FAMILY_KINETIS CONFIG_MCUX_COMPONENT_driver.port) 151set_variable_ifdef(CONFIG_SOC_FAMILY_MCXW CONFIG_MCUX_COMPONENT_driver.ccm32k) 152set_variable_ifdef(CONFIG_SOC_SERIES_IMXRT5XX CONFIG_MCUX_COMPONENT_driver.iap3) 153 154if(CONFIG_DMA_MCUX_SMARTDMA) 155 set(CONFIG_MCUX_COMPONENT_driver.smartdma ON) 156 set(CONFIG_MCUX_COMPONENT_driver.inputmux ON) 157 if(CONFIG_SOC_SERIES_IMXRT5XX) 158 set(CONFIG_MCUX_COMPONENT_driver.smartdma_rt500 ON) 159 endif() 160 if(CONFIG_SOC_FAMILY_MCXN) 161 set(CONFIG_MCUX_COMPONENT_driver.smartdma_mcxn ON) 162 endif() 163endif() 164 165if(CONFIG_ETH_NXP_IMX_NETC) 166 set_variable_ifdef(CONFIG_SOC_MIMXRT1189 CONFIG_MCUX_COMPONENT_driver.netc_rt1180) 167 set_variable_ifdef(CONFIG_SOC_MIMX9596 CONFIG_MCUX_COMPONENT_driver.netc_imx95) 168 set_variable_ifdef(CONFIG_SOC_MIMX94398 CONFIG_MCUX_COMPONENT_driver.netc_imx943) 169 170 if(CONFIG_SOC_MIMXRT1189 OR CONFIG_SOC_MIMX9596_M7 OR CONFIG_SOC_MIMX94398_M33) 171 set(CONFIG_MCUX_COMPONENT_driver.msgintr ON) 172 endif() 173 174 set_variable_ifdef(CONFIG_SOC_MIMX9596_M7 CONFIG_MCUX_COMPONENT_driver.irqsteer) 175endif() 176 177if(CONFIG_SOC_FAMILY_MCXN OR CONFIG_SOC_FAMILY_MCXA) 178 set(CONFIG_MCUX_COMPONENT_driver.mcx_spc ON) 179endif() 180 181if(CONFIG_BT_NXP AND CONFIG_SOC_FAMILY_MCXW OR CONFIG_IEEE802154_MCXW) 182 set(CONFIG_MCUX_COMPONENT_driver.spc ON) 183endif() 184 185if(((${MCUX_DEVICE} MATCHES "MIMXRT1[0-9][0-9][0-9]") AND (NOT (CONFIG_SOC_MIMXRT1166_CM4 OR CONFIG_SOC_MIMXRT1176_CM4 OR CONFIG_SOC_MIMXRT1189_CM33))) OR 186 ((${MCUX_DEVICE} MATCHES "MIMX9596") AND CONFIG_SOC_MIMX9596_M7)) 187 set_variable_ifdef(CONFIG_HAS_MCUX_CACHE CONFIG_MCUX_COMPONENT_driver.cache_armv7_m7) 188elseif((${MCUX_DEVICE} MATCHES "MIMXRT(5|6)") OR (${MCUX_DEVICE} MATCHES "RW61") OR (${MCUX_DEVICE} MATCHES "MCXN.4.")) 189 set_variable_ifdef(CONFIG_HAS_MCUX_CACHE CONFIG_MCUX_COMPONENT_driver.cache_cache64) 190elseif((${MCUX_DEVICE} MATCHES "MK(28|66)") OR (${MCUX_DEVICE} MATCHES "MKE(14|16|18)") OR (CONFIG_SOC_MIMXRT1166_CM4) OR (CONFIG_SOC_MIMXRT1176_CM4)) 191 set_variable_ifdef(CONFIG_HAS_MCUX_CACHE CONFIG_MCUX_COMPONENT_driver.cache_lmem) 192elseif(CONFIG_CPU_CORTEX_A) 193 set_variable_ifdef(CONFIG_HAS_MCUX_CACHE CONFIG_MCUX_COMPONENT_driver.cache_armv8_a) 194endif() 195 set_variable_ifdef(CONFIG_HAS_MCUX_XCACHE CONFIG_MCUX_COMPONENT_driver.cache_xcache) 196 197if((${MCUX_DEVICE} MATCHES "MIMX9596") OR (${MCUX_DEVICE} MATCHES "MIMX8UD7") OR (${MCUX_DEVICE} MATCHES "MIMXRT118") OR (CONFIG_SOC_MIMX94398) OR (CONFIG_SOC_MIMXRT798S)) 198 199 if(CONFIG_SOC_MIMX94398_M33) 200 set(CONFIG_MCUX_COMPONENT_driver.irqsteer_1 ON) 201 set(CONFIG_MCUX_COMPONENT_driver.irqsteer_1_soc.cm33_core1 ON) 202 endif() 203 204 set_variable_ifdef(CONFIG_IPM_IMX CONFIG_MCUX_COMPONENT_driver.mu1) 205 set_variable_ifdef(CONFIG_MBOX_NXP_IMX_MU CONFIG_MCUX_COMPONENT_driver.mu1) 206else() 207 set_variable_ifdef(CONFIG_IPM_IMX CONFIG_MCUX_COMPONENT_driver.mu) 208 set_variable_ifdef(CONFIG_MBOX_NXP_IMX_MU CONFIG_MCUX_COMPONENT_driver.mu) 209endif() 210 211if(CONFIG_SOC_FAMILY_KINETIS OR CONFIG_SOC_FAMILY_MCXC) 212 set_variable_ifdef(CONFIG_SOC_FLASH_MCUX CONFIG_MCUX_COMPONENT_driver.flash) 213endif() 214 215if(CONFIG_SOC_MK82F25615 OR CONFIG_SOC_MK64F12 OR CONFIG_SOC_MK66F18 OR 216 CONFIG_SOC_MKE14F16 OR CONFIG_SOC_MKE16F16 OR CONFIG_SOC_MKE18F16 OR 217 CONFIG_SOC_MK22F12) 218 set(CONFIG_MCUX_COMPONENT_driver.sysmpu ON) 219endif() 220 221if(CONFIG_SOC_FAMILY_MCXW OR CONFIG_SOC_MCXN947 OR CONFIG_SOC_MCXN547) 222 set_variable_ifdef(CONFIG_SOC_FLASH_MCUX CONFIG_MCUX_COMPONENT_driver.flash_k4) 223endif() 224 225if(CONFIG_SOC_SERIES_LPC51U68 OR CONFIG_SOC_SERIES_LPC54XXX) 226 set_variable_ifdef(CONFIG_SOC_FLASH_MCUX CONFIG_MCUX_COMPONENT_driver.iap) 227endif() 228 229if(CONFIG_SOC_SERIES_LPC51U68 OR CONFIG_SOC_SERIES_LPC54XXX) 230 set_variable_ifdef(CONFIG_ENTROPY_MCUX_RNG CONFIG_MCUX_COMPONENT_driver.rng) 231endif() 232 233if(CONFIG_SOC_SERIES_LPC55XXX) 234 set_variable_ifdef(CONFIG_ENTROPY_MCUX_RNG CONFIG_MCUX_COMPONENT_driver.rng_1) 235 if(CONFIG_SOC_LPC55S36) 236 set_variable_ifdef(CONFIG_SOC_FLASH_MCUX CONFIG_MCUX_COMPONENT_driver.romapi_flash) 237 else() 238 set_variable_ifdef(CONFIG_SOC_FLASH_MCUX CONFIG_MCUX_COMPONENT_driver.iap1) 239 endif() 240endif() 241 242if(CONFIG_SOC_SERIES_LPC51U68 OR CONFIG_SOC_SERIES_LPC54XXX OR CONFIG_SOC_SERIES_LPC55XXX) 243 set(CONFIG_MCUX_COMPONENT_driver.lpc_iocon ON) 244endif() 245 246if(CONFIG_SOC_LPC55S36) 247 set_variable_ifdef(CONFIG_ADC_MCUX_LPADC CONFIG_MCUX_COMPONENT_driver.vref_1) 248 set_variable_ifdef(CONFIG_DAC_MCUX_LPDAC CONFIG_MCUX_COMPONENT_driver.vref_1) 249endif() 250 251if(CONFIG_SOC_SERIES_IMXRT5XX OR CONFIG_SOC_SERIES_IMXRT6XX) 252 set(CONFIG_MCUX_COMPONENT_driver.lpc_iopctl ON) 253endif() 254 255if(CONFIG_SOC_SERIES_IMXRT7XX) 256 set_variable_ifdef(CONFIG_HWINFO_MCUX_RSTCTL CONFIG_MCUX_COMPONENT_driver.reset) 257endif() 258 259if(CONFIG_SOC_SERIES_RW6XX) 260 set(CONFIG_MCUX_COMPONENT_driver.ocotp_rw61x ON) 261endif() 262 263if(CONFIG_SOC_SERIES_IMXRT10XX) 264 set_variable_ifdef(CONFIG_PM_MCUX_GPC CONFIG_MCUX_COMPONENT_driver.gpc_1) 265 set_variable_ifdef(CONFIG_PM_MCUX_DCDC CONFIG_MCUX_COMPONENT_driver.dcdc_1) 266 set_variable_ifdef(CONFIG_PM_MCUX_PMU CONFIG_MCUX_COMPONENT_driver.pmu) 267endif() 268 269if(CONFIG_SOC_SERIES_IMXRT11XX) 270 set(CONFIG_MCUX_COMPONENT_driver.romapi ON) 271 set(CONFIG_MCUX_COMPONENT_driver.anadig_pmu ON) 272 set(CONFIG_MCUX_COMPONENT_driver.pgmc ON) 273 set(CONFIG_MCUX_COMPONENT_driver.dcdc_2 ON) 274 set(CONFIG_MCUX_COMPONENT_driver.anatop_ai ON) 275 set(CONFIG_MCUX_COMPONENT_driver.gpc_xxx_ctrl ON) 276 set_variable_ifdef(CONFIG_VIDEO_MCUX_MIPI_CSI2RX CONFIG_MCUX_COMPONENT_driver.mipi_csi2rx_soc) 277endif() 278 279if(CONFIG_SOC_SERIES_IMXRT118X) 280 set(CONFIG_MCUX_COMPONENT_driver.ele_base_api ON) 281 set(CONFIG_MCUX_COMPONENT_driver.anadig_pmu_1 ON) 282 set_variable_ifdef(CONFIG_HWINFO_MCUX_SRC_V2 CONFIG_MCUX_COMPONENT_driver.src_3) 283 set_variable_ifdef(CONFIG_WDT_MCUX_RTWDOG CONFIG_MCUX_COMPONENT_driver.src_3) 284endif() 285 286if(CONFIG_SOC_FAMILY_MCXA) 287 set(CONFIG_MCUX_COMPONENT_driver.romapi ON) 288endif() 289 290if(CONFIG_SOC_FAMILY_MCXN AND (NOT CONFIG_SOC_MCXN947) AND (NOT CONFIG_SOC_MCXN547)) 291 set_variable_ifdef(CONFIG_SOC_FLASH_MCUX CONFIG_MCUX_COMPONENT_driver.romapi_flashiap) 292endif() 293 294if(CONFIG_SOC_FAMILY_NXP_IMXRT) 295 set_variable_ifdef(CONFIG_ETH_NXP_ENET CONFIG_MCUX_COMPONENT_driver.ocotp) 296endif() 297 298set_variable_ifdef(CONFIG_SOC_FAMILY_MCXW CONFIG_MCUX_COMPONENT_driver.elemu) 299 300#specific operation to shared drivers 301if((DEFINED CONFIG_FLASH_MCUX_FLEXSPI_XIP) AND (DEFINED CONFIG_FLASH)) 302 zephyr_code_relocate(FILES ${MCUX_SDK_NG_DIR}/drivers/flexspi/fsl_flexspi.c 303 LOCATION ${CONFIG_FLASH_MCUX_FLEXSPI_XIP_MEM}_TEXT) 304endif() 305 306# Load all drivers 307mcux_load_all_cmakelists_in_directory(${SdkRootDirPath}/drivers) 308