]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ARM: davinci: pass clock as parameter to davinci_timer_init()
authorDavid Lechner <david@lechnology.com>
Fri, 18 May 2018 16:48:06 +0000 (11:48 -0500)
committerSekhar Nori <nsekhar@ti.com>
Tue, 26 Jun 2018 10:08:58 +0000 (15:38 +0530)
This changes davinci_timer_init() so that we pass the clock as a
parameter instead of using clk_get(). This is done in preparation
for converting to the common clock framework.

It removes the requirement that we have to have a clock with con_id
of "timer0", which will be good for DT bindings since clock-names =
"timer0" doesn't really make sense.

Also, drop use of extern in header file since we are touching the
definition.

Reviewed-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: David Lechner <david@lechnology.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
arch/arm/mach-davinci/da830.c
arch/arm/mach-davinci/da850.c
arch/arm/mach-davinci/dm355.c
arch/arm/mach-davinci/dm365.c
arch/arm/mach-davinci/dm644x.c
arch/arm/mach-davinci/dm646x.c
arch/arm/mach-davinci/include/mach/common.h
arch/arm/mach-davinci/time.c

index 350d7673aa4d0222a91c2a2aa13ed87d57cab453..0b17e5a22e5e04ded340afff7a6ca8334236f218 100644 (file)
@@ -1224,5 +1224,5 @@ void __init da830_init(void)
 void __init da830_init_time(void)
 {
        davinci_clk_init(da830_clks);
-       davinci_timer_init();
+       davinci_timer_init(&timerp64_0_clk);
 }
index 34117e614e08ddf692835b97d4776189feeb1268..1dbf01c4124b83ffe8a2625590efe98660986f4d 100644 (file)
@@ -1396,5 +1396,5 @@ void __init da850_init(void)
 void __init da850_init_time(void)
 {
        davinci_clk_init(da850_clks);
-       davinci_timer_init();
+       davinci_timer_init(&timerp64_0_clk);
 }
index f29480495c183c9384119b04810ae41387629c2e..0da7516018cacffa14e44454780ea28b56de2f20 100644 (file)
@@ -1047,7 +1047,7 @@ void __init dm355_init(void)
 void __init dm355_init_time(void)
 {
        davinci_clk_init(dm355_clks);
-       davinci_timer_init();
+       davinci_timer_init(&timer0_clk);
 }
 
 int __init dm355_init_video(struct vpfe_config *vpfe_cfg,
index 1e3df9df1e10336543f67dd270364ecef122a91e..871372a59da8a03c21c82d7f3a1f1ca0d72ece8d 100644 (file)
@@ -1172,7 +1172,7 @@ void __init dm365_init(void)
 void __init dm365_init_time(void)
 {
        davinci_clk_init(dm365_clks);
-       davinci_timer_init();
+       davinci_timer_init(&timer0_clk);
 }
 
 static struct resource dm365_vpss_resources[] = {
index a2e8586c8a6d57229d27665393fa74f26463145d..708df0ed85542f5e365e0bdfd157ca15255e9f7d 100644 (file)
@@ -935,7 +935,7 @@ void __init dm644x_init(void)
 void __init dm644x_init_time(void)
 {
        davinci_clk_init(dm644x_clks);
-       davinci_timer_init();
+       davinci_timer_init(&timer0_clk);
 }
 
 int __init dm644x_init_video(struct vpfe_config *vpfe_cfg,
index c32ca27ab343d1258399648b5e9dfb9aa1e215e0..280b753702f312f1ed9d7c26c4589edf6dd12311 100644 (file)
@@ -957,7 +957,7 @@ void __init dm646x_init_time(unsigned long ref_clk_rate,
        ref_clk.rate = ref_clk_rate;
        aux_clkin.rate = aux_clkin_rate;
        davinci_clk_init(dm646x_clks);
-       davinci_timer_init();
+       davinci_timer_init(&timer0_clk);
 }
 
 static int __init dm646x_init_devices(void)
index f0d5e858f15801554ba351388ea6144a06deb3e4..5f45d0ac66a83fc39d6e22544f0e4566a6dcd72e 100644 (file)
 #ifndef __ARCH_ARM_MACH_DAVINCI_COMMON_H
 #define __ARCH_ARM_MACH_DAVINCI_COMMON_H
 
+#include <linux/clk.h>
 #include <linux/compiler.h>
 #include <linux/types.h>
 #include <linux/reboot.h>
 
-extern void davinci_timer_init(void);
+void davinci_timer_init(struct clk *clk);
 
 extern void davinci_irq_init(void);
 extern void __iomem *davinci_intc_base;
index 1bb991ad9c1ed6678b55918b66f47e26b7dc0884..486896f309c599b518e1c130fee0b4afb09b04b1 100644 (file)
@@ -334,10 +334,8 @@ static struct clock_event_device clockevent_davinci = {
        .set_state_oneshot      = davinci_set_oneshot,
 };
 
-
-void __init davinci_timer_init(void)
+void __init davinci_timer_init(struct clk *timer_clk)
 {
-       struct clk *timer_clk;
        struct davinci_soc_info *soc_info = &davinci_soc_info;
        unsigned int clockevent_id;
        unsigned int clocksource_id;
@@ -373,7 +371,6 @@ void __init davinci_timer_init(void)
                }
        }
 
-       timer_clk = clk_get(NULL, "timer0");
        BUG_ON(IS_ERR(timer_clk));
        clk_prepare_enable(timer_clk);