瀏覽代碼

sh: clkfwk: Make clock-cpg usable for non-legacy platforms.

This adds a new SH_CLK_CPG for parts that have CPG support.
SH_CLK_CPG_LEGACY is made to depend on this, and still needs to be set
for platforms that want clock-cpg to register the legacy clocks. With
this new config item in place, it is now possible to start layering more
generic CPG code in place while other platforms transition off of the
legacy clocks.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Paul Mundt 16 年之前
父節點
當前提交
36aa1e32f4
共有 3 個文件被更改,包括 7 次插入1 次删除
  1. 4 0
      arch/sh/Kconfig
  2. 1 1
      arch/sh/kernel/cpu/Makefile
  3. 2 0
      arch/sh/kernel/cpu/clock-cpg.c

+ 4 - 0
arch/sh/Kconfig

@@ -513,7 +513,11 @@ config SH_PCLK_FREQ
 	  This is necessary for determining the reference clock value on
 	  This is necessary for determining the reference clock value on
 	  platforms lacking an RTC.
 	  platforms lacking an RTC.
 
 
+config SH_CLK_CPG
+	def_bool y
+
 config SH_CLK_CPG_LEGACY
 config SH_CLK_CPG_LEGACY
+	depends on SH_CLK_CPG
 	def_bool y if !CPU_SUBTYPE_SH7785
 	def_bool y if !CPU_SUBTYPE_SH7785
 
 
 config SH_CLK_MD
 config SH_CLK_MD

+ 1 - 1
arch/sh/kernel/cpu/Makefile

@@ -17,6 +17,6 @@ obj-$(CONFIG_ARCH_SHMOBILE)	+= shmobile/
 
 
 obj-$(CONFIG_UBC_WAKEUP)	+= ubc.o
 obj-$(CONFIG_UBC_WAKEUP)	+= ubc.o
 obj-$(CONFIG_SH_ADC)		+= adc.o
 obj-$(CONFIG_SH_ADC)		+= adc.o
-obj-$(CONFIG_SH_CLK_CPG_LEGACY)	+= clock-cpg.o
+obj-$(CONFIG_SH_CLK_CPG)	+= clock-cpg.o
 
 
 obj-y	+= irq/ init.o clock.o
 obj-y	+= irq/ init.o clock.o

+ 2 - 0
arch/sh/kernel/cpu/clock-cpg.c

@@ -2,6 +2,7 @@
 #include <linux/compiler.h>
 #include <linux/compiler.h>
 #include <asm/clock.h>
 #include <asm/clock.h>
 
 
+#ifdef CONFIG_SH_CLK_CPG_LEGACY
 static struct clk master_clk = {
 static struct clk master_clk = {
 	.name		= "master_clk",
 	.name		= "master_clk",
 	.flags		= CLK_ENABLE_ON_INIT,
 	.flags		= CLK_ENABLE_ON_INIT,
@@ -58,3 +59,4 @@ int __init __weak arch_clk_init(void)
 {
 {
 	return cpg_clk_init();
 	return cpg_clk_init();
 }
 }
+#endif /* CONFIG_SH_CPG_CLK_LEGACY */