aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/clocksource/sh_cmt.c
diff options
context:
space:
mode:
authorRafael J. Wysocki <rjw@sisk.pl>2012-03-13 17:40:06 -0400
committerRafael J. Wysocki <rjw@sisk.pl>2012-03-16 16:45:13 -0400
commit615a445f7f8a077c145e737864ae59a4d8717882 (patch)
tree2b10b03ffbf1c4da04340759da224909877bfce5 /drivers/clocksource/sh_cmt.c
parent2ee619f9487c2acc1efdf2c78e68e2bd51b635fa (diff)
PM / shmobile: Make CMT driver use pm_genpd_dev_always_on()
Make the CMT clocksource driver mark its device as "always on" using pm_genpd_dev_always_on() to protect it from surprise power removals. Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Tested-by: Simon Horman <horms@verge.net.au> Acked-by: Paul Mundt <lethal@linux-sh.org> Cc: stable@vger.kernel.org
Diffstat (limited to 'drivers/clocksource/sh_cmt.c')
-rw-r--r--drivers/clocksource/sh_cmt.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/clocksource/sh_cmt.c b/drivers/clocksource/sh_cmt.c
index ca09bc421ddb..32fe9ef5cc5c 100644
--- a/drivers/clocksource/sh_cmt.c
+++ b/drivers/clocksource/sh_cmt.c
@@ -32,6 +32,7 @@
32#include <linux/sh_timer.h> 32#include <linux/sh_timer.h>
33#include <linux/slab.h> 33#include <linux/slab.h>
34#include <linux/module.h> 34#include <linux/module.h>
35#include <linux/pm_domain.h>
35 36
36struct sh_cmt_priv { 37struct sh_cmt_priv {
37 void __iomem *mapbase; 38 void __iomem *mapbase;
@@ -689,6 +690,9 @@ static int __devinit sh_cmt_probe(struct platform_device *pdev)
689 struct sh_cmt_priv *p = platform_get_drvdata(pdev); 690 struct sh_cmt_priv *p = platform_get_drvdata(pdev);
690 int ret; 691 int ret;
691 692
693 if (!is_early_platform_device(pdev))
694 pm_genpd_dev_always_on(&pdev->dev, true);
695
692 if (p) { 696 if (p) {
693 dev_info(&pdev->dev, "kept as earlytimer\n"); 697 dev_info(&pdev->dev, "kept as earlytimer\n");
694 return 0; 698 return 0;