diff options
Diffstat (limited to 'drivers/clocksource/tango_xtal.c')
-rw-r--r-- | drivers/clocksource/tango_xtal.c | 18 |
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 | ||
22 | static cycle_t read_clocksource(struct clocksource *cs) | ||
23 | { | ||
24 | return read_xtal_counter(); | ||
25 | } | ||
26 | |||
27 | static 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 | |||
35 | static void __init tango_clocksource_init(struct device_node *np) | 22 | static 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 | } |