diff options
| author | Rafael J. Wysocki <rjw@sisk.pl> | 2012-03-13 17:40:06 -0400 |
|---|---|---|
| committer | Rafael J. Wysocki <rjw@sisk.pl> | 2012-03-16 16:45:13 -0400 |
| commit | 615a445f7f8a077c145e737864ae59a4d8717882 (patch) | |
| tree | 2b10b03ffbf1c4da04340759da224909877bfce5 /drivers/clocksource | |
| parent | 2ee619f9487c2acc1efdf2c78e68e2bd51b635fa (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')
| -rw-r--r-- | drivers/clocksource/sh_cmt.c | 4 |
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 | ||
| 36 | struct sh_cmt_priv { | 37 | struct 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; |
