Message ID | 20210920190350.3860821-4-willmcvicker@google.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | arm64: Kconfig: Update ARCH_EXYNOS select configs | expand |
On 20/09/2021 21:03, Will McVicker wrote: > Switching the default config logic of PINCTRL_EXYNOS to use "default > y if ARCH_EXYNOS" versus having ARCH_EXYNOS directly select the config. > This gives vendors the flexibility to disable the config or modularize > it in the presence of a generic kernel. Reasoning is incorrect. This is an essential driver which CANNOT be disabled for any kernel having ARCH_EXYNOS or ARCH_S5PV210. You are trying to prepare it for some out-of-tree code? Please, upstream your code instead. > > Verified this change doesn't effect the .config. > > Signed-off-by: Will McVicker <willmcvicker@google.com> > --- > arch/arm64/Kconfig.platforms | 1 - > drivers/pinctrl/samsung/Kconfig | 1 + > 2 files changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/arm64/Kconfig.platforms b/arch/arm64/Kconfig.platforms > index 6a006490c9b9..a884e5da8b0f 100644 > --- a/arch/arm64/Kconfig.platforms > +++ b/arch/arm64/Kconfig.platforms > @@ -93,7 +93,6 @@ config ARCH_EXYNOS > bool "ARMv8 based Samsung Exynos SoC family" > select HAVE_S3C_RTC if RTC_CLASS > select PINCTRL > - select PINCTRL_EXYNOS > select PM_GENERIC_DOMAINS if PM > help > This enables support for ARMv8 based Samsung Exynos SoC family. > diff --git a/drivers/pinctrl/samsung/Kconfig b/drivers/pinctrl/samsung/Kconfig > index dfd805e76862..483acb8ac1f6 100644 > --- a/drivers/pinctrl/samsung/Kconfig > +++ b/drivers/pinctrl/samsung/Kconfig > @@ -12,6 +12,7 @@ config PINCTRL_EXYNOS > bool "Pinctrl common driver part for Samsung Exynos SoCs" > depends on OF_GPIO > depends on ARCH_EXYNOS || ARCH_S5PV210 || COMPILE_TEST > + default y if ARCH_EXYNOS default ARCH_EXYNOS || ARCH_S5PV210 ... and update all mach Kconfigs. > select PINCTRL_SAMSUNG > select PINCTRL_EXYNOS_ARM if ARM && (ARCH_EXYNOS || ARCH_S5PV210) > select PINCTRL_EXYNOS_ARM64 if ARM64 && ARCH_EXYNOS > Best regards, Krzysztof
On Tue, 21 Sep 2021, Krzysztof Kozlowski wrote: > On 20/09/2021 21:03, Will McVicker wrote: > > Switching the default config logic of PINCTRL_EXYNOS to use "default > > y if ARCH_EXYNOS" versus having ARCH_EXYNOS directly select the config. > > This gives vendors the flexibility to disable the config or modularize > > it in the presence of a generic kernel. > > Reasoning is incorrect. This is an essential driver which CANNOT be > disabled for any kernel having ARCH_EXYNOS or ARCH_S5PV210. You are > trying to prepare it for some out-of-tree code? Please, upstream your > code instead. No additional code is required to build a generic kernel. The only difference would be a vendor's defconfig/fragment. The aim of this set is to provide more flexibility around how driver symbols can be configured via Kconfig. Currently if ARCH_EXYNOS (which is required if we wish to provide SERIAL_SAMSUNG as an option) is enabled it blindly enables lots of symbols without recourse. > > Verified this change doesn't effect the .config. > > > > Signed-off-by: Will McVicker <willmcvicker@google.com> > > --- > > arch/arm64/Kconfig.platforms | 1 - > > drivers/pinctrl/samsung/Kconfig | 1 + > > 2 files changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/arch/arm64/Kconfig.platforms b/arch/arm64/Kconfig.platforms > > index 6a006490c9b9..a884e5da8b0f 100644 > > --- a/arch/arm64/Kconfig.platforms > > +++ b/arch/arm64/Kconfig.platforms > > @@ -93,7 +93,6 @@ config ARCH_EXYNOS > > bool "ARMv8 based Samsung Exynos SoC family" > > select HAVE_S3C_RTC if RTC_CLASS > > select PINCTRL > > - select PINCTRL_EXYNOS > > select PM_GENERIC_DOMAINS if PM > > help > > This enables support for ARMv8 based Samsung Exynos SoC family. > > diff --git a/drivers/pinctrl/samsung/Kconfig b/drivers/pinctrl/samsung/Kconfig > > index dfd805e76862..483acb8ac1f6 100644 > > --- a/drivers/pinctrl/samsung/Kconfig > > +++ b/drivers/pinctrl/samsung/Kconfig > > @@ -12,6 +12,7 @@ config PINCTRL_EXYNOS > > bool "Pinctrl common driver part for Samsung Exynos SoCs" > > depends on OF_GPIO > > depends on ARCH_EXYNOS || ARCH_S5PV210 || COMPILE_TEST > > + default y if ARCH_EXYNOS > > default ARCH_EXYNOS || ARCH_S5PV210 > ... and update all mach Kconfigs. > > > select PINCTRL_SAMSUNG > > select PINCTRL_EXYNOS_ARM if ARM && (ARCH_EXYNOS || ARCH_S5PV210) > > select PINCTRL_EXYNOS_ARM64 if ARM64 && ARCH_EXYNOS > > > > > Best regards, > Krzysztof
On Mon, Sep 20, 2021 at 9:04 PM Will McVicker <willmcvicker@google.com> wrote: > Switching the default config logic of PINCTRL_EXYNOS to use "default > y if ARCH_EXYNOS" versus having ARCH_EXYNOS directly select the config. > This gives vendors the flexibility to disable the config or modularize > it in the presence of a generic kernel. > > Verified this change doesn't effect the .config. > > Signed-off-by: Will McVicker <willmcvicker@google.com> Krzysztof is collecting and sending pull requests for the Samsung pinctrl portions so I expect him to merge this once you reach consensus. Yours, Linus Walleij
diff --git a/arch/arm64/Kconfig.platforms b/arch/arm64/Kconfig.platforms index 6a006490c9b9..a884e5da8b0f 100644 --- a/arch/arm64/Kconfig.platforms +++ b/arch/arm64/Kconfig.platforms @@ -93,7 +93,6 @@ config ARCH_EXYNOS bool "ARMv8 based Samsung Exynos SoC family" select HAVE_S3C_RTC if RTC_CLASS select PINCTRL - select PINCTRL_EXYNOS select PM_GENERIC_DOMAINS if PM help This enables support for ARMv8 based Samsung Exynos SoC family. diff --git a/drivers/pinctrl/samsung/Kconfig b/drivers/pinctrl/samsung/Kconfig index dfd805e76862..483acb8ac1f6 100644 --- a/drivers/pinctrl/samsung/Kconfig +++ b/drivers/pinctrl/samsung/Kconfig @@ -12,6 +12,7 @@ config PINCTRL_EXYNOS bool "Pinctrl common driver part for Samsung Exynos SoCs" depends on OF_GPIO depends on ARCH_EXYNOS || ARCH_S5PV210 || COMPILE_TEST + default y if ARCH_EXYNOS select PINCTRL_SAMSUNG select PINCTRL_EXYNOS_ARM if ARM && (ARCH_EXYNOS || ARCH_S5PV210) select PINCTRL_EXYNOS_ARM64 if ARM64 && ARCH_EXYNOS
Switching the default config logic of PINCTRL_EXYNOS to use "default y if ARCH_EXYNOS" versus having ARCH_EXYNOS directly select the config. This gives vendors the flexibility to disable the config or modularize it in the presence of a generic kernel. Verified this change doesn't effect the .config. Signed-off-by: Will McVicker <willmcvicker@google.com> --- arch/arm64/Kconfig.platforms | 1 - drivers/pinctrl/samsung/Kconfig | 1 + 2 files changed, 1 insertion(+), 1 deletion(-)