summaryrefslogtreecommitdiffstats
path: root/drivers/base
diff options
context:
space:
mode:
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>2017-11-06 07:54:47 -0500
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2017-11-06 07:54:47 -0500
commit69a10ca747c2d2d7c0354a883335e097c067ed35 (patch)
treea8b1f56f95af55a4d9bd826b7e5e6d31b8cd6b98 /drivers/base
parent96428e98aebe5db8a164711f102808651c7f518d (diff)
parenta192aa923b66a435aae56983c4912ee150bc9b32 (diff)
Merge branch 'acpi-pm' into pm-core
Diffstat (limited to 'drivers/base')
-rw-r--r--drivers/base/power/domain.c4
-rw-r--r--drivers/base/power/sysfs.c28
2 files changed, 1 insertions, 31 deletions
diff --git a/drivers/base/power/domain.c b/drivers/base/power/domain.c
index e8ca5e2cf1e5..e6414e9998bb 100644
--- a/drivers/base/power/domain.c
+++ b/drivers/base/power/domain.c
@@ -346,9 +346,7 @@ static int genpd_power_off(struct generic_pm_domain *genpd, bool one_dev_on,
346 list_for_each_entry(pdd, &genpd->dev_list, list_node) { 346 list_for_each_entry(pdd, &genpd->dev_list, list_node) {
347 enum pm_qos_flags_status stat; 347 enum pm_qos_flags_status stat;
348 348
349 stat = dev_pm_qos_flags(pdd->dev, 349 stat = dev_pm_qos_flags(pdd->dev, PM_QOS_FLAG_NO_POWER_OFF);
350 PM_QOS_FLAG_NO_POWER_OFF
351 | PM_QOS_FLAG_REMOTE_WAKEUP);
352 if (stat > PM_QOS_FLAGS_NONE) 350 if (stat > PM_QOS_FLAGS_NONE)
353 return -EBUSY; 351 return -EBUSY;
354 352
diff --git a/drivers/base/power/sysfs.c b/drivers/base/power/sysfs.c
index 156ab57bca77..29bf28fef136 100644
--- a/drivers/base/power/sysfs.c
+++ b/drivers/base/power/sysfs.c
@@ -309,33 +309,6 @@ static ssize_t pm_qos_no_power_off_store(struct device *dev,
309static DEVICE_ATTR(pm_qos_no_power_off, 0644, 309static DEVICE_ATTR(pm_qos_no_power_off, 0644,
310 pm_qos_no_power_off_show, pm_qos_no_power_off_store); 310 pm_qos_no_power_off_show, pm_qos_no_power_off_store);
311 311
312static ssize_t pm_qos_remote_wakeup_show(struct device *dev,
313 struct device_attribute *attr,
314 char *buf)
315{
316 return sprintf(buf, "%d\n", !!(dev_pm_qos_requested_flags(dev)
317 & PM_QOS_FLAG_REMOTE_WAKEUP));
318}
319
320static ssize_t pm_qos_remote_wakeup_store(struct device *dev,
321 struct device_attribute *attr,
322 const char *buf, size_t n)
323{
324 int ret;
325
326 if (kstrtoint(buf, 0, &ret))
327 return -EINVAL;
328
329 if (ret != 0 && ret != 1)
330 return -EINVAL;
331
332 ret = dev_pm_qos_update_flags(dev, PM_QOS_FLAG_REMOTE_WAKEUP, ret);
333 return ret < 0 ? ret : n;
334}
335
336static DEVICE_ATTR(pm_qos_remote_wakeup, 0644,
337 pm_qos_remote_wakeup_show, pm_qos_remote_wakeup_store);
338
339#ifdef CONFIG_PM_SLEEP 312#ifdef CONFIG_PM_SLEEP
340static const char _enabled[] = "enabled"; 313static const char _enabled[] = "enabled";
341static const char _disabled[] = "disabled"; 314static const char _disabled[] = "disabled";
@@ -671,7 +644,6 @@ static const struct attribute_group pm_qos_latency_tolerance_attr_group = {
671 644
672static struct attribute *pm_qos_flags_attrs[] = { 645static struct attribute *pm_qos_flags_attrs[] = {
673 &dev_attr_pm_qos_no_power_off.attr, 646 &dev_attr_pm_qos_no_power_off.attr,
674 &dev_attr_pm_qos_remote_wakeup.attr,
675 NULL, 647 NULL,
676}; 648};
677static const struct attribute_group pm_qos_flags_attr_group = { 649static const struct attribute_group pm_qos_flags_attr_group = {