diff options
author | Vincent Guittot <[email protected]> | 2014-05-02 22:27:01 +0900 |
---|---|---|
committer | Kukjin Kim <[email protected]> | 2014-05-02 22:27:01 +0900 |
commit | 93bfb769752babdc4d3665a1fb166bb4e3ff927b (patch) | |
tree | 688ed1499913e8fdedf70caa46c0d3c225786c4c | |
parent | c9eaa447e77efe77b7fa4c953bd62de8297fd6c5 (diff) |
clocksource: exynos_mct: register sched_clock callback
Use the clocksource mct-frc for sched_clock
Signed-off-by: Vincent Guittot <[email protected]>
Reviewed-by: Tomasz Figa <[email protected]>
Acked-by: Daniel Lezcano <[email protected]>
Signed-off-by: Kukjin Kim <[email protected]>
-rw-r--r-- | drivers/clocksource/exynos_mct.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/clocksource/exynos_mct.c b/drivers/clocksource/exynos_mct.c index a6ee6d7cd63f..ea4dfc097790 100644 --- a/drivers/clocksource/exynos_mct.c +++ b/drivers/clocksource/exynos_mct.c @@ -24,6 +24,7 @@ #include <linux/of_irq.h> #include <linux/of_address.h> #include <linux/clocksource.h> +#include <linux/sched_clock.h> #define EXYNOS4_MCTREG(x) (x) #define EXYNOS4_MCT_G_CNT_L EXYNOS4_MCTREG(0x100) @@ -192,12 +193,19 @@ struct clocksource mct_frc = { .resume = exynos4_frc_resume, }; +static u64 notrace exynos4_read_sched_clock(void) +{ + return exynos4_frc_read(&mct_frc); +} + static void __init exynos4_clocksource_init(void) { exynos4_mct_frc_start(0, 0); if (clocksource_register_hz(&mct_frc, clk_rate)) panic("%s: can't register clocksource\n", mct_frc.name); + + sched_clock_register(exynos4_read_sched_clock, 64, clk_rate); } static void exynos4_mct_comp0_stop(void) |