From 131c2e0480b0f7afefbc9a46cc4e158e17caa844 Mon Sep 17 00:00:00 2001 From: Magnus Damm Date: Thu, 25 Jun 2015 17:57:39 +0900 Subject: [PATCH] ARM: shmobile: r8a7779: Generic CCF and timer support Add a r8a7779-specific callback to initialize CCF and clocksources. With this in place we are one step closer to be able to use r8a7779 without C board code. Also add a multiplatform wrapper to avoid breaking the r8a7779 marzen legacy case. Signed-off-by: Magnus Damm Acked-by: Geert Uytterhoeven Signed-off-by: Simon Horman --- arch/arm/mach-shmobile/setup-r8a7779.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/arch/arm/mach-shmobile/setup-r8a7779.c b/arch/arm/mach-shmobile/setup-r8a7779.c index c03e562be12b..5625fd1c89c0 100644 --- a/arch/arm/mach-shmobile/setup-r8a7779.c +++ b/arch/arm/mach-shmobile/setup-r8a7779.c @@ -14,6 +14,8 @@ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. */ +#include +#include #include #include #include @@ -756,6 +758,14 @@ u32 __init r8a7779_read_mode_pins(void) return mode; } +#ifdef CONFIG_ARCH_SHMOBILE_MULTI + +static void __init r8a7779_init_time(void) +{ + r8a7779_clocks_init(r8a7779_read_mode_pins()); + clocksource_of_init(); +} + static const char *r8a7779_compat_dt[] __initdata = { "renesas,r8a7779", NULL, @@ -764,8 +774,10 @@ static const char *r8a7779_compat_dt[] __initdata = { DT_MACHINE_START(R8A7779_DT, "Generic R8A7779 (Flattened Device Tree)") .map_io = r8a7779_map_io, .init_early = shmobile_init_delay, + .init_time = r8a7779_init_time, .init_irq = r8a7779_init_irq_dt, .init_late = shmobile_init_late, .dt_compat = r8a7779_compat_dt, MACHINE_END +#endif /* CONFIG_ARCH_SHMOBILE_MULTI */ #endif /* CONFIG_USE_OF */