Commit 9dddfcfa authored by Laurent Pinchart's avatar Laurent Pinchart Committed by Simon Horman

ARM: shmobile: genmai-reference: Enable MTU2 in device tree

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: default avatarLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Acked-by: default avatarWolfram Sang <wsa+renesas@sang-engineering.com>
Signed-off-by: default avatarSimon Horman <horms+renesas@verge.net.au>
parent 9162d39c
...@@ -43,6 +43,10 @@ &usb_x1_clk { ...@@ -43,6 +43,10 @@ &usb_x1_clk {
clock-frequency = <48000000>; clock-frequency = <48000000>;
}; };
&mtu2 {
status = "ok";
};
&i2c2 { &i2c2 {
status = "okay"; status = "okay";
clock-frequency = <400000>; clock-frequency = <400000>;
......
...@@ -19,29 +19,10 @@ ...@@ -19,29 +19,10 @@
*/ */
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/of_platform.h>
#include <asm/mach-types.h>
#include <asm/mach/arch.h> #include <asm/mach/arch.h>
#include "clock.h"
#include "common.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 = { static const char * const genmai_boards_compat_dt[] __initconst = {
"renesas,genmai", "renesas,genmai",
...@@ -50,6 +31,5 @@ static const char * const genmai_boards_compat_dt[] __initconst = { ...@@ -50,6 +31,5 @@ static const char * const genmai_boards_compat_dt[] __initconst = {
DT_MACHINE_START(GENMAI_DT, "genmai") DT_MACHINE_START(GENMAI_DT, "genmai")
.init_early = shmobile_init_delay, .init_early = shmobile_init_delay,
.init_machine = genmai_add_standard_devices,
.dt_compat = genmai_boards_compat_dt, .dt_compat = genmai_boards_compat_dt,
MACHINE_END MACHINE_END
...@@ -23,6 +23,7 @@ ...@@ -23,6 +23,7 @@
#include <linux/platform_device.h> #include <linux/platform_device.h>
#include <linux/serial_sci.h> #include <linux/serial_sci.h>
#include <linux/sh_eth.h> #include <linux/sh_eth.h>
#include <linux/sh_timer.h>
#include <linux/spi/rspi.h> #include <linux/spi/rspi.h>
#include <linux/spi/spi.h> #include <linux/spi/spi.h>
...@@ -125,10 +126,21 @@ R7S72100_SCIF(7, 0xe800a800, gic_iid(249)); ...@@ -125,10 +126,21 @@ R7S72100_SCIF(7, 0xe800a800, gic_iid(249));
&scif##index##_platform_data, \ &scif##index##_platform_data, \
sizeof(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) static void __init genmai_add_standard_devices(void)
{ {
r7s72100_clock_init(); r7s72100_clock_init();
r7s72100_add_dt_devices(); r7s72100_register_mtu2();
platform_device_register_full(&ether_info); platform_device_register_full(&ether_info);
......
#ifndef __ASM_R7S72100_H__ #ifndef __ASM_R7S72100_H__
#define __ASM_R7S72100_H__ #define __ASM_R7S72100_H__
void r7s72100_add_dt_devices(void);
void r7s72100_clock_init(void); void r7s72100_clock_init(void);
#endif /* __ASM_R7S72100_H__ */ #endif /* __ASM_R7S72100_H__ */
...@@ -18,32 +18,11 @@ ...@@ -18,32 +18,11 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/ */
#include <linux/irq.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/of_platform.h>
#include <linux/sh_timer.h>
#include <asm/mach/arch.h> #include <asm/mach/arch.h>
#include "common.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(NULL, "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 #ifdef CONFIG_USE_OF
static const char *r7s72100_boards_compat_dt[] __initdata = { static const char *r7s72100_boards_compat_dt[] __initdata = {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment