[PATCH 02/23] clocksource/drivers/fttmr010: Fix the clock handling

From: Daniel Lezcano
Date: Wed Jun 14 2017 - 08:40:58 EST


From: Linus Walleij <linus.walleij@xxxxxxxxxx>

We need to also prepare and enable the clock we are using to get
the right reference count and avoid it being shut off.

Tested-by: Jonas Jensen <jonas.jensen@xxxxxxxxx>
Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
Signed-off-by: Daniel Lezcano <daniel.lezcano@xxxxxxxxxx>
---
drivers/clocksource/timer-fttmr010.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/drivers/clocksource/timer-fttmr010.c b/drivers/clocksource/timer-fttmr010.c
index b4a6f1e..58ce017 100644
--- a/drivers/clocksource/timer-fttmr010.c
+++ b/drivers/clocksource/timer-fttmr010.c
@@ -238,12 +238,18 @@ static int __init fttmr010_timer_of_init(struct device_node *np)
* and using EXTCLK is not supported in the driver.
*/
struct clk *clk;
+ int ret;

clk = of_clk_get_by_name(np, "PCLK");
if (IS_ERR(clk)) {
- pr_err("could not get PCLK");
+ pr_err("could not get PCLK\n");
return PTR_ERR(clk);
}
+ ret = clk_prepare_enable(clk);
+ if (ret) {
+ pr_err("failed to enable PCLK\n");
+ return ret;
+ }
tick_rate = clk_get_rate(clk);

return fttmr010_timer_common_init(np);
--
2.7.4