]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
PM / shmobile: Make CMT driver use pm_genpd_dev_always_on()
authorRafael J. Wysocki <rjw@sisk.pl>
Mon, 26 Mar 2012 21:26:53 +0000 (23:26 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 2 Apr 2012 17:32:10 +0000 (10:32 -0700)
Commit 615a445f7f8a077c145e737864ae59a4d8717882 upstream.

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>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/clocksource/sh_cmt.c

index ca09bc421ddbc25345cf3d6d9b0efe237941454c..32fe9ef5cc5c374d3a9dabf5c733aa17bd73342f 100644 (file)
@@ -32,6 +32,7 @@
 #include <linux/sh_timer.h>
 #include <linux/slab.h>
 #include <linux/module.h>
+#include <linux/pm_domain.h>
 
 struct sh_cmt_priv {
        void __iomem *mapbase;
@@ -689,6 +690,9 @@ static int __devinit sh_cmt_probe(struct platform_device *pdev)
        struct sh_cmt_priv *p = platform_get_drvdata(pdev);
        int ret;
 
+       if (!is_early_platform_device(pdev))
+               pm_genpd_dev_always_on(&pdev->dev, true);
+
        if (p) {
                dev_info(&pdev->dev, "kept as earlytimer\n");
                return 0;