diff options
| author | Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> | 2014-05-02 14:21:25 -0400 |
|---|---|---|
| committer | Simon Horman <horms+renesas@verge.net.au> | 2014-05-11 06:35:28 -0400 |
| commit | 535ef0d9575b0809915341481ef3bac6bb5d0aaa (patch) | |
| tree | 179777308fa168ede80ab3375c64e821add84443 | |
| parent | 8ec72e46067d237dd60a08582e6427159c3f4b5f (diff) | |
ARM: shmobile: r8a7778: Switch to new style TMU device
The TMU (Timer Unit) 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>
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
| -rw-r--r-- | arch/arm/mach-shmobile/clock-r8a7778.c | 4 | ||||
| -rw-r--r-- | arch/arm/mach-shmobile/setup-r8a7778.c | 28 |
2 files changed, 9 insertions, 23 deletions
diff --git a/arch/arm/mach-shmobile/clock-r8a7778.c b/arch/arm/mach-shmobile/clock-r8a7778.c index 201fc487e4e1..65f08f75d117 100644 --- a/arch/arm/mach-shmobile/clock-r8a7778.c +++ b/arch/arm/mach-shmobile/clock-r8a7778.c | |||
| @@ -207,8 +207,6 @@ static struct clk_lookup lookups[] = { | |||
| 207 | CLKDEV_DEV_ID("sh-sci.3", &mstp_clks[MSTP023]), /* SCIF3 */ | 207 | CLKDEV_DEV_ID("sh-sci.3", &mstp_clks[MSTP023]), /* SCIF3 */ |
| 208 | CLKDEV_DEV_ID("sh-sci.4", &mstp_clks[MSTP022]), /* SCIF4 */ | 208 | CLKDEV_DEV_ID("sh-sci.4", &mstp_clks[MSTP022]), /* SCIF4 */ |
| 209 | CLKDEV_DEV_ID("sh-sci.5", &mstp_clks[MSTP021]), /* SCIF6 */ | 209 | CLKDEV_DEV_ID("sh-sci.5", &mstp_clks[MSTP021]), /* SCIF6 */ |
| 210 | CLKDEV_DEV_ID("sh_tmu.0", &mstp_clks[MSTP016]), /* TMU00 */ | ||
| 211 | CLKDEV_DEV_ID("sh_tmu.1", &mstp_clks[MSTP015]), /* TMU01 */ | ||
| 212 | CLKDEV_DEV_ID("sh-hspi.0", &mstp_clks[MSTP007]), /* HSPI0 */ | 210 | CLKDEV_DEV_ID("sh-hspi.0", &mstp_clks[MSTP007]), /* HSPI0 */ |
| 213 | CLKDEV_DEV_ID("fffc7000.spi", &mstp_clks[MSTP007]), /* HSPI0 */ | 211 | CLKDEV_DEV_ID("fffc7000.spi", &mstp_clks[MSTP007]), /* HSPI0 */ |
| 214 | CLKDEV_DEV_ID("sh-hspi.1", &mstp_clks[MSTP007]), /* HSPI1 */ | 212 | CLKDEV_DEV_ID("sh-hspi.1", &mstp_clks[MSTP007]), /* HSPI1 */ |
| @@ -239,6 +237,8 @@ static struct clk_lookup lookups[] = { | |||
| 239 | CLKDEV_ICK_ID("src.6", "rcar_sound", &mstp_clks[MSTP525]), | 237 | CLKDEV_ICK_ID("src.6", "rcar_sound", &mstp_clks[MSTP525]), |
| 240 | CLKDEV_ICK_ID("src.7", "rcar_sound", &mstp_clks[MSTP524]), | 238 | CLKDEV_ICK_ID("src.7", "rcar_sound", &mstp_clks[MSTP524]), |
| 241 | CLKDEV_ICK_ID("src.8", "rcar_sound", &mstp_clks[MSTP523]), | 239 | CLKDEV_ICK_ID("src.8", "rcar_sound", &mstp_clks[MSTP523]), |
| 240 | CLKDEV_ICK_ID("fck", "sh-tmu.0", &mstp_clks[MSTP016]), | ||
| 241 | CLKDEV_ICK_ID("fck", "sh-tmu.1", &mstp_clks[MSTP015]), | ||
| 242 | }; | 242 | }; |
| 243 | 243 | ||
| 244 | void __init r8a7778_clock_init(void) | 244 | void __init r8a7778_clock_init(void) |
diff --git a/arch/arm/mach-shmobile/setup-r8a7778.c b/arch/arm/mach-shmobile/setup-r8a7778.c index 6d694526e4ca..8c02e24f2483 100644 --- a/arch/arm/mach-shmobile/setup-r8a7778.c +++ b/arch/arm/mach-shmobile/setup-r8a7778.c | |||
| @@ -71,33 +71,20 @@ R8A7778_SCIF(5, 0xffe45000, gic_iid(0x6b)); | |||
| 71 | sizeof(scif##index##_platform_data)) | 71 | sizeof(scif##index##_platform_data)) |
| 72 | 72 | ||
| 73 | /* TMU */ | 73 | /* TMU */ |
| 74 | static struct resource sh_tmu0_resources[] __initdata = { | 74 | static struct sh_timer_config sh_tmu0_platform_data = { |
| 75 | DEFINE_RES_MEM(0xffd80008, 12), | 75 | .channels_mask = 7, |
| 76 | DEFINE_RES_IRQ(gic_iid(0x40)), | ||
| 77 | }; | ||
| 78 | |||
| 79 | static struct sh_timer_config sh_tmu0_platform_data __initdata = { | ||
| 80 | .name = "TMU00", | ||
| 81 | .channel_offset = 0x4, | ||
| 82 | .timer_bit = 0, | ||
| 83 | .clockevent_rating = 200, | ||
| 84 | }; | 76 | }; |
| 85 | 77 | ||
| 86 | static struct resource sh_tmu1_resources[] __initdata = { | 78 | static struct resource sh_tmu0_resources[] = { |
| 87 | DEFINE_RES_MEM(0xffd80014, 12), | 79 | DEFINE_RES_MEM(0xffd80000, 0x30), |
| 80 | DEFINE_RES_IRQ(gic_iid(0x40)), | ||
| 88 | DEFINE_RES_IRQ(gic_iid(0x41)), | 81 | DEFINE_RES_IRQ(gic_iid(0x41)), |
| 89 | }; | 82 | DEFINE_RES_IRQ(gic_iid(0x42)), |
| 90 | |||
| 91 | static struct sh_timer_config sh_tmu1_platform_data __initdata = { | ||
| 92 | .name = "TMU01", | ||
| 93 | .channel_offset = 0x10, | ||
| 94 | .timer_bit = 1, | ||
| 95 | .clocksource_rating = 200, | ||
| 96 | }; | 83 | }; |
| 97 | 84 | ||
| 98 | #define r8a7778_register_tmu(idx) \ | 85 | #define r8a7778_register_tmu(idx) \ |
| 99 | platform_device_register_resndata( \ | 86 | platform_device_register_resndata( \ |
| 100 | &platform_bus, "sh_tmu", idx, \ | 87 | &platform_bus, "sh-tmu", idx, \ |
| 101 | sh_tmu##idx##_resources, \ | 88 | sh_tmu##idx##_resources, \ |
| 102 | ARRAY_SIZE(sh_tmu##idx##_resources), \ | 89 | ARRAY_SIZE(sh_tmu##idx##_resources), \ |
| 103 | &sh_tmu##idx##_platform_data, \ | 90 | &sh_tmu##idx##_platform_data, \ |
| @@ -312,7 +299,6 @@ void __init r8a7778_add_dt_devices(void) | |||
| 312 | r8a7778_register_scif(4); | 299 | r8a7778_register_scif(4); |
| 313 | r8a7778_register_scif(5); | 300 | r8a7778_register_scif(5); |
| 314 | r8a7778_register_tmu(0); | 301 | r8a7778_register_tmu(0); |
| 315 | r8a7778_register_tmu(1); | ||
| 316 | } | 302 | } |
| 317 | 303 | ||
| 318 | /* HPB-DMA */ | 304 | /* HPB-DMA */ |
