]> Pileus Git - ~andy/linux/commitdiff
Merge tag 'renesas-boards-lager-for-v3.10' of git://git.kernel.org/pub/scm/linux...
authorOlof Johansson <olof@lixom.net>
Thu, 11 Apr 2013 17:35:25 +0000 (10:35 -0700)
committerOlof Johansson <olof@lixom.net>
Thu, 11 Apr 2013 17:36:42 +0000 (10:36 -0700)
From Simon Horman:
Renesas ARM based SoC lager board updates for v3.10

* Use r8a7790 timer setup code to force the
  arch timer to be enabled regardless of the bootloader setting
  - This is necessary for the lager board to boot

This pull request is based on:
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas.git renesas-boards3-for-v3.10
git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas.git renesas-soc-r8a7790-for-v3.10

The merge was made to provide the r8a7790 timer setup code

* tag 'renesas-boards-lager-for-v3.10' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: shmobile: use r8a7790 timer setup code on Lager
  ARM: shmobile: force enable of r8a7790 arch timer
  ARM: shmobile: Add second I/O range for r8a7790 PFC

Signed-off-by: Olof Johansson <olof@lixom.net>
arch/arm/mach-shmobile/board-lager.c
arch/arm/mach-shmobile/include/mach/r8a7790.h
arch/arm/mach-shmobile/setup-r8a7790.c

index ea6f9e5d35003a2389cc011244c71770450ab989..f587187a86031f1c88d236818d712ee31e7d098a 100644 (file)
@@ -40,7 +40,7 @@ static const char *lager_boards_compat_dt[] __initdata = {
 
 DT_MACHINE_START(LAGER_DT, "lager")
        .init_irq       = irqchip_init,
-       .init_time      = shmobile_timer_init,
+       .init_time      = r8a7790_timer_init,
        .init_machine   = lager_add_standard_devices,
        .dt_compat      = lager_boards_compat_dt,
 MACHINE_END
index 9bd6f5c894bbe07a6440f6af00ae8d81fccb6e61..2e919e61fa0d3440c94ced629c6323692c86bc15 100644 (file)
@@ -4,5 +4,6 @@
 void r8a7790_add_standard_devices(void);
 void r8a7790_clock_init(void);
 void r8a7790_pinmux_init(void);
+void r8a7790_timer_init(void);
 
 #endif /* __ASM_R8A7790_H__ */
index 481201a4f3f5774b047984ebcb290b94b6319807..49de2d56f86db50bc18e66dd17ebb5bed986e812 100644 (file)
@@ -31,6 +31,7 @@
 
 static const struct resource pfc_resources[] = {
        DEFINE_RES_MEM(0xe6060000, 0x250),
+       DEFINE_RES_MEM(0xe6050000, 0x5050),
 };
 
 void __init r8a7790_pinmux_init(void)
@@ -117,6 +118,18 @@ void __init r8a7790_add_standard_devices(void)
        r8a7790_register_irqc(0);
 }
 
+void __init r8a7790_timer_init(void)
+{
+       void __iomem *cntcr;
+
+       /* make sure arch timer is started by setting bit 0 of CNTCT */
+       cntcr = ioremap(0xe6080000, PAGE_SIZE);
+       iowrite32(1, cntcr);
+       iounmap(cntcr);
+
+       shmobile_timer_init();
+}
+
 #ifdef CONFIG_USE_OF
 void __init r8a7790_add_standard_devices_dt(void)
 {
@@ -131,7 +144,7 @@ static const char *r8a7790_boards_compat_dt[] __initdata = {
 DT_MACHINE_START(R8A7790_DT, "Generic R8A7790 (Flattened Device Tree)")
        .init_irq       = irqchip_init,
        .init_machine   = r8a7790_add_standard_devices_dt,
-       .init_time      = shmobile_timer_init,
+       .init_time      = r8a7790_timer_init,
        .dt_compat      = r8a7790_boards_compat_dt,
 MACHINE_END
 #endif /* CONFIG_USE_OF */