Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

PM / QOS: Rename __dev_pm_qos_read_value() and dev_pm_qos_raw_read_value()

dev_pm_qos_read_value() will soon need to support more constraint types
(min/max frequency) and will have another argument to it, i.e. type of
the constraint. While that is fine for the existing users of
dev_pm_qos_read_value(), but not that optimal for the callers of
__dev_pm_qos_read_value() and dev_pm_qos_raw_read_value() as all the
callers of these two routines are only looking for resume latency
constraint.

Lets make these two routines care only about the resume latency
constraint and rename them to __dev_pm_qos_resume_latency() and
dev_pm_qos_raw_resume_latency().

Suggested-by: Rafael J. Wysocki <rjw@rjwysocki.net>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>

authored by

Viresh Kumar and committed by
Rafael J. Wysocki
8262331e 0b07ee94

+16 -11
+1 -1
drivers/base/power/domain_governor.c
··· 66 66 td->constraint_changed = false; 67 67 td->cached_suspend_ok = false; 68 68 td->effective_constraint_ns = 0; 69 - constraint_ns = __dev_pm_qos_read_value(dev); 69 + constraint_ns = __dev_pm_qos_resume_latency(dev); 70 70 71 71 spin_unlock_irqrestore(&dev->power.lock, flags); 72 72
+9 -4
drivers/base/power/qos.c
··· 90 90 EXPORT_SYMBOL_GPL(dev_pm_qos_flags); 91 91 92 92 /** 93 - * __dev_pm_qos_read_value - Get PM QoS constraint for a given device. 93 + * __dev_pm_qos_resume_latency - Get resume latency constraint for a given device. 94 94 * @dev: Device to get the PM QoS constraint value for. 95 95 * 96 96 * This routine must be called with dev->power.lock held. 97 97 */ 98 - s32 __dev_pm_qos_read_value(struct device *dev) 98 + s32 __dev_pm_qos_resume_latency(struct device *dev) 99 99 { 100 100 lockdep_assert_held(&dev->power.lock); 101 101 102 - return dev_pm_qos_raw_read_value(dev); 102 + return dev_pm_qos_raw_resume_latency(dev); 103 103 } 104 104 105 105 /** ··· 112 112 s32 ret; 113 113 114 114 spin_lock_irqsave(&dev->power.lock, flags); 115 - ret = __dev_pm_qos_read_value(dev); 115 + 116 + if (IS_ERR_OR_NULL(dev->power.qos)) 117 + ret = PM_QOS_RESUME_LATENCY_NO_CONSTRAINT; 118 + else 119 + ret = pm_qos_read_value(&dev->power.qos->resume_latency); 120 + 116 121 spin_unlock_irqrestore(&dev->power.lock, flags); 117 122 118 123 return ret;
+1 -1
drivers/base/power/runtime.c
··· 275 275 || (dev->power.request_pending 276 276 && dev->power.request == RPM_REQ_RESUME)) 277 277 retval = -EAGAIN; 278 - else if (__dev_pm_qos_read_value(dev) == 0) 278 + else if (__dev_pm_qos_resume_latency(dev) == 0) 279 279 retval = -EPERM; 280 280 else if (dev->power.runtime_status == RPM_SUSPENDED) 281 281 retval = 1;
+1 -1
drivers/cpuidle/governor.c
··· 110 110 { 111 111 int global_req = pm_qos_request(PM_QOS_CPU_DMA_LATENCY); 112 112 struct device *device = get_cpu_device(cpu); 113 - int device_req = dev_pm_qos_raw_read_value(device); 113 + int device_req = dev_pm_qos_raw_resume_latency(device); 114 114 115 115 return device_req < global_req ? device_req : global_req; 116 116 }
+4 -4
include/linux/pm_qos.h
··· 139 139 #ifdef CONFIG_PM 140 140 enum pm_qos_flags_status __dev_pm_qos_flags(struct device *dev, s32 mask); 141 141 enum pm_qos_flags_status dev_pm_qos_flags(struct device *dev, s32 mask); 142 - s32 __dev_pm_qos_read_value(struct device *dev); 142 + s32 __dev_pm_qos_resume_latency(struct device *dev); 143 143 s32 dev_pm_qos_read_value(struct device *dev); 144 144 int dev_pm_qos_add_request(struct device *dev, struct dev_pm_qos_request *req, 145 145 enum dev_pm_qos_req_type type, s32 value); ··· 176 176 return dev->power.qos->flags_req->data.flr.flags; 177 177 } 178 178 179 - static inline s32 dev_pm_qos_raw_read_value(struct device *dev) 179 + static inline s32 dev_pm_qos_raw_resume_latency(struct device *dev) 180 180 { 181 181 return IS_ERR_OR_NULL(dev->power.qos) ? 182 182 PM_QOS_RESUME_LATENCY_NO_CONSTRAINT : ··· 189 189 static inline enum pm_qos_flags_status dev_pm_qos_flags(struct device *dev, 190 190 s32 mask) 191 191 { return PM_QOS_FLAGS_UNDEFINED; } 192 - static inline s32 __dev_pm_qos_read_value(struct device *dev) 192 + static inline s32 __dev_pm_qos_resume_latency(struct device *dev) 193 193 { return PM_QOS_RESUME_LATENCY_NO_CONSTRAINT; } 194 194 static inline s32 dev_pm_qos_read_value(struct device *dev) 195 195 { return PM_QOS_RESUME_LATENCY_NO_CONSTRAINT; } ··· 245 245 return PM_QOS_RESUME_LATENCY_NO_CONSTRAINT; 246 246 } 247 247 static inline s32 dev_pm_qos_requested_flags(struct device *dev) { return 0; } 248 - static inline s32 dev_pm_qos_raw_read_value(struct device *dev) 248 + static inline s32 dev_pm_qos_raw_resume_latency(struct device *dev) 249 249 { 250 250 return PM_QOS_RESUME_LATENCY_NO_CONSTRAINT; 251 251 }