]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
mx31: Define default SoC input clock frequencies
authorBenoît Thébaudeau <benoit.thebaudeau@advansee.com>
Tue, 21 Aug 2012 11:06:03 +0000 (11:06 +0000)
committerStefano Babic <sbabic@denx.de>
Thu, 6 Sep 2012 12:23:30 +0000 (14:23 +0200)
Define default SoC input clock frequencies for i.MX31 in order to get rid of
duplicated definitions.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Helmut Raiger <helmut.raiger@hale.at>
arch/arm/cpu/arm1136/mx31/generic.c
arch/arm/cpu/arm1136/mx31/timer.c
arch/arm/include/asm/arch-mx31/clock.h
include/configs/imx31_litekit.h
include/configs/imx31_phycore.h
include/configs/mx31ads.h
include/configs/mx31pdk.h
include/configs/qong.h
include/configs/tt01.h

index 3a35bfa327851e7e08848a182ab4a2951a29641d..93f429cc52eccd31f362f8e26ec42bc76791f569 100644 (file)
@@ -49,9 +49,9 @@ static u32 mx31_get_mpl_dpdgck_clk(void)
        u32 infreq;
 
        if ((readl(CCM_CCMR) & CCMR_PRCS_MASK) == CCMR_FPM)
-               infreq = CONFIG_MX31_CLK32 * 1024;
+               infreq = MXC_CLK32 * 1024;
        else
-               infreq = CONFIG_MX31_HCLK_FREQ;
+               infreq = MXC_HCLK;
 
        return mx31_decode_pll(readl(CCM_MPCTL), infreq);
 }
index 72081a8bde263a0ae8a4631e4e96abfa06bd0d81..36266da5aa8d68430f9a88313020055cc382d18a 100644 (file)
@@ -23,6 +23,7 @@
 
 #include <common.h>
 #include <asm/arch/imx-regs.h>
+#include <asm/arch/clock.h>
 #include <div64.h>
 #include <watchdog.h>
 #include <asm/io.h>
@@ -53,28 +54,27 @@ DECLARE_GLOBAL_DATA_PTR;
 static inline unsigned long long tick_to_time(unsigned long long tick)
 {
        tick *= CONFIG_SYS_HZ;
-       do_div(tick, CONFIG_MX31_CLK32);
+       do_div(tick, MXC_CLK32);
        return tick;
 }
 
 static inline unsigned long long time_to_tick(unsigned long long time)
 {
-       time *= CONFIG_MX31_CLK32;
+       time *= MXC_CLK32;
        do_div(time, CONFIG_SYS_HZ);
        return time;
 }
 
 static inline unsigned long long us_to_tick(unsigned long long us)
 {
-       us = us * CONFIG_MX31_CLK32 + 999999;
+       us = us * MXC_CLK32 + 999999;
        do_div(us, 1000000);
        return us;
 }
 #else
 /* ~2% error */
-#define TICK_PER_TIME  ((CONFIG_MX31_CLK32 + CONFIG_SYS_HZ / 2) \
-                                                       / CONFIG_SYS_HZ)
-#define US_PER_TICK    (1000000 / CONFIG_MX31_CLK32)
+#define TICK_PER_TIME  ((MXC_CLK32 + CONFIG_SYS_HZ / 2) / CONFIG_SYS_HZ)
+#define US_PER_TICK    (1000000 / MXC_CLK32)
 
 static inline unsigned long long tick_to_time(unsigned long long tick)
 {
@@ -128,7 +128,7 @@ ulong get_timer_masked(void)
 {
        /*
         * get_ticks() returns a long long (64 bit), it wraps in
-        * 2^64 / CONFIG_MX31_CLK32 = 2^64 / 2^15 = 2^49 ~ 5 * 10^14 (s) ~
+        * 2^64 / MXC_CLK32 = 2^64 / 2^15 = 2^49 ~ 5 * 10^14 (s) ~
         * 5 * 10^9 days... and get_ticks() * CONFIG_SYS_HZ wraps in
         * 5 * 10^6 days - long enough.
         */
@@ -159,7 +159,7 @@ void __udelay(unsigned long usec)
  */
 ulong get_tbclk(void)
 {
-       return CONFIG_MX31_CLK32;
+       return MXC_CLK32;
 }
 
 void reset_cpu(ulong addr)
index 852c19c1a74c45acd296001aa5749cc0f0351c45..9468b45feb0322c5cc8080930e8bcd3be2546bd4 100644 (file)
 #ifndef __ASM_ARCH_CLOCK_H
 #define __ASM_ARCH_CLOCK_H
 
+#include <common.h>
+
+#ifdef CONFIG_MX31_HCLK_FREQ
+#define MXC_HCLK       CONFIG_MX31_HCLK_FREQ
+#else
+#define MXC_HCLK       26000000
+#endif
+
+#ifdef CONFIG_MX31_CLK32
+#define MXC_CLK32      CONFIG_MX31_CLK32
+#else
+#define MXC_CLK32      32768
+#endif
+
 enum mxc_clock {
        MXC_ARM_CLK,
        MXC_IPG_CLK,
index 8cca4785780b9adbf8a7728e1d3a4d9fe7845c0c..6ae764a2d4a59e85a58fdba6900099c338519335 100644 (file)
@@ -33,7 +33,6 @@
  /* High Level Configuration Options */
 #define CONFIG_ARM1136         1    /* This is an arm1136 CPU core */
 #define CONFIG_MX31            1    /* in a mx31 */
-#define CONFIG_MX31_HCLK_FREQ  26000000
 #define CONFIG_MX31_CLK32      32000
 
 #define CONFIG_DISPLAY_CPUINFO
index b21621ca9e21f3a887856ccda6897fbc11e54654..f36ceea57f6cfb23979b63496a34264ef042ba9c 100644 (file)
@@ -33,7 +33,6 @@
 /* High Level Configuration Options */
 #define CONFIG_ARM1136                 /* This is an arm1136 CPU core */
 #define CONFIG_MX31                    /* in a mx31 */
-#define CONFIG_MX31_HCLK_FREQ  26000000
 #define CONFIG_MX31_CLK32      32000
 
 #define CONFIG_DISPLAY_CPUINFO
index 081fbf69058047fc47719cd8321b43898d455463..9d9f4a782290918430c3b865adf240418d5edfef 100644 (file)
@@ -27,8 +27,6 @@
  /* High Level Configuration Options */
 #define CONFIG_ARM1136         1               /* This is an arm1136 CPU core */
 #define CONFIG_MX31            1               /* in a mx31 */
-#define CONFIG_MX31_HCLK_FREQ  26000000        /* RedBoot says 26MHz */
-#define CONFIG_MX31_CLK32      32768
 
 #define CONFIG_DISPLAY_CPUINFO
 #define CONFIG_DISPLAY_BOARDINFO
index 17d3143eba827943c9d88f1d99f10767b1c7382d..b272674f820e8a193603dc39aff5418aee84c7d3 100644 (file)
@@ -35,8 +35,6 @@
 /* High Level Configuration Options */
 #define CONFIG_ARM1136                 /* This is an arm1136 CPU core */
 #define CONFIG_MX31                    /* in a mx31 */
-#define CONFIG_MX31_HCLK_FREQ  26000000
-#define CONFIG_MX31_CLK32      32768
 
 #define CONFIG_DISPLAY_CPUINFO
 #define CONFIG_DISPLAY_BOARDINFO
index 485e1b1f043430f071745f16d1e5c5f4bc8118dc..c2bd09729dacdde9b465a53dcd20fbc1bad68cd4 100644 (file)
@@ -28,8 +28,6 @@
 #define CONFIG_ARM1136                 /* This is an arm1136 CPU core */
 #define CONFIG_MX31                    /* in a mx31 */
 #define CONFIG_QONG
-#define CONFIG_MX31_HCLK_FREQ  26000000        /* 26MHz */
-#define CONFIG_MX31_CLK32      32768
 
 #define CONFIG_DISPLAY_CPUINFO
 #define CONFIG_DISPLAY_BOARDINFO
index cc68a42e86a3181a1ad3423673bf4e90e4776669..f46efa55f1651bfec653bc376b9e51762fa7cd62 100644 (file)
@@ -31,8 +31,6 @@
 /* High Level Configuration Options */
 #define CONFIG_ARM1136
 #define CONFIG_MX31
-#define CONFIG_MX31_HCLK_FREQ  26000000
-#define CONFIG_MX31_CLK32      32768
 
 #define CONFIG_DISPLAY_CPUINFO
 #define CONFIG_DISPLAY_BOARDINFO