diff options
author | Shawn Guo <shawn.guo@linaro.org> | 2013-03-25 22:57:14 +0800 |
---|---|---|
committer | Shawn Guo <shawn.guo@linaro.org> | 2013-04-01 16:30:02 +0800 |
commit | 2efb950465e9180c3ff657a755b8a973f7b9ae42 (patch) | |
tree | 4df37150ebe557496ec75841137ec3a44c52f8bc | |
parent | 633ef4c7d18982d184242d42056c622a433d93fe (diff) | |
download | linux-2efb950465e9180c3ff657a755b8a973f7b9ae42.tar.gz linux-2efb950465e9180c3ff657a755b8a973f7b9ae42.tar.bz2 linux-2efb950465e9180c3ff657a755b8a973f7b9ae42.zip |
ARM: mxs: look up timrot clock from device tree
Change call clk_get_sys() to of_clk_get() to look up timrot clock from
device tree, so that the clk_register_clkdev() call for timrot can be
saved in clock driver.
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
-rw-r--r-- | arch/arm/boot/dts/imx23.dtsi | 1 | ||||
-rw-r--r-- | arch/arm/boot/dts/imx28.dtsi | 1 | ||||
-rw-r--r-- | arch/arm/mach-mxs/timer.c | 2 | ||||
-rw-r--r-- | drivers/clk/mxs/clk-imx23.c | 2 | ||||
-rw-r--r-- | drivers/clk/mxs/clk-imx28.c | 1 |
5 files changed, 3 insertions, 4 deletions
diff --git a/arch/arm/boot/dts/imx23.dtsi b/arch/arm/boot/dts/imx23.dtsi index 56afcf41aae0..27ce8070e187 100644 --- a/arch/arm/boot/dts/imx23.dtsi +++ b/arch/arm/boot/dts/imx23.dtsi @@ -426,6 +426,7 @@ compatible = "fsl,imx23-timrot", "fsl,timrot"; reg = <0x80068000 0x2000>; interrupts = <28 29 30 31>; + clocks = <&clks 28>; }; auart0: serial@8006c000 { diff --git a/arch/arm/boot/dts/imx28.dtsi b/arch/arm/boot/dts/imx28.dtsi index 7ba49662b9bc..c2f10d381f03 100644 --- a/arch/arm/boot/dts/imx28.dtsi +++ b/arch/arm/boot/dts/imx28.dtsi @@ -838,6 +838,7 @@ compatible = "fsl,imx28-timrot", "fsl,timrot"; reg = <0x80068000 0x2000>; interrupts = <48 49 50 51>; + clocks = <&clks 26>; }; auart0: serial@8006a000 { diff --git a/arch/arm/mach-mxs/timer.c b/arch/arm/mach-mxs/timer.c index fe2903d7939a..f5142aa234a3 100644 --- a/arch/arm/mach-mxs/timer.c +++ b/arch/arm/mach-mxs/timer.c @@ -247,7 +247,7 @@ static void __init mxs_timer_init(struct device_node *np) struct clk *timer_clk; int irq; - timer_clk = clk_get_sys("timrot", NULL); + timer_clk = of_clk_get(np, 0); if (IS_ERR(timer_clk)) { pr_err("%s: failed to get clk\n", __func__); return; diff --git a/drivers/clk/mxs/clk-imx23.c b/drivers/clk/mxs/clk-imx23.c index 291cc44713f4..46ae6bebe445 100644 --- a/drivers/clk/mxs/clk-imx23.c +++ b/drivers/clk/mxs/clk-imx23.c @@ -159,8 +159,6 @@ int __init mx23_clocks_init(void) of_clk_add_provider(np, of_clk_src_onecell_get, &clk_data); } - clk_register_clkdev(clks[clk32k], NULL, "timrot"); - for (i = 0; i < ARRAY_SIZE(clks_init_on); i++) clk_prepare_enable(clks[clks_init_on[i]]); diff --git a/drivers/clk/mxs/clk-imx28.c b/drivers/clk/mxs/clk-imx28.c index d861bfd8c537..fb30cd92b234 100644 --- a/drivers/clk/mxs/clk-imx28.c +++ b/drivers/clk/mxs/clk-imx28.c @@ -237,7 +237,6 @@ int __init mx28_clocks_init(void) of_clk_add_provider(np, of_clk_src_onecell_get, &clk_data); } - clk_register_clkdev(clks[xbus], NULL, "timrot"); clk_register_clkdev(clks[enet_out], NULL, "enet_out"); for (i = 0; i < ARRAY_SIZE(clks_init_on); i++) |