summaryrefslogtreecommitdiff
path: root/include/soc
diff options
context:
space:
mode:
authorRajesh Kemisetti <rajeshk@codeaurora.org>2016-12-20 10:47:38 +0530
committerRajesh Kemisetti <rajeshk@codeaurora.org>2017-02-09 16:14:44 +0530
commit381862aa59c91e413cdbfd0772b73b5a81ae48c2 (patch)
tree679d183445b0745818e57eb09158951c9430eefc /include/soc
parent2aa89ab3ff59a788321bc6af782d639cfc8dab1f (diff)
soc: qcom: Add support for Cx iPeak limit driver
Implement common driver to limit Cx ipeak based on voting from various clients in multimedia. Change-Id: Ie0a57e49f7a8ba8a4fa3aa7f50dd0947f8e9d11b Signed-off-by: Rajesh Kemisetti <rajeshk@codeaurora.org>
Diffstat (limited to 'include/soc')
-rw-r--r--include/soc/qcom/cx_ipeak.h46
1 files changed, 46 insertions, 0 deletions
diff --git a/include/soc/qcom/cx_ipeak.h b/include/soc/qcom/cx_ipeak.h
new file mode 100644
index 000000000000..b47e6b4f9b9d
--- /dev/null
+++ b/include/soc/qcom/cx_ipeak.h
@@ -0,0 +1,46 @@
+/* Copyright (c) 2016-2017, The Linux Foundation. All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 and
+ * only version 2 as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ */
+
+#ifndef __SOC_COM_CX_IPEAK_H
+#define __SOC_COM_CX_IPEAK_H
+
+struct device_node;
+struct cx_ipeak_client;
+
+#ifndef CONFIG_QCOM_CX_IPEAK
+
+static inline struct cx_ipeak_client *cx_ipeak_register(
+ struct device_node *dev_node,
+ const char *client_name)
+{
+ return NULL;
+}
+
+static inline void cx_ipeak_unregister(struct cx_ipeak_client *client)
+{
+}
+
+static inline int cx_ipeak_update(struct cx_ipeak_client *ipeak_client,
+ bool vote)
+{
+ return 0;
+}
+#else
+
+struct cx_ipeak_client *cx_ipeak_register(struct device_node *dev_node,
+ const char *client_name);
+void cx_ipeak_unregister(struct cx_ipeak_client *client);
+int cx_ipeak_update(struct cx_ipeak_client *ipeak_client, bool vote);
+
+#endif
+
+#endif /*__SOC_COM_CX_IPEAK_H*/