summaryrefslogtreecommitdiff
path: root/include/linux/sched/cpufreq.h
diff options
context:
space:
mode:
authorIngo Molnar <mingo@kernel.org>2017-02-02 12:14:19 +0100
committerIngo Molnar <mingo@kernel.org>2017-03-03 01:43:38 +0100
commit7284c6d419b5a6ae9806927f1fd4f0cfd19a16f5 (patch)
treeff6a065bfd2f4d1932260fe5343834fc8eef05bb /include/linux/sched/cpufreq.h
parent8d88460edc05224b8d7ae3372173153876a02825 (diff)
sched/headers: Move the cpufreq interfaces to <linux/sched/cpufreq.h>
No need to have this in the generic <linux/sched.h> header. Acked-by: Linus Torvalds <torvalds@linux-foundation.org> Cc: Mike Galbraith <efault@gmx.de> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: linux-kernel@vger.kernel.org Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'include/linux/sched/cpufreq.h')
-rw-r--r--include/linux/sched/cpufreq.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/include/linux/sched/cpufreq.h b/include/linux/sched/cpufreq.h
index 07ed9664fa20..2bdcfbfc4c30 100644
--- a/include/linux/sched/cpufreq.h
+++ b/include/linux/sched/cpufreq.h
@@ -3,4 +3,25 @@
#include <linux/sched.h>
+/*
+ * Interface between cpufreq drivers and the scheduler:
+ */
+
+#define SCHED_CPUFREQ_RT (1U << 0)
+#define SCHED_CPUFREQ_DL (1U << 1)
+#define SCHED_CPUFREQ_IOWAIT (1U << 2)
+
+#define SCHED_CPUFREQ_RT_DL (SCHED_CPUFREQ_RT | SCHED_CPUFREQ_DL)
+
+#ifdef CONFIG_CPU_FREQ
+struct update_util_data {
+ void (*func)(struct update_util_data *data, u64 time, unsigned int flags);
+};
+
+void cpufreq_add_update_util_hook(int cpu, struct update_util_data *data,
+ void (*func)(struct update_util_data *data, u64 time,
+ unsigned int flags));
+void cpufreq_remove_update_util_hook(int cpu);
+#endif /* CONFIG_CPU_FREQ */
+
#endif /* _LINUX_SCHED_CPUFREQ_H */