Add SPL_PINCTRL_QCOM and SPL_PINCTRL_QCOM_GENERIC Kconfig symbols, along with per-SoC SPL_PINCTRL_QCOM_<SOC> entries for all existing Qualcomm pinctrl drivers. Update the Makefile to use the $(PHASE_) macro so pinctrl objects build for both SPL and non-SPL phases.
Signed-off-by: Balaji Selvanathan <[email protected]> --- Changes in v2: - Newly added in v2 --- --- drivers/pinctrl/qcom/Kconfig | 201 ++++++++++++++++++++++++++++++++++++++++-- drivers/pinctrl/qcom/Makefile | 46 +++++----- 2 files changed, 219 insertions(+), 28 deletions(-) diff --git a/drivers/pinctrl/qcom/Kconfig b/drivers/pinctrl/qcom/Kconfig index 11e6763b5f3..24618b21b7e 100644 --- a/drivers/pinctrl/qcom/Kconfig +++ b/drivers/pinctrl/qcom/Kconfig @@ -4,6 +4,10 @@ config PINCTRL_QCOM depends on PINCTRL_GENERIC def_bool n +config SPL_PINCTRL_QCOM + depends on SPL_PINCTRL_GENERIC + def_bool n + menu "Qualcomm pinctrl drivers" config PINCTRL_QCOM_GENERIC @@ -14,6 +18,16 @@ config PINCTRL_QCOM_GENERIC This is useful for generic Qualcomm defconfigs that support multiple SoCs. Individual drivers can still be disabled if needed. +config SPL_PINCTRL_QCOM_GENERIC + bool "Enable all Qualcomm pinctrl drivers in SPL by default" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_GENERIC. + Say Y here to enable all Qualcomm pinctrl drivers in SPL by default. + This is useful for generic Qualcomm SPL defconfigs that support + multiple SoCs. Individual SPL drivers can still be disabled if needed. + config PINCTRL_QCOM_APQ8016 bool "Qualcomm APQ8016 Pinctrl" default y if PINCTRL_QCOM_GENERIC @@ -22,6 +36,14 @@ config PINCTRL_QCOM_APQ8016 Say Y here to enable support for pinctrl on the MSM8916 / APQ8016 Snapdragon 410 SoC, as well as the associated GPIO driver. +config SPL_PINCTRL_QCOM_APQ8016 + bool "Qualcomm APQ8016 Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_APQ8016. + See the help of PINCTRL_QCOM_APQ8016 for details. + config PINCTRL_QCOM_APQ8096 bool "Qualcomm APQ8096 Pinctrl" default y if PINCTRL_QCOM_GENERIC @@ -30,6 +52,14 @@ config PINCTRL_QCOM_APQ8096 Say Y here to enable support for pinctrl on the MSM8996 / APQ8096 Snapdragon 820 SoC, as well as the associated GPIO driver. +config SPL_PINCTRL_QCOM_APQ8096 + bool "Qualcomm APQ8096 Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_APQ8096. + See the help of PINCTRL_QCOM_APQ8096 for details. + config PINCTRL_QCOM_IPQ4019 bool "Qualcomm IPQ4019 Pinctrl" default y if PINCTRL_QCOM_GENERIC @@ -38,6 +68,14 @@ config PINCTRL_QCOM_IPQ4019 Say Y here to enable support for pinctrl on the IPQ4019 SoC, as well as the associated GPIO driver. +config SPL_PINCTRL_QCOM_IPQ4019 + bool "Qualcomm IPQ4019 Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_IPQ4019. + See the help of PINCTRL_QCOM_IPQ4019 for details. + config PINCTRL_QCOM_IPQ5424 bool "Qualcomm IPQ5424 Pinctrl" default y if PINCTRL_QCOM_GENERIC @@ -46,6 +84,14 @@ config PINCTRL_QCOM_IPQ5424 Say Y here to enable support for pinctrl on the IPQ5424 SoC, as well as the associated GPIO driver. +config SPL_PINCTRL_QCOM_IPQ5424 + bool "Qualcomm IPQ5424 Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_IPQ5424. + See the help of PINCTRL_QCOM_IPQ5424 for details. + config PINCTRL_QCOM_IPQ9574 bool "Qualcomm IPQ9574 Pinctrl" default y if PINCTRL_QCOM_GENERIC @@ -54,6 +100,14 @@ config PINCTRL_QCOM_IPQ9574 Say Y here to enable support for pinctrl on the IPQ9574 SoC, as well as the associated GPIO driver. +config SPL_PINCTRL_QCOM_IPQ9574 + bool "Qualcomm IPQ9574 Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_IPQ9574. + See the help of PINCTRL_QCOM_IPQ9574 for details. + config PINCTRL_QCOM_MILOS bool "Qualcomm Milos Pinctrl" default y if PINCTRL_QCOM_GENERIC @@ -62,6 +116,14 @@ config PINCTRL_QCOM_MILOS Say Y here to enable support for pinctrl on the Snapdragon Milos SoC, as well as the associated GPIO driver. +config SPL_PINCTRL_QCOM_MILOS + bool "Qualcomm Milos Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_MILOS. + See the help of PINCTRL_QCOM_MILOS for details. + config PINCTRL_QCOM_QCM2290 bool "Qualcomm QCM2290 Pinctrl" default y if PINCTRL_QCOM_GENERIC @@ -70,6 +132,14 @@ config PINCTRL_QCOM_QCM2290 Say Y here to enable support for pinctrl on the Snapdragon QCM2290 SoC, as well as the associated GPIO driver. +config SPL_PINCTRL_QCOM_QCM2290 + bool "Qualcomm QCM2290 Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_QCM2290. + See the help of PINCTRL_QCOM_QCM2290 for details. + config PINCTRL_QCOM_QCS404 bool "Qualcomm QCS404 Pinctrl" default y if PINCTRL_QCOM_GENERIC @@ -78,13 +148,29 @@ config PINCTRL_QCOM_QCS404 Say Y here to enable support for pinctrl on the Snapdragon QCS404 SoC, as well as the associated GPIO driver. +config SPL_PINCTRL_QCOM_QCS404 + bool "Qualcomm QCS404 Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_QCS404. + See the help of PINCTRL_QCOM_QCS404 for details. + config PINCTRL_QCOM_QCS615 - bool "Qualcomm QCS615 Pinctrl" + bool "Qualcomm QCS615 Pinctrl" default y if PINCTRL_QCOM_GENERIC - select PINCTRL_QCOM - help - Say Y here to enable support for pinctrl on the Snapdragon QCS615 SoC, - as well as the associated GPIO driver. + select PINCTRL_QCOM + help + Say Y here to enable support for pinctrl on the Snapdragon QCS615 SoC, + as well as the associated GPIO driver. + +config SPL_PINCTRL_QCOM_QCS615 + bool "Qualcomm QCS615 Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_QCS615. + See the help of PINCTRL_QCOM_QCS615 for details. config PINCTRL_QCOM_SA8775P bool "Qualcomm SA8775P Pinctrl" @@ -94,6 +180,14 @@ config PINCTRL_QCOM_SA8775P Say Y here to enable support for pinctrl on the Snapdragon SA8775P SoC, as well as the associated GPIO driver. +config SPL_PINCTRL_QCOM_SA8775P + bool "Qualcomm SA8775P Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_SA8775P. + See the help of PINCTRL_QCOM_SA8775P for details. + config PINCTRL_QCOM_SC7280 bool "Qualcomm SC7280/QCM6490 Pinctrl" default y if PINCTRL_QCOM_GENERIC @@ -101,6 +195,14 @@ config PINCTRL_QCOM_SC7280 help Say Y here to enable support for pinctrl on the Snapdragon SC7280 SoC, +config SPL_PINCTRL_QCOM_SC7280 + bool "Qualcomm SC7280/QCM6490 Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_SC7280. + See the help of PINCTRL_QCOM_SC7280 for details. + config PINCTRL_QCOM_SDM670 bool "Qualcomm SDM670 Pinctrl" default y if PINCTRL_QCOM_GENERIC @@ -109,6 +211,14 @@ config PINCTRL_QCOM_SDM670 Say Y here to enable support for pinctrl on the Snapdragon SDM670 SoC, as well as the associated GPIO driver. +config SPL_PINCTRL_QCOM_SDM670 + bool "Qualcomm SDM670 Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_SDM670. + See the help of PINCTRL_QCOM_SDM670 for details. + config PINCTRL_QCOM_SDM660 bool "Qualcomm SDM630/660 Pinctrl" default y if PINCTRL_QCOM_GENERIC @@ -117,6 +227,14 @@ config PINCTRL_QCOM_SDM660 Say Y here to enable support for pinctrl on the Snapdragon 630/636/660 SoCs, as well as the associated GPIO driver. +config SPL_PINCTRL_QCOM_SDM660 + bool "Qualcomm SDM630/660 Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_SDM660. + See the help of PINCTRL_QCOM_SDM660 for details. + config PINCTRL_QCOM_SDM845 bool "Qualcomm SDM845 Pinctrl" default y if PINCTRL_QCOM_GENERIC @@ -125,6 +243,14 @@ config PINCTRL_QCOM_SDM845 Say Y here to enable support for pinctrl on the Snapdragon 845 SoC, as well as the associated GPIO driver. +config SPL_PINCTRL_QCOM_SDM845 + bool "Qualcomm SDM845 Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_SDM845. + See the help of PINCTRL_QCOM_SDM845 for details. + config PINCTRL_QCOM_SM6115 bool "Qualcomm SM6115 Pinctrl" default y if PINCTRL_QCOM_GENERIC @@ -133,6 +259,14 @@ config PINCTRL_QCOM_SM6115 Say Y here to enable support for pinctrl on the Snapdragon SM6115 SoC, as well as the associated GPIO driver. +config SPL_PINCTRL_QCOM_SM6115 + bool "Qualcomm SM6115 Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_SM6115. + See the help of PINCTRL_QCOM_SM6115 for details. + config PINCTRL_QCOM_SM6350 bool "Qualcomm SM6350 Pinctrl" default y if PINCTRL_QCOM_GENERIC @@ -140,6 +274,14 @@ config PINCTRL_QCOM_SM6350 help Say Y here to enable support for pinctrl on the Snapdragon SM6350 SoC, +config SPL_PINCTRL_QCOM_SM6350 + bool "Qualcomm SM6350 Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_SM6350. + See the help of PINCTRL_QCOM_SM6350 for details. + config PINCTRL_QCOM_SM7150 bool "Qualcomm SM7150 GCC" default y if PINCTRL_QCOM_GENERIC @@ -148,6 +290,14 @@ config PINCTRL_QCOM_SM7150 Say Y here to enable support for pinctrl on the Snapdragon SM7150 SoC, as well as the associated GPIO driver. +config SPL_PINCTRL_QCOM_SM7150 + bool "Qualcomm SM7150 Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_SM7150. + See the help of PINCTRL_QCOM_SM7150 for details. + config PINCTRL_QCOM_SM8150 bool "Qualcomm SM8150 Pinctrl" default y if PINCTRL_QCOM_GENERIC @@ -156,6 +306,14 @@ config PINCTRL_QCOM_SM8150 Say Y here to enable support for pinctrl on the Snapdragon SM8150 SoC, as well as the associated GPIO driver. +config SPL_PINCTRL_QCOM_SM8150 + bool "Qualcomm SM8150 Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_SM8150. + See the help of PINCTRL_QCOM_SM8150 for details. + config PINCTRL_QCOM_SM8250 bool "Qualcomm SM8250 Pinctrl" default y if PINCTRL_QCOM_GENERIC @@ -164,6 +322,14 @@ config PINCTRL_QCOM_SM8250 Say Y here to enable support for pinctrl on the Snapdragon SM8250 SoC, as well as the associated GPIO driver. +config SPL_PINCTRL_QCOM_SM8250 + bool "Qualcomm SM8250 Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_SM8250. + See the help of PINCTRL_QCOM_SM8250 for details. + config PINCTRL_QCOM_SM8550 bool "Qualcomm SM8550 Pinctrl" default y if PINCTRL_QCOM_GENERIC @@ -172,6 +338,14 @@ config PINCTRL_QCOM_SM8550 Say Y here to enable support for pinctrl on the Snapdragon SM8550 SoC, as well as the associated GPIO driver. +config SPL_PINCTRL_QCOM_SM8550 + bool "Qualcomm SM8550 Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_SM8550. + See the help of PINCTRL_QCOM_SM8550 for details. + config PINCTRL_QCOM_SM8650 bool "Qualcomm SM8650 Pinctrl" default y if PINCTRL_QCOM_GENERIC @@ -180,6 +354,14 @@ config PINCTRL_QCOM_SM8650 Say Y here to enable support for pinctrl on the Snapdragon SM8650 SoC, as well as the associated GPIO driver. +config SPL_PINCTRL_QCOM_SM8650 + bool "Qualcomm SM8650 Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_SM8650. + See the help of PINCTRL_QCOM_SM8650 for details. + config PINCTRL_QCOM_X1E80100 bool "Qualcomm X1E80100 Pinctrl" default y if PINCTRL_QCOM_GENERIC @@ -188,6 +370,15 @@ config PINCTRL_QCOM_X1E80100 Say Y here to enable support for pinctrl on the Snapdragon X1E80100 SoC, as well as the associated GPIO driver. +config SPL_PINCTRL_QCOM_X1E80100 + bool "Qualcomm X1E80100 Pinctrl in SPL" + depends on SPL_PINCTRL_GENERIC + select SPL_PINCTRL_QCOM + help + SPL variant of PINCTRL_QCOM_X1E80100. + See the help of PINCTRL_QCOM_X1E80100 for details. + endmenu endif + diff --git a/drivers/pinctrl/qcom/Makefile b/drivers/pinctrl/qcom/Makefile index 4096c1aa491..058395695e2 100644 --- a/drivers/pinctrl/qcom/Makefile +++ b/drivers/pinctrl/qcom/Makefile @@ -2,26 +2,26 @@ # # Copyright (c) 2023 Linaro Ltd. -obj-$(CONFIG_PINCTRL_QCOM) += pinctrl-qcom.o -obj-$(CONFIG_PINCTRL_QCOM_APQ8016) += pinctrl-apq8016.o -obj-$(CONFIG_PINCTRL_QCOM_IPQ4019) += pinctrl-ipq4019.o -obj-$(CONFIG_PINCTRL_QCOM_IPQ5424) += pinctrl-ipq5424.o -obj-$(CONFIG_PINCTRL_QCOM_IPQ9574) += pinctrl-ipq9574.o -obj-$(CONFIG_PINCTRL_QCOM_APQ8096) += pinctrl-apq8096.o -obj-$(CONFIG_PINCTRL_QCOM_MILOS) += pinctrl-milos.o -obj-$(CONFIG_PINCTRL_QCOM_QCM2290) += pinctrl-qcm2290.o -obj-$(CONFIG_PINCTRL_QCOM_QCS404) += pinctrl-qcs404.o -obj-$(CONFIG_PINCTRL_QCOM_QCS615) += pinctrl-qcs615.o -obj-$(CONFIG_PINCTRL_QCOM_SA8775P) += pinctrl-sa8775p.o -obj-$(CONFIG_PINCTRL_QCOM_SC7280) += pinctrl-sc7280.o -obj-$(CONFIG_PINCTRL_QCOM_SDM660) += pinctrl-sdm660.o -obj-$(CONFIG_PINCTRL_QCOM_SDM670) += pinctrl-sdm670.o -obj-$(CONFIG_PINCTRL_QCOM_SDM845) += pinctrl-sdm845.o -obj-$(CONFIG_PINCTRL_QCOM_SM6115) += pinctrl-sm6115.o -obj-$(CONFIG_PINCTRL_QCOM_SM6350) += pinctrl-sm6350.o -obj-$(CONFIG_PINCTRL_QCOM_SM7150) += pinctrl-sm7150.o -obj-$(CONFIG_PINCTRL_QCOM_SM8150) += pinctrl-sm8150.o -obj-$(CONFIG_PINCTRL_QCOM_SM8250) += pinctrl-sm8250.o -obj-$(CONFIG_PINCTRL_QCOM_SM8550) += pinctrl-sm8550.o -obj-$(CONFIG_PINCTRL_QCOM_SM8650) += pinctrl-sm8650.o -obj-$(CONFIG_PINCTRL_QCOM_X1E80100) += pinctrl-x1e80100.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM) += pinctrl-qcom.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_APQ8016) += pinctrl-apq8016.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_IPQ4019) += pinctrl-ipq4019.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_IPQ5424) += pinctrl-ipq5424.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_IPQ9574) += pinctrl-ipq9574.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_APQ8096) += pinctrl-apq8096.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_MILOS) += pinctrl-milos.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_QCM2290) += pinctrl-qcm2290.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_QCS404) += pinctrl-qcs404.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_QCS615) += pinctrl-qcs615.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_SA8775P) += pinctrl-sa8775p.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_SC7280) += pinctrl-sc7280.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_SDM660) += pinctrl-sdm660.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_SDM670) += pinctrl-sdm670.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_SDM845) += pinctrl-sdm845.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_SM6115) += pinctrl-sm6115.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_SM6350) += pinctrl-sm6350.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_SM7150) += pinctrl-sm7150.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_SM8150) += pinctrl-sm8150.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_SM8250) += pinctrl-sm8250.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_SM8550) += pinctrl-sm8550.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_SM8650) += pinctrl-sm8650.o +obj-$(CONFIG_$(PHASE_)PINCTRL_QCOM_X1E80100) += pinctrl-x1e80100.o -- 2.34.1

