Commit c69a26b5 authored by Maxime Ripard's avatar Maxime Ripard Committed by Linus Walleij
Browse files

pinctrl: sunxi: Allow to disable pinctrl drivers



Our pinctrl drivers are consisting of some common code, and big pin tables
that are SoC-specific. This is fine in most cases, but when you want to
reduce the size of the particular kernel image, those big tables are, well,
quite big.

We haven't had the option to disable them in the past since they were
hidden Kconfig options based on the SoC support. However, that granularity
isn't great since we don't have one Kconfig option per-SoC, but rather one
by family.

Make those options selectable by the user so that they can disable it if
needed, while keeping the current default to not change the standard case.

Acked-by: default avatarChen-Yu Tsai <wens@csie.org>
Signed-off-by: default avatarMaxime Ripard <maxime.ripard@bootlin.com>
Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent 04ed8c0c
Loading
Loading
Loading
Loading
+38 −19
Original line number Diff line number Diff line
@@ -11,82 +11,101 @@ config PINCTRL_SUNIV_F1C100S
	select PINCTRL_SUNXI

config PINCTRL_SUN4I_A10
	def_bool MACH_SUN4I || MACH_SUN7I || MACH_SUN8I
	bool "Support for the Allwinner A10, A20 and R40 PIO"
	default MACH_SUN4I || MACH_SUN7I || MACH_SUN8I
	select PINCTRL_SUNXI

config PINCTRL_SUN5I
	def_bool MACH_SUN5I
	bool "Support for the Allwinner A10s, A13, R8 and NextThing GR8 PIO"
	default MACH_SUN5I
	select PINCTRL_SUNXI

config PINCTRL_SUN6I_A31
	def_bool MACH_SUN6I
	bool "Support for the Allwinner A31 PIO"
	default MACH_SUN6I
	select PINCTRL_SUNXI

config PINCTRL_SUN6I_A31_R
	def_bool MACH_SUN6I
	bool "Support for the Allwinner A31 R-PIO"
	default MACH_SUN6I
	depends on RESET_CONTROLLER
	select PINCTRL_SUNXI

config PINCTRL_SUN8I_A23
	def_bool MACH_SUN8I
	bool "Support for the Allwinner A23 PIO"
	default MACH_SUN8I
	select PINCTRL_SUNXI

config PINCTRL_SUN8I_A33
	def_bool MACH_SUN8I
	bool "Support for the Allwinner A33 PIO"
	default MACH_SUN8I
	select PINCTRL_SUNXI

config PINCTRL_SUN8I_A83T
	def_bool MACH_SUN8I
	bool "Support for the Allwinner A83T PIO"
	default MACH_SUN8I
	select PINCTRL_SUNXI

config PINCTRL_SUN8I_A83T_R
	def_bool MACH_SUN8I
	bool "Support for the Allwinner A83T R-PIO"
	default MACH_SUN8I
	select PINCTRL_SUNXI

config PINCTRL_SUN8I_A23_R
	def_bool MACH_SUN8I
	bool "Support for the Allwinner A23 and A33 R-PIO"
	default MACH_SUN8I
	depends on RESET_CONTROLLER
	select PINCTRL_SUNXI

config PINCTRL_SUN8I_H3
	def_bool MACH_SUN8I
	bool "Support for the Allwinner H3 PIO"
	default MACH_SUN8I
	select PINCTRL_SUNXI

config PINCTRL_SUN8I_H3_R
	def_bool MACH_SUN8I || (ARM64 && ARCH_SUNXI)
	bool "Support for the Allwinner H3 and H5 R-PIO"
	default MACH_SUN8I || (ARM64 && ARCH_SUNXI)
	select PINCTRL_SUNXI

config PINCTRL_SUN8I_V3S
	def_bool MACH_SUN8I
	bool "Support for the Allwinner V3s PIO"
	default MACH_SUN8I
	select PINCTRL_SUNXI

config PINCTRL_SUN9I_A80
	def_bool MACH_SUN9I
	bool "Support for the Allwinner A80 PIO"
	default MACH_SUN9I
	select PINCTRL_SUNXI

config PINCTRL_SUN9I_A80_R
	def_bool MACH_SUN9I
	bool "Support for the Allwinner A80 R-PIO"
	default MACH_SUN9I
	depends on RESET_CONTROLLER
	select PINCTRL_SUNXI

config PINCTRL_SUN50I_A64
	def_bool ARM64 && ARCH_SUNXI
	bool "Support for the Allwinner A64 PIO"
	default ARM64 && ARCH_SUNXI
	select PINCTRL_SUNXI

config PINCTRL_SUN50I_A64_R
	def_bool ARM64 && ARCH_SUNXI
	bool "Support for the Allwinner A64 R-PIO"
	default ARM64 && ARCH_SUNXI
	select PINCTRL_SUNXI

config PINCTRL_SUN50I_H5
	def_bool ARM64 && ARCH_SUNXI
	bool "Support for the Allwinner H5 PIO"
	default ARM64 && ARCH_SUNXI
	select PINCTRL_SUNXI

config PINCTRL_SUN50I_H6
	def_bool ARM64 && ARCH_SUNXI
	bool "Support for the Allwinner H6 PIO"
	default ARM64 && ARCH_SUNXI
	select PINCTRL_SUNXI

config PINCTRL_SUN50I_H6_R
	def_bool ARM64 && ARCH_SUNXI
	bool "Support for the Allwinner H6 R-PIO"
	default ARM64 && ARCH_SUNXI
	select PINCTRL_SUNXI

endif