summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-shmobile/board-bockw.c
diff options
context:
space:
mode:
authorKuninori Morimoto2013-07-26 09:34:58 +0200
committerSimon Horman2013-08-06 11:07:09 +0200
commitfc55190835e02ba5ae23dff40c92ea96db8ec8b6 (patch)
tree1e68cb943af9fc9729bf27d2b091edd0e80932bb /arch/arm/mach-shmobile/board-bockw.c
parentARM: shmobile: r8a7778: cleanup registration of usb phy (diff)
downloadkernel-qcow2-linux-fc55190835e02ba5ae23dff40c92ea96db8ec8b6.tar.gz
kernel-qcow2-linux-fc55190835e02ba5ae23dff40c92ea96db8ec8b6.tar.xz
kernel-qcow2-linux-fc55190835e02ba5ae23dff40c92ea96db8ec8b6.zip
ARM: shmobile: r8a7778: cleanup registration of sdhi
sdhi driver which needs platform data at the time of registration is used from BockW only. Now, ARM/shmobile aims to support DT, and the C code base board support will be removed if DT support is completed. Current driver registration method which needs platform data and which is not shared complicates codes. This means legacy C code cleanup after DT supporting will be more complicated This patch registers it on board code as cleanup C code Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
Diffstat (limited to 'arch/arm/mach-shmobile/board-bockw.c')
-rw-r--r--arch/arm/mach-shmobile/board-bockw.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/arch/arm/mach-shmobile/board-bockw.c b/arch/arm/mach-shmobile/board-bockw.c
index c94622a06be0..1c876abdf317 100644
--- a/arch/arm/mach-shmobile/board-bockw.c
+++ b/arch/arm/mach-shmobile/board-bockw.c
@@ -20,6 +20,7 @@
#include <linux/mfd/tmio.h>
#include <linux/mmc/host.h>
+#include <linux/mmc/sh_mobile_sdhi.h>
#include <linux/mmc/sh_mmcif.h>
#include <linux/mtd/partitions.h>
#include <linux/pinctrl/machine.h>
@@ -93,6 +94,11 @@ static struct sh_mobile_sdhi_info sdhi0_info = {
.tmio_flags = TMIO_MMC_HAS_IDLE_WAIT,
};
+static struct resource sdhi0_resources[] __initdata = {
+ DEFINE_RES_MEM(0xFFE4C000, 0x100),
+ DEFINE_RES_IRQ(gic_iid(0x77)),
+};
+
static struct sh_eth_plat_data ether_platform_data __initdata = {
.phy = 0x01,
.edmac_endian = EDMAC_LITTLE_ENDIAN,
@@ -253,7 +259,10 @@ static void __init bockw_init(void)
iowrite32(ioread32(base + PUPR4) | (3 << 26), base + PUPR4);
iounmap(base);
- r8a7778_sdhi_init(0, &sdhi0_info);
+ platform_device_register_resndata(
+ &platform_bus, "sh_mobile_sdhi", 0,
+ sdhi0_resources, ARRAY_SIZE(sdhi0_resources),
+ &sdhi0_info, sizeof(struct sh_mobile_sdhi_info));
}
}