| From 140cad9153ee69734b82413611c1d5e7b2736ec1 Mon Sep 17 00:00:00 2001 |
| From: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> |
| Date: Wed, 23 Apr 2014 13:15:22 +0200 |
| Subject: ARM: shmobile: r7s72100: Switch to new style MTU2 device |
| |
| 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 | 2 +- |
| arch/arm/mach-shmobile/setup-r7s72100.c | 26 +++++++++----------------- |
| 2 files changed, 10 insertions(+), 18 deletions(-) |
| |
| diff --git a/arch/arm/mach-shmobile/clock-r7s72100.c b/arch/arm/mach-shmobile/clock-r7s72100.c |
| index bee0073c9b64..644f1c2a96c7 100644 |
| --- a/arch/arm/mach-shmobile/clock-r7s72100.c |
| +++ b/arch/arm/mach-shmobile/clock-r7s72100.c |
| @@ -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) |
| diff --git a/arch/arm/mach-shmobile/setup-r7s72100.c b/arch/arm/mach-shmobile/setup-r7s72100.c |
| index 9c0b3a9d5f7a..545db1512480 100644 |
| --- a/arch/arm/mach-shmobile/setup-r7s72100.c |
| +++ b/arch/arm/mach-shmobile/setup-r7s72100.c |
| @@ -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) |
| -- |
| 2.1.2 |
| |