use CONFIG_COMMON_CLK_ROCKCHIP for Rk common clk drivers.
use CONFIG_CLK_RKXX for Rk soc clk driver.
Mark CONFIG_CLK_RK3399 to "tristate",
to support building Rk3399 SoC clock driver as module.

Signed-off-by: Elaine Zhang <zhangq...@rock-chips.com>
Reviewed-by: Kever Yang <kever.y...@rock-chips.com>
---
 drivers/clk/Kconfig           |  1 +
 drivers/clk/rockchip/Kconfig  | 78 +++++++++++++++++++++++++++++++++++
 drivers/clk/rockchip/Makefile | 42 ++++++++++---------
 3 files changed, 101 insertions(+), 20 deletions(-)
 create mode 100644 drivers/clk/rockchip/Kconfig

diff --git a/drivers/clk/Kconfig b/drivers/clk/Kconfig
index 4026fac9fac3..b41aaed9bd51 100644
--- a/drivers/clk/Kconfig
+++ b/drivers/clk/Kconfig
@@ -373,6 +373,7 @@ source "drivers/clk/meson/Kconfig"
 source "drivers/clk/mvebu/Kconfig"
 source "drivers/clk/qcom/Kconfig"
 source "drivers/clk/renesas/Kconfig"
+source "drivers/clk/rockchip/Kconfig"
 source "drivers/clk/samsung/Kconfig"
 source "drivers/clk/sifive/Kconfig"
 source "drivers/clk/sprd/Kconfig"
diff --git a/drivers/clk/rockchip/Kconfig b/drivers/clk/rockchip/Kconfig
new file mode 100644
index 000000000000..a1a21c99d388
--- /dev/null
+++ b/drivers/clk/rockchip/Kconfig
@@ -0,0 +1,78 @@
+# SPDX-License-Identifier: GPL-2.0
+# common clock support for ROCKCHIP SoC family.
+
+config COMMON_CLK_ROCKCHIP
+       bool "Rockchip clock controller common support"
+       depends on ARCH_ROCKCHIP
+       default ARCH_ROCKCHIP
+       help
+         Say y here to enable common clock controller for Rockchip platforms.
+
+if COMMON_CLK_ROCKCHIP
+config CLK_PX30
+       bool "Rockchip Px30 clock controller support"
+       default y
+       help
+         Build the driver for Px30 Clock Driver.
+
+config CLK_RV110X
+       bool "Rockchip Rv110x clock controller support"
+       default y
+       help
+         Build the driver for Rv110x Clock Driver.
+
+config CLK_RK3036
+       bool "Rockchip Rk3036 clock controller support"
+       default y
+       help
+         Build the driver for Rk3036 Clock Driver.
+
+config CLK_RK312X
+       bool "Rockchip Rk312x clock controller support"
+       default y
+       help
+         Build the driver for Rk312x Clock Driver.
+
+config CLK_RK3188
+       bool "Rockchip Rk3188 clock controller support"
+       default y
+       help
+         Build the driver for Rk3188 Clock Driver.
+
+config CLK_RK322X
+       bool "Rockchip Rk322x clock controller support"
+       default y
+       help
+         Build the driver for Rk322x Clock Driver.
+
+config CLK_RK3288
+       bool "Rockchip Rk3288 clock controller support"
+       depends on ARM
+       default y
+       help
+         Build the driver for Rk3288 Clock Driver.
+
+config CLK_RK3308
+       bool "Rockchip Rk3308 clock controller support"
+       default y
+       help
+         Build the driver for Rk3308 Clock Driver.
+
+config CLK_RK3328
+       bool "Rockchip Rk3328 clock controller support"
+       default y
+       help
+         Build the driver for Rk3328 Clock Driver.
+
+config CLK_RK3368
+       bool "Rockchip Rk3368 clock controller support"
+       default y
+       help
+         Build the driver for Rk3368 Clock Driver.
+
+config CLK_RK3399
+       tristate "Rockchip Rk3399 clock controller support"
+       default y
+       help
+         Build the driver for Rk3399 Clock Driver.
+endif
diff --git a/drivers/clk/rockchip/Makefile b/drivers/clk/rockchip/Makefile
index 7c5b5813a87c..a99e4d9bbae1 100644
--- a/drivers/clk/rockchip/Makefile
+++ b/drivers/clk/rockchip/Makefile
@@ -3,24 +3,26 @@
 # Rockchip Clock specific Makefile
 #
 
-obj-y  += clk.o
-obj-y  += clk-pll.o
-obj-y  += clk-cpu.o
-obj-y  += clk-half-divider.o
-obj-y  += clk-inverter.o
-obj-y  += clk-mmc-phase.o
-obj-y  += clk-muxgrf.o
-obj-y  += clk-ddr.o
-obj-$(CONFIG_RESET_CONTROLLER) += softrst.o
+obj-$(CONFIG_COMMON_CLK_ROCKCHIP) += clk-rockchip.o
 
-obj-y  += clk-px30.o
-obj-y  += clk-rv1108.o
-obj-y  += clk-rk3036.o
-obj-y  += clk-rk3128.o
-obj-y  += clk-rk3188.o
-obj-y  += clk-rk3228.o
-obj-y  += clk-rk3288.o
-obj-y  += clk-rk3308.o
-obj-y  += clk-rk3328.o
-obj-y  += clk-rk3368.o
-obj-y  += clk-rk3399.o
+clk-rockchip-y += clk.o
+clk-rockchip-y += clk-pll.o
+clk-rockchip-y += clk-cpu.o
+clk-rockchip-y += clk-half-divider.o
+clk-rockchip-y += clk-inverter.o
+clk-rockchip-y += clk-mmc-phase.o
+clk-rockchip-y += clk-muxgrf.o
+clk-rockchip-y += clk-ddr.o
+clk-rockchip-$(CONFIG_RESET_CONTROLLER) += softrst.o
+
+obj-$(CONFIG_CLK_PX30)          += clk-px30.o
+obj-$(CONFIG_CLK_RV110X)        += clk-rv1108.o
+obj-$(CONFIG_CLK_RK3036)        += clk-rk3036.o
+obj-$(CONFIG_CLK_RK312X)        += clk-rk3128.o
+obj-$(CONFIG_CLK_RK3188)        += clk-rk3188.o
+obj-$(CONFIG_CLK_RK322X)        += clk-rk3228.o
+obj-$(CONFIG_CLK_RK3288)        += clk-rk3288.o
+obj-$(CONFIG_CLK_RK3308)        += clk-rk3308.o
+obj-$(CONFIG_CLK_RK3328)        += clk-rk3328.o
+obj-$(CONFIG_CLK_RK3368)        += clk-rk3368.o
+obj-$(CONFIG_CLK_RK3399)        += clk-rk3399.o
-- 
2.17.1



Reply via email to