ARM: shmobile: r7s72100: Switch to new style MTU2 device
authorLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Wed, 23 Apr 2014 11:15:22 +0000 (13:15 +0200)
committerSimon Horman <horms@verge.net.au>
Fri, 5 Dec 2014 00:23:53 +0000 (09:23 +0900)
The MTU2 (Multi-Function Timer Pulse Unit 2) driver implements a new
style of platform data that handles the timer as a single device with
multiple channel. Switch from the old-style platform data to the
new-style platform data.

Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Tested-by: Wolfram Sang <wsa@sang-engineering.com>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
(cherry picked from commit c17fcfbcc0f6b4f3cae761149e1a6108dd6750e7)
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
arch/arm/mach-shmobile/clock-r7s72100.c
arch/arm/mach-shmobile/setup-r7s72100.c

index bee0073..644f1c2 100644 (file)
@@ -204,7 +204,6 @@ static struct clk_lookup lookups[] = {
        CLKDEV_DEV_ID("fcfee800.i2c", &mstp_clks[MSTP95]),
        CLKDEV_DEV_ID("fcfeec00.i2c", &mstp_clks[MSTP94]),
        CLKDEV_DEV_ID("r7s72100-ether", &mstp_clks[MSTP74]),
-       CLKDEV_CON_ID("mtu2_fck", &mstp_clks[MSTP33]),
 
        /* ICK */
        CLKDEV_ICK_ID("sci_fck", "sh-sci.0", &mstp_clks[MSTP47]),
@@ -215,6 +214,7 @@ static struct clk_lookup lookups[] = {
        CLKDEV_ICK_ID("sci_fck", "sh-sci.5", &mstp_clks[MSTP42]),
        CLKDEV_ICK_ID("sci_fck", "sh-sci.6", &mstp_clks[MSTP41]),
        CLKDEV_ICK_ID("sci_fck", "sh-sci.7", &mstp_clks[MSTP40]),
+       CLKDEV_ICK_ID("fck", "sh-mtu2", &mstp_clks[MSTP33]),
 };
 
 void __init r7s72100_clock_init(void)
index 9c0b3a9..545db15 100644 (file)
@@ -62,24 +62,16 @@ R7S72100_SCIF(7, 0xe800a800, gic_iid(249));
                                          sizeof(scif##index##_platform_data))
 
 
-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_resources[] __initdata = {
+       DEFINE_RES_MEM(0xfcff0000, 0x400),
+       DEFINE_RES_IRQ_NAMED(gic_iid(139), "tgi0a"),
 };
 
-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))
+#define r7s72100_register_mtu2()                                       \
+       platform_device_register_resndata(&platform_bus, "sh-mtu2",     \
+                                         -1, mtu2_resources,           \
+                                         ARRAY_SIZE(mtu2_resources),   \
+                                         NULL, 0)
 
 void __init r7s72100_add_dt_devices(void)
 {
@@ -91,7 +83,7 @@ void __init r7s72100_add_dt_devices(void)
        r7s72100_register_scif(5);
        r7s72100_register_scif(6);
        r7s72100_register_scif(7);
-       r7s72100_register_mtu2(0);
+       r7s72100_register_mtu2();
 }
 
 void __init r7s72100_init_early(void)