clk: versatile: pass a name to ICST clock provider
When we have more than one of these clocks in a system (such as on the IM-PD1) we need a mechanism to pass a name for the clock. Refactor to add this as an argument. Acked-by: Mike Turquette <mturquette@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
parent
8f6344faaf
commit
ae6e694ef5
|
@ -119,6 +119,7 @@ static const struct clk_ops icst_ops = {
|
|||
|
||||
struct clk *icst_clk_register(struct device *dev,
|
||||
const struct clk_icst_desc *desc,
|
||||
const char *name,
|
||||
void __iomem *base)
|
||||
{
|
||||
struct clk *clk;
|
||||
|
@ -130,7 +131,7 @@ struct clk *icst_clk_register(struct device *dev,
|
|||
pr_err("could not allocate ICST clock!\n");
|
||||
return ERR_PTR(-ENOMEM);
|
||||
}
|
||||
init.name = "icst";
|
||||
init.name = name;
|
||||
init.ops = &icst_ops;
|
||||
init.flags = CLK_IS_ROOT;
|
||||
init.parent_names = NULL;
|
||||
|
|
|
@ -15,4 +15,5 @@ struct clk_icst_desc {
|
|||
|
||||
struct clk *icst_clk_register(struct device *dev,
|
||||
const struct clk_icst_desc *desc,
|
||||
const char *name,
|
||||
void __iomem *base);
|
||||
|
|
|
@ -66,8 +66,8 @@ void integrator_impd1_clk_init(void __iomem *base, unsigned int id)
|
|||
}
|
||||
imc = &impd1_clks[id];
|
||||
|
||||
clk = icst_clk_register(NULL, &impd1_icst1_desc, base);
|
||||
imc->vcoclk = clk;
|
||||
clk = icst_clk_register(NULL, &impd1_icst1_desc, "icst1", base);
|
||||
imc->vco1clk = clk;
|
||||
imc->clks[0] = clkdev_alloc(clk, NULL, "lm%x:01000", id);
|
||||
|
||||
/* UART reference clock */
|
||||
|
|
|
@ -78,7 +78,7 @@ void __init integrator_clk_init(bool is_cp)
|
|||
clk_register_clkdev(clk, NULL, "sp804");
|
||||
|
||||
/* ICST VCO clock used on the Integrator/CP CLCD */
|
||||
clk = icst_clk_register(NULL, &cp_icst_desc,
|
||||
clk = icst_clk_register(NULL, &cp_icst_desc, "icst",
|
||||
__io_address(INTEGRATOR_HDR_BASE));
|
||||
clk_register_clkdev(clk, NULL, "clcd");
|
||||
}
|
||||
|
|
|
@ -84,9 +84,11 @@ void __init realview_clk_init(void __iomem *sysbase, bool is_pb1176)
|
|||
|
||||
/* ICST VCO clock */
|
||||
if (is_pb1176)
|
||||
clk = icst_clk_register(NULL, &realview_osc0_desc, sysbase);
|
||||
clk = icst_clk_register(NULL, &realview_osc0_desc,
|
||||
"osc0", sysbase);
|
||||
else
|
||||
clk = icst_clk_register(NULL, &realview_osc4_desc, sysbase);
|
||||
clk = icst_clk_register(NULL, &realview_osc4_desc,
|
||||
"osc4", sysbase);
|
||||
|
||||
clk_register_clkdev(clk, NULL, "dev:clcd");
|
||||
clk_register_clkdev(clk, NULL, "issp:clcd");
|
||||
|
|
Loading…
Reference in New Issue