sh: clkfwk: Use arch_clk_init() for on-chip clock registration.
authorPaul Mundt <lethal@linux-sh.org>
Tue, 12 May 2009 10:29:04 +0000 (19:29 +0900)
committerPaul Mundt <lethal@linux-sh.org>
Tue, 12 May 2009 10:29:04 +0000 (19:29 +0900)
CPUs registering on-chip clocks should be using arch_clk_init() with the
new scheme so that the CPUs have the opportunity to establish the
topology prior to the initial root clock rate propagation. This ensures
that CPUs with on-chip clocks that use CLK_ENABLE_ON_INIT are properly
enabled at the initial propagation time, without having to further poke
the root clocks.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
arch/sh/kernel/cpu/clock.c
arch/sh/kernel/cpu/sh4/clock-sh4-202.c
arch/sh/kernel/cpu/sh4a/clock-sh7763.c
arch/sh/kernel/cpu/sh4a/clock-sh7780.c
arch/sh/kernel/cpu/sh4a/clock-sh7785.c
arch/sh/kernel/cpu/sh4a/clock-sh7786.c
arch/sh/kernel/cpu/sh4a/clock-shx3.c

index 9e1fc13..f833843 100644 (file)
@@ -437,13 +437,7 @@ void clk_put(struct clk *clk)
 }
 EXPORT_SYMBOL_GPL(clk_put);
 
-void __init __attribute__ ((weak))
-arch_init_clk_ops(struct clk_ops **ops, int type)
-{
-}
-
-int __init __attribute__ ((weak))
-arch_clk_init(void)
+int __init __weak arch_clk_init(void)
 {
        return 0;
 }
index 435f4f1..a72dc32 100644 (file)
@@ -150,7 +150,7 @@ static struct clk *sh4202_onchip_clocks[] = {
        &sh4202_shoc_clk,
 };
 
-static int __init sh4202_clk_init(void)
+int __init arch_clk_init(void)
 {
        struct clk *clk = clk_get(NULL, "master_clk");
        int i, ret = 0;
@@ -166,4 +166,3 @@ static int __init sh4202_clk_init(void)
 
        return ret;
 }
-arch_initcall(sh4202_clk_init);
index 0110da6..ce3d4e6 100644 (file)
@@ -90,7 +90,7 @@ static struct clk *sh7763_onchip_clocks[] = {
        &sh7763_shyway_clk,
 };
 
-static int __init sh7763_clk_init(void)
+int __init arch_clk_init(void)
 {
        struct clk *clk = clk_get(NULL, "master_clk");
        int i, ret = 0;
@@ -106,4 +106,3 @@ static int __init sh7763_clk_init(void)
 
        return ret;
 }
-arch_initcall(sh7763_clk_init);
index 0a22d50..38b8b1d 100644 (file)
@@ -96,7 +96,7 @@ static struct clk *sh7780_onchip_clocks[] = {
        &sh7780_shyway_clk,
 };
 
-static int __init sh7780_clk_init(void)
+int __init arch_clk_init(void)
 {
        struct clk *clk = clk_get(NULL, "master_clk");
        int i, ret = 0;
@@ -112,4 +112,3 @@ static int __init sh7780_clk_init(void)
 
        return ret;
 }
-arch_initcall(sh7780_clk_init);
index 4dcd1f6..fa14f35 100644 (file)
@@ -134,7 +134,7 @@ static struct clk *sh7785_onchip_clocks[] = {
        &sh7785_ram_clk,
 };
 
-static int __init sh7785_clk_init(void)
+int __init arch_clk_init(void)
 {
        struct clk *clk = clk_get(NULL, "master_clk");
        int i, ret = 0;
@@ -150,4 +150,3 @@ static int __init sh7785_clk_init(void)
 
        return ret;
 }
-arch_initcall(sh7785_clk_init);
index 825556f..7907002 100644 (file)
@@ -120,7 +120,7 @@ static struct clk *sh7786_onchip_clocks[] = {
        &sh7786_ddr_clk,
 };
 
-static int __init sh7786_clk_init(void)
+int __init arch_clk_init(void)
 {
        struct clk *clk = clk_get(NULL, "master_clk");
        int i, ret = 0;
@@ -136,4 +136,3 @@ static int __init sh7786_clk_init(void)
 
        return ret;
 }
-arch_initcall(sh7786_clk_init);
index 1eb149b..c14553e 100644 (file)
@@ -107,7 +107,7 @@ static struct clk *shx3_onchip_clocks[] = {
        &shx3_shyway_clk,
 };
 
-static int __init shx3_clk_init(void)
+int __init arch_clk_init(void)
 {
        struct clk *clk = clk_get(NULL, "master_clk");
        int i, ret = 0;
@@ -123,4 +123,3 @@ static int __init shx3_clk_init(void)
 
        return ret;
 }
-arch_initcall(shx3_clk_init);