OSDN Git Service

clk: msm: Add MSM clock config for MSM clock controller
authorTaniya Das <tdas@codeaurora.org>
Fri, 24 Jun 2016 10:33:01 +0000 (16:03 +0530)
committerGerrit - the friendly Code Review server <code-review@localhost>
Wed, 13 Jul 2016 05:39:17 +0000 (22:39 -0700)
Support MSM clock controller config to allow MSM devices to use the clock
controller.

Change-Id: Iae2cf922e8a69979ea353bf7353304f9be7405ce
Signed-off-by: Taniya Das <tdas@codeaurora.org>
arch/arm64/Kconfig.platforms
drivers/clk/msm/Kconfig
drivers/clk/msm/Makefile
drivers/clk/msm/mdss/Kconfig

index 4e38de7..7aa8022 100644 (file)
@@ -62,6 +62,7 @@ config ARCH_QCOM
 config ARCH_MSM8996
         bool "Enable Support for Qualcomm MSM8996"
        depends on ARCH_QCOM
+       select COMMON_CLK_MSM
        help
        This enables support for the MSM8996 chipset. If you do not
        wish to build a kernel that runs on this chipset, say 'N' here.
@@ -69,6 +70,7 @@ config ARCH_MSM8996
 config ARCH_MSMCOBALT
         bool "Enable Support for Qualcomm MSMCOBALT"
        depends on ARCH_QCOM
+       select COMMON_CLK_MSM
        help
        This enables support for the MSMCOBALT chipset. If you do not
        wish to build a kernel that runs on this chipset, say 'N' here.
@@ -76,6 +78,7 @@ config ARCH_MSMCOBALT
 config ARCH_MSMHAMSTER
        bool "Enable Support for Qualcomm Technologies Inc MSMHAMSTER"
        depends on ARCH_QCOM
+       select COMMON_CLK_MSM
        help
          This enables support for the MSMHAMSTER chipset.
          If you do not wish to build a kernel that runs
@@ -84,6 +87,7 @@ config ARCH_MSMHAMSTER
 config ARCH_MSMFALCON
        bool "Enable Support for Qualcomm Technologies Inc MSMFALCON"
        depends on ARCH_QCOM
+       select COMMON_CLK_MSM
        help
          This enables support for the MSMFALCON chipset.
          If you do not wish to build a kernel that runs
index 17102dd..d94678e 100644 (file)
@@ -1,5 +1,16 @@
+config COMMON_CLK_MSM
+       tristate "Support for MSM clock controllers"
+       depends on OF
+       depends on ARCH_QCOM
+       help
+         This support clock controller used by MSM devices which support
+         global, mmss and gpu clock controller.
+         Say Y if you want to support the clocks exposed by the MSM on
+         platforms such as msm8996, msmcobalt, msmfalcon etc.
+
 config MSM_CLK_CONTROLLER_V2
        bool "QTI clock driver"
+       depends on COMMON_CLK_MSM
        ---help---
           Generate clock data structures from definitions found in
           device tree.
index cd652c6..107af19 100644 (file)
@@ -1,28 +1,30 @@
-obj-y                          += clock.o
-obj-y                          += clock-dummy.o
-obj-y                          += clock-generic.o
-obj-y                          += clock-local2.o
-obj-y                          += clock-pll.o
-obj-y                          += clock-alpha-pll.o
-obj-y                          += clock-rpm.o
-obj-y                          += clock-voter.o
+obj-$(CONFIG_COMMON_CLK_MSM)   += clock.o
+obj-$(CONFIG_COMMON_CLK_MSM)   += clock-dummy.o
+obj-$(CONFIG_COMMON_CLK_MSM)   += clock-generic.o
+obj-$(CONFIG_COMMON_CLK_MSM)   += clock-local2.o
+obj-$(CONFIG_COMMON_CLK_MSM)   += clock-pll.o
+obj-$(CONFIG_COMMON_CLK_MSM)   += clock-alpha-pll.o
+obj-$(CONFIG_COMMON_CLK_MSM)   += clock-rpm.o
+obj-$(CONFIG_COMMON_CLK_MSM)   += clock-voter.o
 
 obj-$(CONFIG_MSM_CLK_CONTROLLER_V2)    += msm-clock-controller.o
 
-obj-y          += clock-debug.o
+obj-$(CONFIG_COMMON_CLK_MSM)   += clock-debug.o
 
 # MSM 8996
-obj-$(CONFIG_ARCH_QCOM) += clock-gcc-8996.o
-obj-$(CONFIG_ARCH_QCOM) += clock-mmss-8996.o
-obj-$(CONFIG_ARCH_QCOM) += clock-cpu-8996.o
+ifeq ($(CONFIG_COMMON_CLK_MSM), y)
+       obj-$(CONFIG_ARCH_QCOM) += clock-gcc-8996.o
+       obj-$(CONFIG_ARCH_QCOM) += clock-mmss-8996.o
+       obj-$(CONFIG_ARCH_QCOM) += clock-cpu-8996.o
+endif
 
 # MSM COBALT
-obj-$(CONFIG_ARCH_MSMCOBALT)   += clock-gcc-cobalt.o
-obj-$(CONFIG_ARCH_MSMCOBALT)   += clock-gpu-cobalt.o
-obj-$(CONFIG_ARCH_MSMCOBALT)   += clock-mmss-cobalt.o
-obj-$(CONFIG_ARCH_MSMCOBALT)   += clock-osm.o
+ifeq ($(CONFIG_COMMON_CLK_MSM), y)
+       obj-$(CONFIG_ARCH_MSMCOBALT)    += clock-gcc-cobalt.o
+       obj-$(CONFIG_ARCH_MSMCOBALT)    += clock-gpu-cobalt.o
+       obj-$(CONFIG_ARCH_MSMCOBALT)    += clock-mmss-cobalt.o
+       obj-$(CONFIG_ARCH_MSMCOBALT)    += clock-osm.o
+endif
 
-# CPU clocks
-
-obj-y                          += gdsc.o
-obj-y                          += mdss/
+obj-$(CONFIG_COMMON_CLK_MSM)   += gdsc.o
+obj-$(CONFIG_COMMON_CLK_MSM)-y += mdss/
index 229780e..c332b34 100644 (file)
@@ -1,5 +1,6 @@
 config MSM_MDSS_PLL
        bool "MDSS pll programming"
+       depends on COMMON_CLK_MSM
        ---help---
        It provides support for DSI, eDP and HDMI interface pll programming on MDSS
        hardware. It also handles the pll specific resources and turn them on/off when