Skip to content

Commit

Permalink
ARM: shmobile: genmai-reference: Enable MTU2 in device tree
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
Laurent Pinchart authored and Simon Horman committed Aug 17, 2014
1 parent 9162d39 commit 9dddfcf
Show file tree
Hide file tree
Showing 5 changed files with 17 additions and 43 deletions.
4 changes: 4 additions & 0 deletions arch/arm/boot/dts/r7s72100-genmai.dts
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,10 @@
clock-frequency = <48000000>;
};

&mtu2 {
status = "ok";
};

&i2c2 {
status = "okay";
clock-frequency = <400000>;
Expand Down
20 changes: 0 additions & 20 deletions arch/arm/mach-shmobile/board-genmai-reference.c
Original file line number Diff line number Diff line change
Expand Up @@ -19,29 +19,10 @@
*/

#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",
Expand All @@ -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
14 changes: 13 additions & 1 deletion arch/arm/mach-shmobile/board-genmai.c
Original file line number Diff line number Diff line change
Expand Up @@ -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>

Expand Down Expand Up @@ -125,10 +126,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);

Expand Down
1 change: 0 additions & 1 deletion arch/arm/mach-shmobile/r7s72100.h
Original file line number Diff line number Diff line change
@@ -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__ */
21 changes: 0 additions & 21 deletions arch/arm/mach-shmobile/setup-r7s72100.c
Original file line number Diff line number Diff line change
Expand Up @@ -18,32 +18,11 @@
* 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(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
static const char *r7s72100_boards_compat_dt[] __initdata = {
Expand Down

0 comments on commit 9dddfcf

Please sign in to comment.