2024-01-16 10:00:18

by Martin Kaiser

[permalink] [raw]
Subject: [PATCH v2] gpio: vf610: allow disabling the vf610 driver

The vf610 gpio driver is enabled by default for all i.MX machines,
without any option to disable it in a board-specific config file.

Most i.MX chipsets have no hardware for this driver. Change the default
to enable GPIO_VF610 for SOC_VF610 and disable it otherwise.

Add a text description after the bool type, this makes the driver
selectable by make config etc. Enable the driver in arm64's default
config and in imx_v6_v7_defconfig to support chips like i.MX7ULP,
i.MX8QM, DXL, ULP and i.MX93.

Fixes: 30a35c07d9e9 ("gpio: vf610: drop the SOC_VF610 dependency for GPIO_VF610")
Signed-off-by: Martin Kaiser <[email protected]>
---
v2:
- enable the vf610 gpio driver in the defconfig files for arm_v7
(i.MX7ULP) and arm64 (i.MX8QM, DXL, ULP and i.MX93)

arch/arm/configs/imx_v6_v7_defconfig | 1 +
arch/arm64/configs/defconfig | 1 +
drivers/gpio/Kconfig | 3 ++-
3 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/arch/arm/configs/imx_v6_v7_defconfig b/arch/arm/configs/imx_v6_v7_defconfig
index 0a90583f9f01..3cdcb786f33f 100644
--- a/arch/arm/configs/imx_v6_v7_defconfig
+++ b/arch/arm/configs/imx_v6_v7_defconfig
@@ -208,6 +208,7 @@ CONFIG_PINCTRL_IMX8MQ=y
CONFIG_GPIO_SYSFS=y
CONFIG_GPIO_MXC=y
CONFIG_GPIO_SIOX=m
+CONFIG_GPIO_VF610=y
CONFIG_GPIO_MAX732X=y
CONFIG_GPIO_PCA953X=y
CONFIG_GPIO_PCF857X=y
diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
index e6cf3e5d63c3..915c7c8fd13f 100644
--- a/arch/arm64/configs/defconfig
+++ b/arch/arm64/configs/defconfig
@@ -632,6 +632,7 @@ CONFIG_GPIO_SYSCON=y
CONFIG_GPIO_UNIPHIER=y
CONFIG_GPIO_VISCONTI=y
CONFIG_GPIO_WCD934X=m
+CONFIG_GPIO_VF610=y
CONFIG_GPIO_XGENE=y
CONFIG_GPIO_XGENE_SB=y
CONFIG_GPIO_MAX732X=y
diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
index 1301cec94f12..353af1a4d0ac 100644
--- a/drivers/gpio/Kconfig
+++ b/drivers/gpio/Kconfig
@@ -711,7 +711,8 @@ config GPIO_UNIPHIER
Say yes here to support UniPhier GPIOs.

config GPIO_VF610
- def_bool y
+ bool "VF610 GPIO support"
+ default y if SOC_VF610
depends on ARCH_MXC
select GPIOLIB_IRQCHIP
help
--
2.39.2



2024-01-16 13:17:46

by Peng Fan

[permalink] [raw]
Subject: RE: [PATCH v2] gpio: vf610: allow disabling the vf610 driver

> Subject: [PATCH v2] gpio: vf610: allow disabling the vf610 driver
>
> The vf610 gpio driver is enabled by default for all i.MX machines, without any
> option to disable it in a board-specific config file.
>
> Most i.MX chipsets have no hardware for this driver. Change the default to
> enable GPIO_VF610 for SOC_VF610 and disable it otherwise.
>
> Add a text description after the bool type, this makes the driver selectable by
> make config etc. Enable the driver in arm64's default config and in
> imx_v6_v7_defconfig to support chips like i.MX7ULP, i.MX8QM, DXL, ULP
> and i.MX93.
>
> Fixes: 30a35c07d9e9 ("gpio: vf610: drop the SOC_VF610 dependency for
> GPIO_VF610")
> Signed-off-by: Martin Kaiser <[email protected]>
> ---
> v2:
> - enable the vf610 gpio driver in the defconfig files for arm_v7
> (i.MX7ULP) and arm64 (i.MX8QM, DXL, ULP and i.MX93)
>
> arch/arm/configs/imx_v6_v7_defconfig | 1 +
> arch/arm64/configs/defconfig | 1 +
> drivers/gpio/Kconfig | 3 ++-

This should be in three patches:
1. gpio/Kconfig
2. imx_v6_v7_defconfig
3. arm64 defconfig

Regards,
Peng.

> 3 files changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/arch/arm/configs/imx_v6_v7_defconfig
> b/arch/arm/configs/imx_v6_v7_defconfig
> index 0a90583f9f01..3cdcb786f33f 100644
> --- a/arch/arm/configs/imx_v6_v7_defconfig
> +++ b/arch/arm/configs/imx_v6_v7_defconfig
> @@ -208,6 +208,7 @@ CONFIG_PINCTRL_IMX8MQ=y
> CONFIG_GPIO_SYSFS=y CONFIG_GPIO_MXC=y CONFIG_GPIO_SIOX=m
> +CONFIG_GPIO_VF610=y
> CONFIG_GPIO_MAX732X=y
> CONFIG_GPIO_PCA953X=y
> CONFIG_GPIO_PCF857X=y
> diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
> index e6cf3e5d63c3..915c7c8fd13f 100644
> --- a/arch/arm64/configs/defconfig
> +++ b/arch/arm64/configs/defconfig
> @@ -632,6 +632,7 @@ CONFIG_GPIO_SYSCON=y
> CONFIG_GPIO_UNIPHIER=y CONFIG_GPIO_VISCONTI=y
> CONFIG_GPIO_WCD934X=m
> +CONFIG_GPIO_VF610=y
> CONFIG_GPIO_XGENE=y
> CONFIG_GPIO_XGENE_SB=y
> CONFIG_GPIO_MAX732X=y
> diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig index
> 1301cec94f12..353af1a4d0ac 100644
> --- a/drivers/gpio/Kconfig
> +++ b/drivers/gpio/Kconfig
> @@ -711,7 +711,8 @@ config GPIO_UNIPHIER
> Say yes here to support UniPhier GPIOs.
>
> config GPIO_VF610
> - def_bool y
> + bool "VF610 GPIO support"
> + default y if SOC_VF610
> depends on ARCH_MXC
> select GPIOLIB_IRQCHIP
> help
> --
> 2.39.2