aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRafael J. Wysocki <rafael.j.wysocki@intel.com>2020-02-12 00:07:42 +0100
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2020-02-13 11:26:52 +0100
commitfa048c59bf1ba13d8fe61890495577073a0ea919 (patch)
tree48328b6161695cf946af46eb493d95c1862d4ad1
parentPM: QoS: Adjust pm_qos_request() signature and reorder pm_qos.h (diff)
downloadlinux-dev-fa048c59bf1ba13d8fe61890495577073a0ea919.tar.xz
linux-dev-fa048c59bf1ba13d8fe61890495577073a0ea919.zip
PM: QoS: Add CPU latency QoS API wrappers
Introduce (temporary) wrappers around pm_qos_request(), pm_qos_request_active() and pm_qos_add/update/remove_request() to provide replacements for them with function signatures that will be used in the final CPU latency QoS API, so that the users of it can be switched over to the new arrangement one by one before the API is finally set. No intentional functional impact. Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org> Reviewed-by: Amit Kucheria <amit.kucheria@linaro.org> Tested-by: Amit Kucheria <amit.kucheria@linaro.org>
-rw-r--r--include/linux/pm_qos.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/include/linux/pm_qos.h b/include/linux/pm_qos.h
index 3c4bee29ecda..63d39e66f95d 100644
--- a/include/linux/pm_qos.h
+++ b/include/linux/pm_qos.h
@@ -152,6 +152,33 @@ void pm_qos_remove_request(struct pm_qos_request *req);
s32 pm_qos_request(int pm_qos_class);
int pm_qos_request_active(struct pm_qos_request *req);
+static inline void cpu_latency_qos_add_request(struct pm_qos_request *req,
+ s32 value)
+{
+ pm_qos_add_request(req, PM_QOS_CPU_DMA_LATENCY, value);
+}
+
+static inline void cpu_latency_qos_update_request(struct pm_qos_request *req,
+ s32 new_value)
+{
+ pm_qos_update_request(req, new_value);
+}
+
+static inline void cpu_latency_qos_remove_request(struct pm_qos_request *req)
+{
+ pm_qos_remove_request(req);
+}
+
+static inline bool cpu_latency_qos_request_active(struct pm_qos_request *req)
+{
+ return pm_qos_request_active(req);
+}
+
+static inline s32 cpu_latency_qos_limit(void)
+{
+ return pm_qos_request(PM_QOS_CPU_DMA_LATENCY);
+}
+
#ifdef CONFIG_PM
enum pm_qos_flags_status __dev_pm_qos_flags(struct device *dev, s32 mask);
enum pm_qos_flags_status dev_pm_qos_flags(struct device *dev, s32 mask);