ARM: shmobile: r8a7790: Switch to new style CMT device
authorLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Wed, 23 Apr 2014 11:15:13 +0000 (13:15 +0200)
committerSimon Horman <horms+renesas@verge.net.au>
Sun, 11 May 2014 10:35:27 +0000 (19:35 +0900)
The CMT (Compare Match Timer) 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>
[horms+renesas@verge.net.au resolved conflict: use clk_names]
Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
arch/arm/mach-shmobile/board-lager-reference.c
arch/arm/mach-shmobile/clock-r8a7790.c
arch/arm/mach-shmobile/setup-r8a7790.c

index 1eb48cffb4c583e05749721d0e79427aab805be7..1bca2748aa7c7e97572c7872e401400a4091535b 100644 (file)
@@ -90,7 +90,7 @@ static void __init lager_add_du_device(void)
  * devices until they get moved to DT.
  */
 static const struct clk_name clk_names[] __initconst = {
-       { "cmt0", NULL, "sh_cmt.0" },
+       { "cmt0", "fck", "sh-cmt-48-gen2.0" },
        { "scifa0", NULL, "sh-sci.0" },
        { "scifa1", NULL, "sh-sci.1" },
        { "scifb0", NULL, "sh-sci.2" },
index a936ae7de0838602eddb2fe80690c0f009f7089c..296a057109e42b7ad621843b44d7f525b9ddcfe0 100644 (file)
@@ -357,7 +357,6 @@ static struct clk_lookup lookups[] = {
        CLKDEV_DEV_ID("sh_mobile_sdhi.2", &mstp_clks[MSTP312]),
        CLKDEV_DEV_ID("sh_mobile_sdhi.3", &mstp_clks[MSTP311]),
        CLKDEV_DEV_ID("sh_mmcif.1", &mstp_clks[MSTP305]),
-       CLKDEV_DEV_ID("sh_cmt.0", &mstp_clks[MSTP124]),
        CLKDEV_DEV_ID("qspi.0", &mstp_clks[MSTP917]),
        CLKDEV_DEV_ID("renesas_usbhs", &mstp_clks[MSTP704]),
        CLKDEV_DEV_ID("pci-rcar-gen2.0", &mstp_clks[MSTP703]),
@@ -367,6 +366,7 @@ static struct clk_lookup lookups[] = {
        CLKDEV_DEV_ID("sata-r8a7790.1", &mstp_clks[MSTP814]),
 
        /* ICK */
+       CLKDEV_ICK_ID("fck", "sh-cmt-48-gen2.0", &mstp_clks[MSTP124]),
        CLKDEV_ICK_ID("usbhs", "usb_phy_rcar_gen2", &mstp_clks[MSTP704]),
        CLKDEV_ICK_ID("lvds.0", "rcar-du-r8a7790", &mstp_clks[MSTP726]),
        CLKDEV_ICK_ID("lvds.1", "rcar-du-r8a7790", &mstp_clks[MSTP725]),
index c4616f0698c6dcfefc3934cace5fd6c16c37e257..87327f353d1b05e878bdb5e7ffbaa2e7ec38d005 100644 (file)
@@ -269,20 +269,17 @@ static const struct resource thermal_resources[] __initconst = {
                                        thermal_resources,              \
                                        ARRAY_SIZE(thermal_resources))
 
-static const struct sh_timer_config cmt00_platform_data __initconst = {
-       .name = "CMT00",
-       .timer_bit = 0,
-       .clockevent_rating = 80,
+static struct sh_timer_config cmt0_platform_data = {
+       .channels_mask = 0x60,
 };
 
-static const struct resource cmt00_resources[] __initconst = {
-       DEFINE_RES_MEM(0xffca0510, 0x0c),
-       DEFINE_RES_MEM(0xffca0500, 0x04),
-       DEFINE_RES_IRQ(gic_spi(142)), /* CMT0_0 */
+static struct resource cmt0_resources[] = {
+       DEFINE_RES_MEM(0xffca0000, 0x1004),
+       DEFINE_RES_IRQ(gic_spi(142)),
 };
 
 #define r8a7790_register_cmt(idx)                                      \
-       platform_device_register_resndata(&platform_bus, "sh_cmt",      \
+       platform_device_register_resndata(&platform_bus, "sh-cmt-48-gen2", \
                                          idx, cmt##idx##_resources,    \
                                          ARRAY_SIZE(cmt##idx##_resources), \
                                          &cmt##idx##_platform_data,    \
@@ -300,7 +297,7 @@ void __init r8a7790_add_dt_devices(void)
        r8a7790_register_scif(7);
        r8a7790_register_scif(8);
        r8a7790_register_scif(9);
-       r8a7790_register_cmt(00);
+       r8a7790_register_cmt(0);
 }
 
 void __init r8a7790_add_standard_devices(void)