Message ID | 1423477400-30520-1-git-send-email-wens@csie.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Mon, Feb 09, 2015 at 06:23:20PM +0800, Chen-Yu Tsai wrote: > As the sunxi usb clocks all contain a reset controller, it is not > possible to build the sunxi clock driver without RESET_CONTROLLER > enabled. Doing so results in an undefined symbol error: > > drivers/built-in.o: In function `sunxi_gates_clk_setup': > linux/drivers/clk/sunxi/clk-sunxi.c:1071: undefined reference to > `reset_controller_register' > > This is possible if building a minimal kernel without PHY_SUN4I_USB. > > The dependency issue is made visible at compile time instead of > link time by the new A80 mmc clocks, which also use a reset control > itself. > > This patch makes ARCH_SUNXI select ARCH_HAS_RESET_CONTROLLER and > RESET_CONTROLLER. > > Reported-by: Lourens Rozema <ik@lourensrozema.nl> > Fixes: 559482d1f950 ARM: sunxi: Split the various SoCs support in Kconfig > Cc: <stable@vger.kernel.org> # 3.16+ > Signed-off-by: Chen-Yu Tsai <wens@csie.org> Applied with Arnd Acked-by. Maxime
diff --git a/arch/arm/mach-sunxi/Kconfig b/arch/arm/mach-sunxi/Kconfig index a77604fbaf25..81502b90dd91 100644 --- a/arch/arm/mach-sunxi/Kconfig +++ b/arch/arm/mach-sunxi/Kconfig @@ -1,10 +1,12 @@ menuconfig ARCH_SUNXI bool "Allwinner SoCs" if ARCH_MULTI_V7 select ARCH_REQUIRE_GPIOLIB + select ARCH_HAS_RESET_CONTROLLER select CLKSRC_MMIO select GENERIC_IRQ_CHIP select PINCTRL select SUN4I_TIMER + select RESET_CONTROLLER if ARCH_SUNXI @@ -20,10 +22,8 @@ config MACH_SUN5I config MACH_SUN6I bool "Allwinner A31 (sun6i) SoCs support" default ARCH_SUNXI - select ARCH_HAS_RESET_CONTROLLER select ARM_GIC select MFD_SUN6I_PRCM - select RESET_CONTROLLER select SUN5I_HSTIMER config MACH_SUN7I @@ -37,16 +37,12 @@ config MACH_SUN7I config MACH_SUN8I bool "Allwinner A23 (sun8i) SoCs support" default ARCH_SUNXI - select ARCH_HAS_RESET_CONTROLLER select ARM_GIC select MFD_SUN6I_PRCM - select RESET_CONTROLLER config MACH_SUN9I bool "Allwinner (sun9i) SoCs support" default ARCH_SUNXI - select ARCH_HAS_RESET_CONTROLLER select ARM_GIC - select RESET_CONTROLLER endif
As the sunxi usb clocks all contain a reset controller, it is not possible to build the sunxi clock driver without RESET_CONTROLLER enabled. Doing so results in an undefined symbol error: drivers/built-in.o: In function `sunxi_gates_clk_setup': linux/drivers/clk/sunxi/clk-sunxi.c:1071: undefined reference to `reset_controller_register' This is possible if building a minimal kernel without PHY_SUN4I_USB. The dependency issue is made visible at compile time instead of link time by the new A80 mmc clocks, which also use a reset control itself. This patch makes ARCH_SUNXI select ARCH_HAS_RESET_CONTROLLER and RESET_CONTROLLER. Reported-by: Lourens Rozema <ik@lourensrozema.nl> Fixes: 559482d1f950 ARM: sunxi: Split the various SoCs support in Kconfig Cc: <stable@vger.kernel.org> # 3.16+ Signed-off-by: Chen-Yu Tsai <wens@csie.org> --- Since we don't have Kconfig symbols for the clock driver, I figured this should work. Hope we can get it into one of the rc-s before 3.20 is released. --- arch/arm/mach-sunxi/Kconfig | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-)