]> git.karo-electronics.de Git - linux-beck.git/commitdiff
davinci: Add clock init call to common init routine
authorMark A. Greer <mgreer@mvista.com>
Wed, 15 Apr 2009 19:39:23 +0000 (12:39 -0700)
committerKevin Hilman <khilman@deeprootsystems.com>
Tue, 26 May 2009 15:14:59 +0000 (08:14 -0700)
All of the davinci SoCs need to call davinci_clk_init() so
put the call in the common init routine.

Signed-off-by: Mark A. Greer <mgreer@mvista.com>
Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
arch/arm/mach-davinci/common.c
arch/arm/mach-davinci/dm355.c
arch/arm/mach-davinci/dm644x.c
arch/arm/mach-davinci/dm646x.c
arch/arm/mach-davinci/include/mach/common.h

index 29b3a8d51211d9d072f37ba690fa1b87979a3689..2e5b888e6ca66b652dc0624e2265ae1c360a7428 100644 (file)
@@ -17,6 +17,8 @@
 #include <mach/common.h>
 #include <mach/cputype.h>
 
+#include "clock.h"
+
 struct davinci_soc_info davinci_soc_info;
 EXPORT_SYMBOL(davinci_soc_info);
 
@@ -75,6 +77,13 @@ void __init davinci_common_init(struct davinci_soc_info *soc_info)
        davinci_soc_info.cpu_id = dip->cpu_id;
        pr_info("DaVinci %s variant 0x%x\n", dip->name, dip->variant);
 
+       if (davinci_soc_info.cpu_clks) {
+               ret = davinci_clk_init(davinci_soc_info.cpu_clks);
+
+               if (ret != 0)
+                       goto err;
+       }
+
        return;
 
 err:
index 0f724c06008405575d4359171f85c1bd6788b75c..e93840a814ed6f97bb22c65392e229cd7b28c290 100644 (file)
@@ -551,12 +551,12 @@ static struct davinci_soc_info davinci_soc_info_dm355 = {
        .jtag_id_base           = IO_ADDRESS(0x01c40028),
        .ids                    = dm355_ids,
        .ids_num                = ARRAY_SIZE(dm355_ids),
+       .cpu_clks               = dm355_clks,
 };
 
 void __init dm355_init(void)
 {
        davinci_common_init(&davinci_soc_info_dm355);
-       davinci_clk_init(dm355_clks);
        davinci_mux_register(dm355_pins, ARRAY_SIZE(dm355_pins));;
 }
 
index 9bcd98c6820b3f284675545c2c5a0f289c295d92..648160c2960d823518b1b6f4d84c706b6b20bfb2 100644 (file)
@@ -491,12 +491,12 @@ static struct davinci_soc_info davinci_soc_info_dm644x = {
        .jtag_id_base           = IO_ADDRESS(0x01c40028),
        .ids                    = dm644x_ids,
        .ids_num                = ARRAY_SIZE(dm644x_ids),
+       .cpu_clks               = dm644x_clks,
 };
 
 void __init dm644x_init(void)
 {
        davinci_common_init(&davinci_soc_info_dm644x);
-       davinci_clk_init(dm644x_clks);
        davinci_mux_register(dm644x_pins, ARRAY_SIZE(dm644x_pins));
 }
 
index cd86bb78e0c106a6c640014c4c859f97e24ab82f..7cf9705be9ce55229b856fc5aba773e0bb332cb7 100644 (file)
@@ -471,12 +471,12 @@ static struct davinci_soc_info davinci_soc_info_dm646x = {
        .jtag_id_base           = IO_ADDRESS(0x01c40028),
        .ids                    = dm646x_ids,
        .ids_num                = ARRAY_SIZE(dm646x_ids),
+       .cpu_clks               = dm646x_clks,
 };
 
 void __init dm646x_init(void)
 {
        davinci_common_init(&davinci_soc_info_dm646x);
-       davinci_clk_init(dm646x_clks);
        davinci_mux_register(dm646x_pins, ARRAY_SIZE(dm646x_pins));
 }
 
index ece1cd42738f7138a27759a7f1cc951de93d2353..97782a76588229ef6569bfda06cc5338f9ad772f 100644 (file)
@@ -33,6 +33,7 @@ struct davinci_soc_info {
        void __iomem                    *jtag_id_base;
        struct davinci_id               *ids;
        unsigned long                   ids_num;
+       struct davinci_clk              *cpu_clks;
 };
 
 extern struct davinci_soc_info davinci_soc_info;