sh: clkfwk: Use arch_clk_init() for on-chip clock registration.
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>
This commit is contained in:
parent
f3f8290cb3
commit
9fe5ee0efb
|
@ -437,13 +437,7 @@ void clk_put(struct clk *clk)
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(clk_put);
|
EXPORT_SYMBOL_GPL(clk_put);
|
||||||
|
|
||||||
void __init __attribute__ ((weak))
|
int __init __weak arch_clk_init(void)
|
||||||
arch_init_clk_ops(struct clk_ops **ops, int type)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
int __init __attribute__ ((weak))
|
|
||||||
arch_clk_init(void)
|
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -150,7 +150,7 @@ static struct clk *sh4202_onchip_clocks[] = {
|
||||||
&sh4202_shoc_clk,
|
&sh4202_shoc_clk,
|
||||||
};
|
};
|
||||||
|
|
||||||
static int __init sh4202_clk_init(void)
|
int __init arch_clk_init(void)
|
||||||
{
|
{
|
||||||
struct clk *clk = clk_get(NULL, "master_clk");
|
struct clk *clk = clk_get(NULL, "master_clk");
|
||||||
int i, ret = 0;
|
int i, ret = 0;
|
||||||
|
@ -166,4 +166,3 @@ static int __init sh4202_clk_init(void)
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
arch_initcall(sh4202_clk_init);
|
|
||||||
|
|
|
@ -90,7 +90,7 @@ static struct clk *sh7763_onchip_clocks[] = {
|
||||||
&sh7763_shyway_clk,
|
&sh7763_shyway_clk,
|
||||||
};
|
};
|
||||||
|
|
||||||
static int __init sh7763_clk_init(void)
|
int __init arch_clk_init(void)
|
||||||
{
|
{
|
||||||
struct clk *clk = clk_get(NULL, "master_clk");
|
struct clk *clk = clk_get(NULL, "master_clk");
|
||||||
int i, ret = 0;
|
int i, ret = 0;
|
||||||
|
@ -106,4 +106,3 @@ static int __init sh7763_clk_init(void)
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
arch_initcall(sh7763_clk_init);
|
|
||||||
|
|
|
@ -96,7 +96,7 @@ static struct clk *sh7780_onchip_clocks[] = {
|
||||||
&sh7780_shyway_clk,
|
&sh7780_shyway_clk,
|
||||||
};
|
};
|
||||||
|
|
||||||
static int __init sh7780_clk_init(void)
|
int __init arch_clk_init(void)
|
||||||
{
|
{
|
||||||
struct clk *clk = clk_get(NULL, "master_clk");
|
struct clk *clk = clk_get(NULL, "master_clk");
|
||||||
int i, ret = 0;
|
int i, ret = 0;
|
||||||
|
@ -112,4 +112,3 @@ static int __init sh7780_clk_init(void)
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
arch_initcall(sh7780_clk_init);
|
|
||||||
|
|
|
@ -134,7 +134,7 @@ static struct clk *sh7785_onchip_clocks[] = {
|
||||||
&sh7785_ram_clk,
|
&sh7785_ram_clk,
|
||||||
};
|
};
|
||||||
|
|
||||||
static int __init sh7785_clk_init(void)
|
int __init arch_clk_init(void)
|
||||||
{
|
{
|
||||||
struct clk *clk = clk_get(NULL, "master_clk");
|
struct clk *clk = clk_get(NULL, "master_clk");
|
||||||
int i, ret = 0;
|
int i, ret = 0;
|
||||||
|
@ -150,4 +150,3 @@ static int __init sh7785_clk_init(void)
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
arch_initcall(sh7785_clk_init);
|
|
||||||
|
|
|
@ -120,7 +120,7 @@ static struct clk *sh7786_onchip_clocks[] = {
|
||||||
&sh7786_ddr_clk,
|
&sh7786_ddr_clk,
|
||||||
};
|
};
|
||||||
|
|
||||||
static int __init sh7786_clk_init(void)
|
int __init arch_clk_init(void)
|
||||||
{
|
{
|
||||||
struct clk *clk = clk_get(NULL, "master_clk");
|
struct clk *clk = clk_get(NULL, "master_clk");
|
||||||
int i, ret = 0;
|
int i, ret = 0;
|
||||||
|
@ -136,4 +136,3 @@ static int __init sh7786_clk_init(void)
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
arch_initcall(sh7786_clk_init);
|
|
||||||
|
|
|
@ -107,7 +107,7 @@ static struct clk *shx3_onchip_clocks[] = {
|
||||||
&shx3_shyway_clk,
|
&shx3_shyway_clk,
|
||||||
};
|
};
|
||||||
|
|
||||||
static int __init shx3_clk_init(void)
|
int __init arch_clk_init(void)
|
||||||
{
|
{
|
||||||
struct clk *clk = clk_get(NULL, "master_clk");
|
struct clk *clk = clk_get(NULL, "master_clk");
|
||||||
int i, ret = 0;
|
int i, ret = 0;
|
||||||
|
@ -123,4 +123,3 @@ static int __init shx3_clk_init(void)
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
arch_initcall(shx3_clk_init);
|
|
||||||
|
|
Loading…
Reference in New Issue