summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-shmobile/setup-r7s72100.c
diff options
context:
space:
mode:
authorKevin Hilman <khilman@linaro.org>2013-12-20 09:42:36 -0800
committerKevin Hilman <khilman@linaro.org>2013-12-20 09:43:42 -0800
commit345bc449e78664060a2863dafc680a4d1910ecb6 (patch)
treec02ffdedb4e0dcc244b8b8de9e58f590eb14c7b2 /arch/arm/mach-shmobile/setup-r7s72100.c
parent02ee25c3a9bd1c4398234f1ce5b8e6e432a71c3e (diff)
parentfee05eb3d2ce4813b5e9a70ab888d2bc0047f4e1 (diff)
Merge tag 'renesas-soc-for-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/soc
From Simon Horman: Renesas ARM based SoC updates for v3.14 * Rename ARCH_SHMOBILE to ARCH_SHMOBILE_LEGACY * r8a7791 SoC (R-Car M2) - Add thermal platform device - Add DU and LVDS clocks - GPIO platform device support - PFC platform device support - Select IRQC * r8a7790 SoC (R-Car H2) - Tidyup clock table order - Fixup I2C clock source - Correct EXTAL divider settings - Add clocks for thermal devices and SSI * r8a7779 SoC (R-Car H1) - Add I2C clock for DT * r8a7778 SoC (R-Car M1) - Add HSPI clocks for DT - Add I2C clock for DT - Add HPBIFx DMAEngine support * r8a7740 SoC (R-Mobile A1) - Add FSI clocks for DT * emev2 SoC (Emma Mobile) - Move to Multi-platform - Remove legacy board code * r7s72100 SoC (RZ/A1H) - Select GPIO * r8a73a4 SoC (R-Mobile APE6) - Don't used named IRC for DMAEngine * tag 'renesas-soc-for-v3.14' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas: (33 commits) ARM: shmobile: r8a7779: add HSPI clock support for DT ARM: shmobile: r8a7740: add FSI clock support for DT ARM: shmobile: r8a7790: add SSI MSTP clocks ARM: shmobile: r8a7778: add HPBIFx DMAEngine support ARM: shmobile: Select AUTO_ZRELADDR for EMEV2 ARM: shmobile: r8a7790: tidyup clock table order ARM: shmobile: r8a7790: fixup I2C clock source ARM: shmobile: r8a7790: care EXTAL divider settings ARM: shmobile: Add r8a7791 clocks for thermal devices ARM: shmobile: Add r8a7791 thermal platform device ARM: shmobile: Add r8a7790 clocks for thermal devices ARM: Rename ARCH_SHMOBILE to ARCH_SHMOBILE_LEGACY ARM: shmobile: r8a7791: Add DU and LVDS clocks ARM: shmobile: Select USE_OF on EMEV2 ARM: shmobile: r8a7778: add HSPI clock support for DT ARM: shmobile: Remove legacy platform devices from EMEV2 SoC code ARM: shmobile: Remove legacy KZM9D board code ARM: shmobile: Use ->init_late() in shared EMEV2 case ARM: shmobile: Add shared EMEV2 code for ->init_machine() ARM: shmobile: Enable MTU2 on r7s72100 ... Signed-off-by: Kevin Hilman <khilman@linaro.org>
Diffstat (limited to 'arch/arm/mach-shmobile/setup-r7s72100.c')
-rw-r--r--arch/arm/mach-shmobile/setup-r7s72100.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/arch/arm/mach-shmobile/setup-r7s72100.c b/arch/arm/mach-shmobile/setup-r7s72100.c
index d4eb509a1c8..55f0b9c7c48 100644
--- a/arch/arm/mach-shmobile/setup-r7s72100.c
+++ b/arch/arm/mach-shmobile/setup-r7s72100.c
@@ -22,6 +22,7 @@
#include <linux/kernel.h>
#include <linux/of_platform.h>
#include <linux/serial_sci.h>
+#include <linux/sh_timer.h>
#include <mach/common.h>
#include <mach/irqs.h>
#include <mach/r7s72100.h>
@@ -58,6 +59,26 @@ static inline void r7s72100_register_scif(int idx)
sizeof(struct plat_sci_port));
}
+
+static struct sh_timer_config mtu2_0_platform_data __initdata = {
+ .name = "MTU2_0",
+ .timer_bit = 0,
+ .channel_offset = -0x80,
+ .clockevent_rating = 200,
+};
+
+static struct resource mtu2_0_resources[] __initdata = {
+ DEFINE_RES_MEM(0xfcff0300, 0x27),
+ DEFINE_RES_IRQ(gic_iid(139)), /* MTU2 TGI0A */
+};
+
+#define r7s72100_register_mtu2(idx) \
+ platform_device_register_resndata(&platform_bus, "sh_mtu2", \
+ idx, mtu2_##idx##_resources, \
+ ARRAY_SIZE(mtu2_##idx##_resources), \
+ &mtu2_##idx##_platform_data, \
+ sizeof(struct sh_timer_config))
+
void __init r7s72100_add_dt_devices(void)
{
r7s72100_register_scif(SCIF0);
@@ -68,6 +89,7 @@ void __init r7s72100_add_dt_devices(void)
r7s72100_register_scif(SCIF5);
r7s72100_register_scif(SCIF6);
r7s72100_register_scif(SCIF7);
+ r7s72100_register_mtu2(0);
}
void __init r7s72100_init_early(void)