summaryrefslogtreecommitdiff
path: root/include/linux/sched_clock.h
diff options
context:
space:
mode:
authorStephen Boyd <sboyd@codeaurora.org>2013-06-01 23:39:40 -0700
committerJohn Stultz <john.stultz@linaro.org>2013-06-12 14:02:13 -0700
commit38ff87f77af0b5a93fc8581cff1d6e5692ab8970 (patch)
tree7a157528657400d0486cd4e74da98bad40992c3c /include/linux/sched_clock.h
parentffbfb5e316f0db486798ccf1db36a577ffe79637 (diff)
sched_clock: Make ARM's sched_clock generic for all architectures
Nothing about the sched_clock implementation in the ARM port is specific to the architecture. Generalize the code so that other architectures can use it by selecting GENERIC_SCHED_CLOCK. Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> [jstultz: Merge minor collisions with other patches in my tree] Signed-off-by: John Stultz <john.stultz@linaro.org>
Diffstat (limited to 'include/linux/sched_clock.h')
-rw-r--r--include/linux/sched_clock.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/include/linux/sched_clock.h b/include/linux/sched_clock.h
new file mode 100644
index 000000000000..fa7922c80a41
--- /dev/null
+++ b/include/linux/sched_clock.h
@@ -0,0 +1,21 @@
+/*
+ * sched_clock.h: support for extending counters to full 64-bit ns counter
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+#ifndef LINUX_SCHED_CLOCK
+#define LINUX_SCHED_CLOCK
+
+#ifdef CONFIG_GENERIC_SCHED_CLOCK
+extern void sched_clock_postinit(void);
+#else
+static inline void sched_clock_postinit(void) { }
+#endif
+
+extern void setup_sched_clock(u32 (*read)(void), int bits, unsigned long rate);
+
+extern unsigned long long (*sched_clock_func)(void);
+
+#endif