| From ded8096707335030772202b48198140a2a6fc248 Mon Sep 17 00:00:00 2001 |
| From: Magnus Damm <damm+renesas@opensource.se> |
| Date: Thu, 25 Jun 2015 17:57:39 +0900 |
| Subject: [PATCH 182/326] 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 <damm+renesas@opensource.se> |
| Acked-by: Geert Uytterhoeven <geert+renesas@glider.be> |
| Signed-off-by: Simon Horman <horms+renesas@verge.net.au> |
| (cherry picked from commit 131c2e0480b0f7afefbc9a46cc4e158e17caa844) |
| Signed-off-by: Simon Horman <horms+renesas@verge.net.au> |
| --- |
| 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 <linux/clk/shmobile.h> |
| +#include <linux/clocksource.h> |
| #include <linux/kernel.h> |
| #include <linux/init.h> |
| #include <linux/interrupt.h> |
| @@ -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 */ |
| -- |
| 2.6.2 |
| |