aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/clocksource/timer-of.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2017-09-04 16:06:34 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2017-09-04 16:06:34 -0400
commitdd90cccffc20a15d8e4c3ac8813f4b6a6cd4766f (patch)
treeb870506b456e3b965638035abb0b2c944b024fd9 /drivers/clocksource/timer-of.c
parentb1b6f83ac938d176742c85757960dec2cf10e468 (diff)
parent51218298a25e6942957c5595f2abf130d47d5df9 (diff)
Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull timer fixes from Thomas Gleixner: "A rather small update for the time(r) subsystem: - A new clocksource driver IMX-TPM - Minor fixes to the alarmtimer facility - Device tree cleanups for Renesas drivers - A new kselftest and fixes for the timer related tests - Conversion of the clocksource drivers to use %pOF - Use the proper helpers to access rlimits in the posix-cpu-timer code" * 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: alarmtimer: Ensure RTC module is not unloaded clocksource: Convert to using %pOF instead of full_name clocksource/drivers/bcm2835: Remove message for a memory allocation failure devicetree: bindings: Remove deprecated properties devicetree: bindings: Remove unused 32-bit CMT bindings devicetree: bindings: Deprecate property, update example devicetree: bindings: r8a73a4 and R-Car Gen2 CMT bindings devicetree: bindings: R-Car Gen2 CMT0 and CMT1 bindings devicetree: bindings: Remove sh7372 CMT binding clocksource/drivers/imx-tpm: Add imx tpm timer support dt-bindings: timer: Add nxp tpm timer binding doc posix-cpu-timers: Use dedicated helper to access rlimit values alarmtimer: Fix unavailable wake-up source in sysfs timekeeping: Use proper timekeeper for debug code kselftests: timers: set-timer-lat: Add one-shot timer test cases kselftests: timers: set-timer-lat: Tweak reporting when timer fires early kselftests: timers: freq-step: Fix build warning kselftests: timers: freq-step: Define ADJ_SETOFFSET if device has older kernel headers
Diffstat (limited to 'drivers/clocksource/timer-of.c')
-rw-r--r--drivers/clocksource/timer-of.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/drivers/clocksource/timer-of.c b/drivers/clocksource/timer-of.c
index 4d7aef9d9c15..c79122d8e10d 100644
--- a/drivers/clocksource/timer-of.c
+++ b/drivers/clocksource/timer-of.c
@@ -52,7 +52,7 @@ static __init int timer_irq_init(struct device_node *np,
52 of_irq->irq = irq_of_parse_and_map(np, of_irq->index); 52 of_irq->irq = irq_of_parse_and_map(np, of_irq->index);
53 } 53 }
54 if (!of_irq->irq) { 54 if (!of_irq->irq) {
55 pr_err("Failed to map interrupt for %s\n", np->full_name); 55 pr_err("Failed to map interrupt for %pOF\n", np);
56 return -EINVAL; 56 return -EINVAL;
57 } 57 }
58 58
@@ -63,8 +63,7 @@ static __init int timer_irq_init(struct device_node *np,
63 of_irq->flags ? of_irq->flags : IRQF_TIMER, 63 of_irq->flags ? of_irq->flags : IRQF_TIMER,
64 np->full_name, clkevt); 64 np->full_name, clkevt);
65 if (ret) { 65 if (ret) {
66 pr_err("Failed to request irq %d for %s\n", of_irq->irq, 66 pr_err("Failed to request irq %d for %pOF\n", of_irq->irq, np);
67 np->full_name);
68 return ret; 67 return ret;
69 } 68 }
70 69
@@ -88,20 +87,20 @@ static __init int timer_clk_init(struct device_node *np,
88 of_clk->clk = of_clk->name ? of_clk_get_by_name(np, of_clk->name) : 87 of_clk->clk = of_clk->name ? of_clk_get_by_name(np, of_clk->name) :
89 of_clk_get(np, of_clk->index); 88 of_clk_get(np, of_clk->index);
90 if (IS_ERR(of_clk->clk)) { 89 if (IS_ERR(of_clk->clk)) {
91 pr_err("Failed to get clock for %s\n", np->full_name); 90 pr_err("Failed to get clock for %pOF\n", np);
92 return PTR_ERR(of_clk->clk); 91 return PTR_ERR(of_clk->clk);
93 } 92 }
94 93
95 ret = clk_prepare_enable(of_clk->clk); 94 ret = clk_prepare_enable(of_clk->clk);
96 if (ret) { 95 if (ret) {
97 pr_err("Failed for enable clock for %s\n", np->full_name); 96 pr_err("Failed for enable clock for %pOF\n", np);
98 goto out_clk_put; 97 goto out_clk_put;
99 } 98 }
100 99
101 of_clk->rate = clk_get_rate(of_clk->clk); 100 of_clk->rate = clk_get_rate(of_clk->clk);
102 if (!of_clk->rate) { 101 if (!of_clk->rate) {
103 ret = -EINVAL; 102 ret = -EINVAL;
104 pr_err("Failed to get clock rate for %s\n", np->full_name); 103 pr_err("Failed to get clock rate for %pOF\n", np);
105 goto out_clk_disable; 104 goto out_clk_disable;
106 } 105 }
107 106