summaryrefslogtreecommitdiffstats
path: root/arch/arm/plat-omap/dmtimer.c
diff options
context:
space:
mode:
authorTony Lindgren2011-09-22 01:38:51 +0200
committerTony Lindgren2011-09-22 01:38:51 +0200
commit0dad9faeaeb0fa3524068a94e1745b91e5597c17 (patch)
tree2dbe24ec9964d605ea39756ed320524901324f17 /arch/arm/plat-omap/dmtimer.c
parentARM: OMAP: dmtimer: pm_runtime support (diff)
downloadkernel-qcow2-linux-0dad9faeaeb0fa3524068a94e1745b91e5597c17.tar.gz
kernel-qcow2-linux-0dad9faeaeb0fa3524068a94e1745b91e5597c17.tar.xz
kernel-qcow2-linux-0dad9faeaeb0fa3524068a94e1745b91e5597c17.zip
ARM: OMAP: dmtimer: skip reserved timers
Pass the reserved flag in pdata and use it. We can now make sys_timer_reserved static to mach-omap2/timer.c. Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/plat-omap/dmtimer.c')
-rw-r--r--arch/arm/plat-omap/dmtimer.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/arm/plat-omap/dmtimer.c b/arch/arm/plat-omap/dmtimer.c
index ac904c2ea058..c8df3c36b3ad 100644
--- a/arch/arm/plat-omap/dmtimer.c
+++ b/arch/arm/plat-omap/dmtimer.c
@@ -509,6 +509,7 @@ static int __devinit omap_dm_timer_probe(struct platform_device *pdev)
timer->id = pdev->id;
timer->irq = irq->start;
+ timer->reserved = pdata->reserved;
timer->pdev = pdev;
/* Skip pm_runtime_enable for OMAP1 */
@@ -517,6 +518,12 @@ static int __devinit omap_dm_timer_probe(struct platform_device *pdev)
pm_runtime_irq_safe(&pdev->dev);
}
+ if (!timer->reserved) {
+ pm_runtime_get_sync(&pdev->dev);
+ __omap_dm_timer_init_regs(timer);
+ pm_runtime_put(&pdev->dev);
+ }
+
/* add the timer element to the list */
spin_lock_irqsave(&dm_timer_lock, flags);
list_add_tail(&timer->node, &omap_timer_list);