[PATCH] clk: sunxi-ng: Fix dependency on sunxi_gate

From: Corentin Labbe
Date: Tue Apr 25 2017 - 13:14:32 EST


When CONFIG_SUNXI_CCU is set but no other SUNXI_CCU is selected i got
the following build error:
drivers/built-in.o: In function `ccu_pll_notifier_cb':
drivers/clk/sunxi-ng/ccu_common.c:71: undefined reference to `ccu_gate_helper_disable'
drivers/clk/sunxi-ng/ccu_common.c:73: undefined reference to `ccu_gate_helper_enable'

The problem is the function ccu_pll_notifier_cb in ccu_common.c need
some function from ccu_gate.c which is not compiled since SUNXI_CCU_GATE
is not selected.

This patch remove SUNXI_CCU_GATE and compile ccu_gate.c unconditionnaly
since all other combination of options select SUNXI_CCU_GATE finally.

Fixes: 02ae2bc6febd ("clk: sunxi-ng: Add clk notifier to gate then ungate PLL clocks")
Signed-off-by: Corentin Labbe <clabbe.montjoie@xxxxxxxxx>
---
drivers/clk/sunxi-ng/Kconfig | 11 -----------
drivers/clk/sunxi-ng/Makefile | 2 +-
2 files changed, 1 insertion(+), 12 deletions(-)

diff --git a/drivers/clk/sunxi-ng/Kconfig b/drivers/clk/sunxi-ng/Kconfig
index 8bee225..d7842f9 100644
--- a/drivers/clk/sunxi-ng/Kconfig
+++ b/drivers/clk/sunxi-ng/Kconfig
@@ -15,9 +15,6 @@ config SUNXI_CCU_DIV
config SUNXI_CCU_FRAC
bool

-config SUNXI_CCU_GATE
- bool
-
config SUNXI_CCU_MUX
bool

@@ -32,24 +29,19 @@ config SUNXI_CCU_PHASE

config SUNXI_CCU_NK
bool
- select SUNXI_CCU_GATE

config SUNXI_CCU_NKM
bool
- select SUNXI_CCU_GATE

config SUNXI_CCU_NKMP
bool
- select SUNXI_CCU_GATE

config SUNXI_CCU_NM
bool
select SUNXI_CCU_FRAC
- select SUNXI_CCU_GATE

config SUNXI_CCU_MP
bool
- select SUNXI_CCU_GATE
select SUNXI_CCU_MUX

# SoC Drivers
@@ -119,7 +111,6 @@ config SUN8I_A33_CCU
config SUN8I_A83T_CCU
bool "Support for the Allwinner A83T CCU"
select SUNXI_CCU_DIV
- select SUNXI_CCU_GATE
select SUNXI_CCU_NKMP
select SUNXI_CCU_NM
select SUNXI_CCU_MP
@@ -154,7 +145,6 @@ config SUN9I_A80_CCU
bool "Support for the Allwinner A80 CCU"
select SUNXI_CCU_DIV
select SUNXI_CCU_MULT
- select SUNXI_CCU_GATE
select SUNXI_CCU_NKMP
select SUNXI_CCU_NM
select SUNXI_CCU_MP
@@ -165,7 +155,6 @@ config SUN9I_A80_CCU
config SUN8I_R_CCU
bool "Support for Allwinner SoCs' PRCM CCUs"
select SUNXI_CCU_DIV
- select SUNXI_CCU_GATE
default MACH_SUN8I || (ARCH_SUNXI && ARM64)

endif
diff --git a/drivers/clk/sunxi-ng/Makefile b/drivers/clk/sunxi-ng/Makefile
index 78028c8..52aab41 100644
--- a/drivers/clk/sunxi-ng/Makefile
+++ b/drivers/clk/sunxi-ng/Makefile
@@ -1,11 +1,11 @@
# Common objects
obj-$(CONFIG_SUNXI_CCU) += ccu_common.o
obj-$(CONFIG_SUNXI_CCU) += ccu_reset.o
+obj-$(CONFIG_SUNXI_CCU) += ccu_gate.o

# Base clock types
obj-$(CONFIG_SUNXI_CCU_DIV) += ccu_div.o
obj-$(CONFIG_SUNXI_CCU_FRAC) += ccu_frac.o
-obj-$(CONFIG_SUNXI_CCU_GATE) += ccu_gate.o
obj-$(CONFIG_SUNXI_CCU_MUX) += ccu_mux.o
obj-$(CONFIG_SUNXI_CCU_MULT) += ccu_mult.o
obj-$(CONFIG_SUNXI_CCU_PHASE) += ccu_phase.o
--
2.10.2