Fedora kernel-2.6.17-1.2142_FC4 patched with stable patch-2.6.17.4-vs2.0.2-rc26.diff
[linux-2.6.git] / drivers / base / power / runtime.c
index 5e58f68..96370ec 100644 (file)
 static void runtime_resume(struct device * dev)
 {
        dev_dbg(dev, "resuming\n");
-       if (!dev->power.power_state)
+       if (!dev->power.power_state.event)
                return;
        if (!resume_device(dev))
-               dev->power.power_state = 0;
+               dev->power.power_state = PMSG_ON;
 }
 
 
@@ -36,6 +36,7 @@ void dpm_runtime_resume(struct device * dev)
        runtime_resume(dev);
        up(&dpm_sem);
 }
+EXPORT_SYMBOL(dpm_runtime_resume);
 
 
 /**
@@ -44,15 +45,15 @@ void dpm_runtime_resume(struct device * dev)
  *     @state: State to enter.
  */
 
-int dpm_runtime_suspend(struct device * dev, u32 state)
+int dpm_runtime_suspend(struct device * dev, pm_message_t state)
 {
        int error = 0;
 
        down(&dpm_sem);
-       if (dev->power.power_state == state)
+       if (dev->power.power_state.event == state.event)
                goto Done;
 
-       if (dev->power.power_state)
+       if (dev->power.power_state.event)
                runtime_resume(dev);
 
        if (!(error = suspend_device(dev, state)))
@@ -61,8 +62,10 @@ int dpm_runtime_suspend(struct device * dev, u32 state)
        up(&dpm_sem);
        return error;
 }
+EXPORT_SYMBOL(dpm_runtime_suspend);
 
 
+#if 0
 /**
  *     dpm_set_power_state - Update power_state field.
  *     @dev:   Device.
@@ -73,9 +76,10 @@ int dpm_runtime_suspend(struct device * dev, u32 state)
  *     always be able to tell, but we need accurate information to
  *     work reliably.
  */
-void dpm_set_power_state(struct device * dev, u32 state)
+void dpm_set_power_state(struct device * dev, pm_message_t state)
 {
        down(&dpm_sem);
        dev->power.power_state = state;
        up(&dpm_sem);
 }
+#endif  /*  0  */