gpio/gpio-pl061: No need of thaw and poweroff routines for hibernate
authorViresh Kumar <viresh.kumar@st.com>
Wed, 11 Jan 2012 09:55:20 +0000 (15:25 +0530)
committerGrant Likely <grant.likely@secretlab.ca>
Thu, 16 Feb 2012 13:37:51 +0000 (06:37 -0700)
pl061 uses same routines for suspend/freeze/poweroff and resume/thaw/restore.
We are only saving and restoring register values on these routines.

During hibernation, in freeze() we take a snapshot of gpio registers. In thaw()
we don't actually need to restore these registers, as power was never shut down
till now. Similarly, in poweroff() we don't need to take snapshot of these
registers again, as it was done during freeze() and by now the image is already
saved on disk.

This patch passes poweroff() and thaw() routines as NULL to avoid this extra
work done.

Signed-off-by: Viresh Kumar <viresh.kumar@st.com>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
drivers/gpio/gpio-pl061.c

index 77c9cc70fa7753fb406b87dbbf201021b4b6eb18..b4b5da4fd2cc896f219859bc9849831c2c0527c4 100644 (file)
@@ -352,7 +352,12 @@ static int pl061_resume(struct device *dev)
        return 0;
 }
 
-static SIMPLE_DEV_PM_OPS(pl061_dev_pm_ops, pl061_suspend, pl061_resume);
+static const struct dev_pm_ops pl061_dev_pm_ops = {
+       .suspend = pl061_suspend,
+       .resume = pl061_resume,
+       .freeze = pl061_suspend,
+       .restore = pl061_resume,
+};
 #endif
 
 static struct amba_id pl061_ids[] = {