ARM: shmobile: genmai-reference: Enable MTU2 in device tree
authorLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Wed, 9 Jul 2014 13:12:44 +0000 (15:12 +0200)
committerSimon Horman <horms+renesas@verge.net.au>
Fri, 5 Dec 2014 00:59:15 +0000 (09:59 +0900)
No more device needs to be added from platform code when booting the
reference platform, move MTU2 registration from setup-r7s72100.c to
board-genmai.c and remove the now empty r7s72100_add_dt_devices()
function.

As the genmai_add_standard_devices() function is now identical to the
default init_machine implementation, remove it as well.

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

arch/arm/boot/dts/r7s72100-genmai.dts
arch/arm/mach-shmobile/board-genmai-reference.c
arch/arm/mach-shmobile/board-genmai.c
arch/arm/mach-shmobile/r7s72100.h
arch/arm/mach-shmobile/setup-r7s72100.c

index 2070546..a3ed23c 100644 (file)
        clock-frequency = <48000000>;
 };
 
+&mtu2 {
+       status = "ok";
+};
+
 &i2c2 {
        status = "okay";
        clock-frequency = <400000>;
index e5448f7..bc52677 100644 (file)
  */
 
 #include <linux/kernel.h>
-#include <linux/of_platform.h>
 
-#include <asm/mach-types.h>
 #include <asm/mach/arch.h>
 
-#include "clock.h"
 #include "common.h"
-#include "r7s72100.h"
-
-/*
- * This is a really crude hack to provide clkdev support to platform
- * devices until they get moved to DT.
- */
-static const struct clk_name clk_names[] = {
-       { "mtu2", "fck", "sh-mtu2" },
-};
-
-static void __init genmai_add_standard_devices(void)
-{
-       shmobile_clk_workaround(clk_names, ARRAY_SIZE(clk_names), true);
-       r7s72100_add_dt_devices();
-       of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL);
-}
 
 static const char * const genmai_boards_compat_dt[] __initconst = {
        "renesas,genmai",
@@ -50,6 +31,5 @@ static const char * const genmai_boards_compat_dt[] __initconst = {
 
 DT_MACHINE_START(GENMAI_DT, "genmai")
        .init_early     = shmobile_init_delay,
-       .init_machine   = genmai_add_standard_devices,
        .dt_compat      = genmai_boards_compat_dt,
 MACHINE_END
index e2a3ba4..b5dee53 100644 (file)
@@ -23,6 +23,7 @@
 #include <linux/platform_device.h>
 #include <linux/serial_sci.h>
 #include <linux/sh_eth.h>
+#include <linux/sh_timer.h>
 #include <linux/spi/rspi.h>
 #include <linux/spi/spi.h>
 
@@ -126,10 +127,21 @@ R7S72100_SCIF(7, 0xe800a800, gic_iid(249));
                                          &scif##index##_platform_data,        \
                                          sizeof(scif##index##_platform_data))
 
+static struct resource mtu2_resources[] __initdata = {
+       DEFINE_RES_MEM(0xfcff0000, 0x400),
+       DEFINE_RES_IRQ_NAMED(gic_iid(139), "tgi0a"),
+};
+
+#define r7s72100_register_mtu2()                                       \
+       platform_device_register_resndata(&platform_bus, "sh-mtu2",     \
+                                         -1, mtu2_resources,           \
+                                         ARRAY_SIZE(mtu2_resources),   \
+                                         NULL, 0)
+
 static void __init genmai_add_standard_devices(void)
 {
        r7s72100_clock_init();
-       r7s72100_add_dt_devices();
+       r7s72100_register_mtu2();
 
        platform_device_register_full(&ether_info);
 
index efb723c..321ae4e 100644 (file)
@@ -1,7 +1,6 @@
 #ifndef __ASM_R7S72100_H__
 #define __ASM_R7S72100_H__
 
-void r7s72100_add_dt_devices(void);
 void r7s72100_clock_init(void);
 
 #endif /* __ASM_R7S72100_H__ */
index 4a98b23..d898cef 100644 (file)
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
-#include <linux/irq.h>
 #include <linux/kernel.h>
-#include <linux/of_platform.h>
-#include <linux/sh_timer.h>
 
 #include <asm/mach/arch.h>
 
 #include "common.h"
-#include "irqs.h"
-#include "r7s72100.h"
-
-static struct resource mtu2_resources[] __initdata = {
-       DEFINE_RES_MEM(0xfcff0000, 0x400),
-       DEFINE_RES_IRQ_NAMED(gic_iid(139), "tgi0a"),
-};
-
-#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)
-{
-       r7s72100_register_mtu2();
-}
 
 #ifdef CONFIG_USE_OF
 static const char *r7s72100_boards_compat_dt[] __initdata = {