Commit efca0a3e authored by Olof Johansson's avatar Olof Johansson

Merge tag 'samsung-drivers' of...

Merge tag 'samsung-drivers' of http://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung into next/drivers

Merge "Samsung driver update for 3.16" from Kukjin Kim:

exynos_mct update for v3.16

- register sched_clock callback to use clocksource mct-frc

* tag 'samsung-drivers' of http://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
  clocksource: exynos_mct: register sched_clock callback
Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
parents ed99885c 93bfb769
...@@ -24,6 +24,7 @@ ...@@ -24,6 +24,7 @@
#include <linux/of_irq.h> #include <linux/of_irq.h>
#include <linux/of_address.h> #include <linux/of_address.h>
#include <linux/clocksource.h> #include <linux/clocksource.h>
#include <linux/sched_clock.h>
#define EXYNOS4_MCTREG(x) (x) #define EXYNOS4_MCTREG(x) (x)
#define EXYNOS4_MCT_G_CNT_L EXYNOS4_MCTREG(0x100) #define EXYNOS4_MCT_G_CNT_L EXYNOS4_MCTREG(0x100)
...@@ -192,12 +193,19 @@ struct clocksource mct_frc = { ...@@ -192,12 +193,19 @@ struct clocksource mct_frc = {
.resume = exynos4_frc_resume, .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) static void __init exynos4_clocksource_init(void)
{ {
exynos4_mct_frc_start(0, 0); exynos4_mct_frc_start(0, 0);
if (clocksource_register_hz(&mct_frc, clk_rate)) if (clocksource_register_hz(&mct_frc, clk_rate))
panic("%s: can't register clocksource\n", mct_frc.name); 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) static void exynos4_mct_comp0_stop(void)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment