sh: Only provide a PCLK definition for legacy CPG CPUs.
authorPaul Mundt <lethal@linux-sh.org>
Tue, 29 Dec 2009 02:09:30 +0000 (11:09 +0900)
committerPaul Mundt <lethal@linux-sh.org>
Tue, 29 Dec 2009 02:09:30 +0000 (11:09 +0900)
As CPUs are migrated over to more fully-featured clock frameworks of
their own and off of the legacy CPG code, they no longer have any real
need for defining the PCLK value. The PCLK define in itself is already
fairly misleading, as many boards get their input clocks from different
sources, making this value fairly arbitrary anyways.

Outside of the legacy CPG clock framework, the only place where this
value is used is for deriving CLOCK_TICK_RATE, which we set back to the
legacy PIT value that it was before the PCLK definitions were added in
the first place.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
arch/sh/Kconfig
arch/sh/include/asm/timex.h

index 0031a6979f3a1e727e5c0c6d4234c139e347191e..2121fbb2ff4c313c5f0891b783ea4cbf3a571fe0 100644 (file)
@@ -540,14 +540,16 @@ config SH_TIMER_MTU2
 
 config SH_PCLK_FREQ
        int "Peripheral clock frequency (in Hz)"
-       default "27000000" if CPU_SUBTYPE_SH7343
+       depends on SH_CLK_CPG_LEGACY
        default "31250000" if CPU_SUBTYPE_SH7619
-       default "32000000" if CPU_SUBTYPE_SH7722
-       default "33333333" if CPU_SUBTYPE_SH7770 || CPU_SUBTYPE_SH7723 || \
-                             CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7705 || \
-                             CPU_SUBTYPE_SH7203 || CPU_SUBTYPE_SH7206 || \
-                             CPU_SUBTYPE_SH7263 || CPU_SUBTYPE_MXG    || \
-                             CPU_SUBTYPE_SH7786 || CPU_SUBTYPE_SH7724
+       default "33333333" if CPU_SUBTYPE_SH7770 || \
+                             CPU_SUBTYPE_SH7760 || \
+                             CPU_SUBTYPE_SH7705 || \
+                             CPU_SUBTYPE_SH7203 || \
+                             CPU_SUBTYPE_SH7206 || \
+                             CPU_SUBTYPE_SH7263 || \
+                             CPU_SUBTYPE_MXG    || \
+                             CPU_SUBTYPE_SH7786
        default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R
        default "66000000" if CPU_SUBTYPE_SH4_202
        default "50000000"
index b556d49e5f2ba8742a343d6dc9bc8d61b7437029..18bf06d9c764a2ad713b68b8dad67f13e39b8411 100644 (file)
@@ -6,7 +6,17 @@
 #ifndef __ASM_SH_TIMEX_H
 #define __ASM_SH_TIMEX_H
 
+/*
+ * Only parts using the legacy CPG code for their clock framework
+ * implementation need to define their own Pclk value. If provided, this
+ * can be used for accurately setting CLOCK_TICK_RATE, otherwise we
+ * simply fall back on the i8253 PIT value.
+ */
+#ifdef CONFIG_SH_PCLK_FREQ
 #define CLOCK_TICK_RATE                (CONFIG_SH_PCLK_FREQ / 4) /* Underlying HZ */
+#else
+#define CLOCK_TICK_RATE                1193180
+#endif
 
 #include <asm-generic/timex.h>