aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/clocksource/tango_xtal.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/clocksource/tango_xtal.c')
-rw-r--r--drivers/clocksource/tango_xtal.c18
1 files changed, 3 insertions, 15 deletions
diff --git a/drivers/clocksource/tango_xtal.c b/drivers/clocksource/tango_xtal.c
index d297b30d2bc0..2bcecafdeaea 100644
--- a/drivers/clocksource/tango_xtal.c
+++ b/drivers/clocksource/tango_xtal.c
@@ -19,19 +19,6 @@ static u64 notrace read_sched_clock(void)
19 return read_xtal_counter(); 19 return read_xtal_counter();
20} 20}
21 21
22static cycle_t read_clocksource(struct clocksource *cs)
23{
24 return read_xtal_counter();
25}
26
27static struct clocksource tango_xtal = {
28 .name = "tango-xtal",
29 .rating = 350,
30 .read = read_clocksource,
31 .mask = CLOCKSOURCE_MASK(32),
32 .flags = CLOCK_SOURCE_IS_CONTINUOUS,
33};
34
35static void __init tango_clocksource_init(struct device_node *np) 22static void __init tango_clocksource_init(struct device_node *np)
36{ 23{
37 struct clk *clk; 24 struct clk *clk;
@@ -53,8 +40,9 @@ static void __init tango_clocksource_init(struct device_node *np)
53 delay_timer.freq = xtal_freq; 40 delay_timer.freq = xtal_freq;
54 delay_timer.read_current_timer = read_xtal_counter; 41 delay_timer.read_current_timer = read_xtal_counter;
55 42
56 ret = clocksource_register_hz(&tango_xtal, xtal_freq); 43 ret = clocksource_mmio_init(xtal_in_cnt, "tango-xtal", xtal_freq, 350,
57 if (ret != 0) { 44 32, clocksource_mmio_readl_up);
45 if (!ret) {
58 pr_err("%s: registration failed\n", np->full_name); 46 pr_err("%s: registration failed\n", np->full_name);
59 return; 47 return;
60 } 48 }