PCI PM: Read power state from device after trying to change it on resume
authorRafael J. Wysocki <rjw@sisk.pl>
Wed, 4 Feb 2009 01:02:15 +0000 (02:02 +0100)
committerJesse Barnes <jbarnes@virtuousgeek.org>
Thu, 5 Feb 2009 01:22:28 +0000 (17:22 -0800)
pci_restore_standard_config() unconditionally changes current_state
to PCI_D0 after attempting to change the device's power state, but
it should rather read the actual current power state from the
device.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Acked-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
drivers/pci/pci.c

index 87c904233bf5410fa08c3e15935873c2e8224b08..e3efe6b19ee79210e2885f03b1d21995e2125abb 100644 (file)
@@ -1418,7 +1418,7 @@ int pci_restore_standard_config(struct pci_dev *dev)
                break;
        }
 
-       dev->current_state = PCI_D0;
+       pci_update_current_state(dev, PCI_D0);
 
  Restore:
        return dev->state_saved ? pci_restore_state(dev) : 0;