]> err.no Git - linux-2.6/blobdiff - drivers/base/power/suspend.c
Introduce CONFIG_SUSPEND for suspend-to-Ram and standby
[linux-2.6] / drivers / base / power / suspend.c
index 5178b0fbd82ee489a6cfca9567fda3b1dd62c6bf..26df9b231737de51c0541567553704cac4381d70 100644 (file)
@@ -63,29 +63,20 @@ int suspend_device(struct device * dev, pm_message_t state)
                dev_dbg(dev, "PM: suspend %d-->%d\n",
                        dev->power.power_state.event, state.event);
        }
-       if (dev->parent && dev->parent->power.power_state.event) {
-               dev_err(dev,
-                       "PM: suspend %d->%d, parent %s already %d\n",
-                       dev->power.power_state.event, state.event,
-                       dev->parent->bus_id,
-                       dev->parent->power.power_state.event);
-       }
 
-       if (dev->class && dev->class->suspend && !dev->power.power_state.event) {
+       if (dev->class && dev->class->suspend) {
                suspend_device_dbg(dev, state, "class ");
                error = dev->class->suspend(dev, state);
                suspend_report_result(dev->class->suspend, error);
        }
 
-       if (!error && dev->type && dev->type->suspend
-           && !dev->power.power_state.event) {
+       if (!error && dev->type && dev->type->suspend) {
                suspend_device_dbg(dev, state, "type ");
                error = dev->type->suspend(dev, state);
                suspend_report_result(dev->type->suspend, error);
        }
 
-       if (!error && dev->bus && dev->bus->suspend
-           && !dev->power.power_state.event) {
+       if (!error && dev->bus && dev->bus->suspend) {
                suspend_device_dbg(dev, state, "");
                error = dev->bus->suspend(dev, state);
                suspend_report_result(dev->bus->suspend, error);
@@ -104,8 +95,7 @@ static int suspend_device_late(struct device *dev, pm_message_t state)
 {
        int error = 0;
 
-       if (dev->bus && dev->bus->suspend_late
-           && !dev->power.power_state.event) {
+       if (dev->bus && dev->bus->suspend_late) {
                suspend_device_dbg(dev, state, "LATE ");
                error = dev->bus->suspend_late(dev, state);
                suspend_report_result(dev->bus->suspend_late, error);