Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1419d033 authored by Rafael J. Wysocki's avatar Rafael J. Wysocki
Browse files

Merge branches 'pm-core', 'pm-qos' and 'pm-docs'

* pm-core:
  PM: core: Fix device_pm_check_callbacks()

* pm-qos:
  PM / QoS: Use the correct variable to check the QoS request type

* pm-docs:
  PM: docs: Drop an excess character from devices.rst
  driver core: Fix link to device power management documentation
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -675,7 +675,7 @@ sub-domain of the parent domain.

Support for power domains is provided through the :c:member:`pm_domain` field of
|struct device|.  This field is a pointer to an object of type
|struct dev_pm_domain|, defined in :file:`include/linux/pm.h``, providing a set
|struct dev_pm_domain|, defined in :file:`include/linux/pm.h`, providing a set
of power management callbacks analogous to the subsystem-level and device driver
callbacks that are executed for the given device during all power transitions,
instead of the respective subsystem-level callbacks.  Specifically, if a
+5 −5
Original line number Diff line number Diff line
@@ -277,11 +277,11 @@ void dev_pm_qos_constraints_destroy(struct device *dev)
	mutex_unlock(&dev_pm_qos_sysfs_mtx);
}

static bool dev_pm_qos_invalid_request(struct device *dev,
				       struct dev_pm_qos_request *req)
static bool dev_pm_qos_invalid_req_type(struct device *dev,
					enum dev_pm_qos_req_type type)
{
	return !req || (req->type == DEV_PM_QOS_LATENCY_TOLERANCE
			&& !dev->power.set_latency_tolerance);
	return type == DEV_PM_QOS_LATENCY_TOLERANCE &&
	       !dev->power.set_latency_tolerance;
}

static int __dev_pm_qos_add_request(struct device *dev,
@@ -290,7 +290,7 @@ static int __dev_pm_qos_add_request(struct device *dev,
{
	int ret = 0;

	if (!dev || dev_pm_qos_invalid_request(dev, req))
	if (!dev || !req || dev_pm_qos_invalid_req_type(dev, type))
		return -EINVAL;

	if (WARN(dev_pm_qos_request_active(req),
+1 −1
Original line number Diff line number Diff line
@@ -838,7 +838,7 @@ struct dev_links_info {
 * @driver_data: Private pointer for driver specific info.
 * @links:	Links to suppliers and consumers of this device.
 * @power:	For device power management.
 * 		See Documentation/power/admin-guide/devices.rst for details.
 *		See Documentation/driver-api/pm/devices.rst for details.
 * @pm_domain:	Provide callbacks that are executed during system suspend,
 * 		hibernation, system resume and during runtime PM transitions
 * 		along with subsystem-level and driver-level callbacks.