PM / QoS: Add function dev_pm_qos_read_value() (v3)
[pandora-kernel.git] / drivers / base / power / main.c
index a854591..c6291ab 100644 (file)
@@ -65,6 +65,7 @@ void device_pm_init(struct device *dev)
        spin_lock_init(&dev->power.lock);
        pm_runtime_init(dev);
        INIT_LIST_HEAD(&dev->power.entry);
+       dev->power.power_state = PMSG_INVALID;
 }
 
 /**
@@ -96,6 +97,7 @@ void device_pm_add(struct device *dev)
                dev_warn(dev, "parent %s should not be sleeping\n",
                        dev_name(dev->parent));
        list_add_tail(&dev->power.entry, &dpm_list);
+       dev_pm_qos_constraints_init(dev);
        mutex_unlock(&dpm_list_mtx);
 }
 
@@ -109,6 +111,7 @@ void device_pm_remove(struct device *dev)
                 dev->bus ? dev->bus->name : "No Bus", dev_name(dev));
        complete_all(&dev->power.completion);
        mutex_lock(&dpm_list_mtx);
+       dev_pm_qos_constraints_destroy(dev);
        list_del_init(&dev->power.entry);
        mutex_unlock(&dpm_list_mtx);
        device_wakeup_disable(dev);