Thread (7 messages) 7 messages, 3 authors, 2009-08-07

Re: [linux-pm] [PATCH 4/5] input: gpio-keys: switch to new dev_pm_ops

From: Rafael J. Wysocki <hidden>
Date: 2009-08-06 00:51:37
Also in: lkml

On Thursday 06 August 2009, Daniel Mack wrote:
On Wed, Aug 05, 2009 at 10:15:52PM +0200, pHilipp Zabel wrote:
quoted
On Wed, Aug 5, 2009 at 8:29 PM, Daniel Mack[off-list ref] wrote:
quoted
-static int gpio_keys_resume(struct platform_device *pdev)
+static int gpio_keys_resume(struct device *dev)
 {
-       struct gpio_keys_platform_data *pdata = pdev->dev.platform_data;
+       struct gpio_keys_platform_data *pdata = dev->platform_data;
       int i;

-       if (device_may_wakeup(&pdev->dev)) {
+       if (device_may_wakeup(dev)) {
               for (i = 0; i < pdata->nbuttons; i++) {
                       struct gpio_keys_button *button = &pdata->buttons[i];
                       if (button->wakeup) {
@@ -251,19 +251,27 @@ static int gpio_keys_resume(struct platform_device *pdev)

       return 0;
 }
+
+static struct dev_pm_ops gpio_keys_pm_ops = {
+       .suspend        = gpio_keys_suspend,
+       .freeze         = gpio_keys_suspend,
+       .resume         = gpio_keys_resume,
+       .thaw           = gpio_keys_resume,
I'm not sure I understand hibernation correctly, but isn't
.freeze/.thaw about saving state and halting/resuming the device
operation only?
It is.
quoted
It seems to me that enabling system wakeup functionality should go
into .poweroff. (See <linux/pm.h>)
That's correct.

And .restore() plays the role of ".resume() from hibernation".
Frankly, I'm not sure either. But luckily, the linux-pm list is copied
so someone can elborate on this :)
HTH

Best,
Rafael
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help