aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/timer.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-omap2/timer.c')
-rw-r--r--arch/arm/mach-omap2/timer.c24
1 files changed, 13 insertions, 11 deletions
diff --git a/arch/arm/mach-omap2/timer.c b/arch/arm/mach-omap2/timer.c
index 05b3a5472bfb..7d67d21fe52c 100644
--- a/arch/arm/mach-omap2/timer.c
+++ b/arch/arm/mach-omap2/timer.c
@@ -129,7 +129,6 @@ static void omap2_gp_timer_set_mode(enum clock_event_mode mode,
129} 129}
130 130
131static struct clock_event_device clockevent_gpt = { 131static struct clock_event_device clockevent_gpt = {
132 .name = "gp_timer",
133 .features = CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT, 132 .features = CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT,
134 .shift = 32, 133 .shift = 32,
135 .rating = 300, 134 .rating = 300,
@@ -215,10 +214,11 @@ static u32 __init omap_dm_timer_get_errata(void)
215} 214}
216 215
217static int __init omap_dm_timer_init_one(struct omap_dm_timer *timer, 216static int __init omap_dm_timer_init_one(struct omap_dm_timer *timer,
218 int gptimer_id, 217 int gptimer_id,
219 const char *fck_source, 218 const char *fck_source,
220 const char *property, 219 const char *property,
221 int posted) 220 const char **timer_name,
221 int posted)
222{ 222{
223 char name[10]; /* 10 = sizeof("gptXX_Xck0") */ 223 char name[10]; /* 10 = sizeof("gptXX_Xck0") */
224 const char *oh_name; 224 const char *oh_name;
@@ -255,6 +255,8 @@ static int __init omap_dm_timer_init_one(struct omap_dm_timer *timer,
255 if (!oh) 255 if (!oh)
256 return -ENODEV; 256 return -ENODEV;
257 257
258 *timer_name = oh->name;
259
258 if (!of_have_populated_dt()) { 260 if (!of_have_populated_dt()) {
259 r = omap_hwmod_get_resource_byname(oh, IORESOURCE_IRQ, NULL, 261 r = omap_hwmod_get_resource_byname(oh, IORESOURCE_IRQ, NULL,
260 &irq); 262 &irq);
@@ -328,7 +330,7 @@ static void __init omap2_gp_clockevent_init(int gptimer_id,
328 __omap_dm_timer_override_errata(&clkev, OMAP_TIMER_ERRATA_I103_I767); 330 __omap_dm_timer_override_errata(&clkev, OMAP_TIMER_ERRATA_I103_I767);
329 331
330 res = omap_dm_timer_init_one(&clkev, gptimer_id, fck_source, property, 332 res = omap_dm_timer_init_one(&clkev, gptimer_id, fck_source, property,
331 OMAP_TIMER_POSTED); 333 &clockevent_gpt.name, OMAP_TIMER_POSTED);
332 BUG_ON(res); 334 BUG_ON(res);
333 335
334 omap2_gp_timer_irq.dev_id = &clkev; 336 omap2_gp_timer_irq.dev_id = &clkev;
@@ -348,8 +350,8 @@ static void __init omap2_gp_clockevent_init(int gptimer_id,
348 clockevent_gpt.irq = omap_dm_timer_get_irq(&clkev); 350 clockevent_gpt.irq = omap_dm_timer_get_irq(&clkev);
349 clockevents_register_device(&clockevent_gpt); 351 clockevents_register_device(&clockevent_gpt);
350 352
351 pr_info("OMAP clockevent source: GPTIMER%d at %lu Hz\n", 353 pr_info("OMAP clockevent source: %s at %lu Hz\n", clockevent_gpt.name,
352 gptimer_id, clkev.rate); 354 clkev.rate);
353} 355}
354 356
355/* Clocksource code */ 357/* Clocksource code */
@@ -366,7 +368,6 @@ static cycle_t clocksource_read_cycles(struct clocksource *cs)
366} 368}
367 369
368static struct clocksource clocksource_gpt = { 370static struct clocksource clocksource_gpt = {
369 .name = "gp_timer",
370 .rating = 300, 371 .rating = 300,
371 .read = clocksource_read_cycles, 372 .read = clocksource_read_cycles,
372 .mask = CLOCKSOURCE_MASK(32), 373 .mask = CLOCKSOURCE_MASK(32),
@@ -456,6 +457,7 @@ static void __init omap2_gptimer_clocksource_init(int gptimer_id,
456 clksrc.errata = omap_dm_timer_get_errata(); 457 clksrc.errata = omap_dm_timer_get_errata();
457 458
458 res = omap_dm_timer_init_one(&clksrc, gptimer_id, fck_source, NULL, 459 res = omap_dm_timer_init_one(&clksrc, gptimer_id, fck_source, NULL,
460 &clocksource_gpt.name,
459 OMAP_TIMER_NONPOSTED); 461 OMAP_TIMER_NONPOSTED);
460 BUG_ON(res); 462 BUG_ON(res);
461 463
@@ -468,8 +470,8 @@ static void __init omap2_gptimer_clocksource_init(int gptimer_id,
468 pr_err("Could not register clocksource %s\n", 470 pr_err("Could not register clocksource %s\n",
469 clocksource_gpt.name); 471 clocksource_gpt.name);
470 else 472 else
471 pr_info("OMAP clocksource: GPTIMER%d at %lu Hz\n", 473 pr_info("OMAP clocksource: %s at %lu Hz\n",
472 gptimer_id, clksrc.rate); 474 clocksource_gpt.name, clksrc.rate);
473} 475}
474 476
475#ifdef CONFIG_SOC_HAS_REALTIME_COUNTER 477#ifdef CONFIG_SOC_HAS_REALTIME_COUNTER