[PATCH 13/28] PM: QoS: Add CPU latency QoS API wrappers

Rafael J. Wysocki
2020-02-11T23:39:57Z

From: "Rafael J. Wysocki" <rafael.j.wysocki@intel.com>

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>
---
include/linux/pm_qos.h | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)

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);
--
2.16.4