hal_nxp: Factorise inclusion of fsl_inputmux

Create Kconfig variable NXP_INPUTMUX, which selects the fsl_inputmux
driver. Imply the MCUX component symbol from it. Imply that variable
from the NXP PINT, SmartDMA and LPC DMA drivers and from the mimxrt685s
SoC.

This needed to be done for the mimxrt700_evk/mimxrt798s/hifi4 domain, as
the INPUTMUX peripheral handles IRQ assginments and its driver
(fsl_inputmux) is used directly by the domain's soc.c. Instantiating the
currently dependent drivers (for PINT and SmartDMA) isn's possible nor
reasonable on the said target.

Signed-off-by: Vit Stanicek <vit.stanicek@nxp.com>
This commit is contained in:
Vit Stanicek
2025-07-17 12:30:52 +02:00
committed by Chris Friedt
parent 5274d66019
commit e679ef486a
7 changed files with 16 additions and 2 deletions

View File

@@ -5,6 +5,7 @@ config DMA_MCUX_LPC
bool "MCUX LPC DMAC driver"
default y
depends on DT_HAS_NXP_LPC_DMA_ENABLED
select NXP_INPUTMUX
help
DMA driver for MCUX LPC MCUs.

View File

@@ -5,5 +5,6 @@ config DMA_MCUX_SMARTDMA
bool "MCUX SmartDMA Driver"
default y
depends on DT_HAS_NXP_SMARTDMA_ENABLED
select NXP_INPUTMUX
help
MCUX SmartDMA driver.

View File

@@ -5,5 +5,6 @@ config NXP_PINT
bool "Pin interrupt and pattern match engine (PINT) for NXP MCUs"
default y
depends on DT_HAS_NXP_PINT_ENABLED
select NXP_INPUTMUX
help
Enable PINT driver for NXP MCUs

View File

@@ -21,5 +21,6 @@ source "drivers/misc/renesas_ra_external_interrupt/Kconfig"
source "drivers/misc/renesas_rx_external_interrupt/Kconfig"
source "drivers/misc/nxp_rtxxx_dsp_ctrl/Kconfig"
source "drivers/misc/stm32n6_axisram/Kconfig"
source "drivers/misc/nxp_inputmux/Kconfig"
endmenu

View File

@@ -0,0 +1,10 @@
# Copyright 2025 NXP
# SPDX-License-Identifier: Apache-2.0
config NXP_INPUTMUX
bool "NXP INPUTMUX driver"
default n
depends on HAS_MCUX
help
Includes a HAL driver for the INPUTMUX peripheral on select NXP
microcontrollers.

View File

@@ -32,8 +32,7 @@ endif()
set_variable_ifdef(CONFIG_DMA_MCUX_LPC CONFIG_MCUX_COMPONENT_driver.lpc_dma)
set_variable_ifdef(CONFIG_GPIO_MCUX_LPC CONFIG_MCUX_COMPONENT_driver.lpc_gpio)
set_variable_ifdef(CONFIG_NXP_PINT CONFIG_MCUX_COMPONENT_driver.pint)
set_variable_ifdef(CONFIG_NXP_PINT CONFIG_MCUX_COMPONENT_driver.inputmux)
set_variable_ifdef(CONFIG_DMA_MCUX_SMARTDMA CONFIG_MCUX_COMPONENT_driver.inputmux)
set_variable_ifdef(CONFIG_NXP_INPUTMUX CONFIG_MCUX_COMPONENT_driver.inputmux)
set_variable_ifdef(CONFIG_I2C_MCUX_FLEXCOMM CONFIG_MCUX_COMPONENT_driver.flexcomm)
set_variable_ifdef(CONFIG_I2C_MCUX_FLEXCOMM CONFIG_MCUX_COMPONENT_driver.flexcomm_i2c)
set_variable_ifdef(CONFIG_I2S_MCUX_FLEXCOMM CONFIG_MCUX_COMPONENT_driver.flexcomm)

View File

@@ -41,6 +41,7 @@ config SOC_MIMXRT685S_HIFI4
select HAS_MCUX
select HAS_MCUX_SYSCON
select SOC_EARLY_INIT_HOOK
select NXP_INPUTMUX
if SOC_SERIES_IMXRT6XX