summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-shmobile/board-g4evm.c
diff options
context:
space:
mode:
authorMagnus Damm <damm@opensource.se>2011-01-06 10:41:09 +0000
committerPaul Mundt <lethal@linux-sh.org>2011-01-12 14:44:34 +0900
commit9213c0007dc4863ea1c3dd6553f2f05a88573768 (patch)
tree719e2962e5dfe681c2be3c00df192ddad3509fe7 /arch/arm/mach-shmobile/board-g4evm.c
parent969f9a19122141465d02a889d7d1de34eb53e609 (diff)
ARM: mach-shmobile: sh7377 Enable SDIO IRQs
This patch enables interrupt generation for SDIO IRQs of the SDHI block on the sh7377 aka G4 processor. Use together with a recent SDHI driver using TMIO_MMC_SDIO_IRQ and with the MMC_CAP_SDIO_IRQ flag in the board code. The G4EVM specific SDHI platform data is also updated to flag SDIO capabilities. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/arm/mach-shmobile/board-g4evm.c')
-rw-r--r--arch/arm/mach-shmobile/board-g4evm.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/arch/arm/mach-shmobile/board-g4evm.c b/arch/arm/mach-shmobile/board-g4evm.c
index c13f01280b7..dee3e9231fb 100644
--- a/arch/arm/mach-shmobile/board-g4evm.c
+++ b/arch/arm/mach-shmobile/board-g4evm.c
@@ -30,6 +30,7 @@
#include <linux/io.h>
#include <linux/input.h>
#include <linux/input/sh_keysc.h>
+#include <linux/mmc/host.h>
#include <linux/mfd/sh_mobile_sdhi.h>
#include <linux/gpio.h>
#include <mach/sh7377.h>
@@ -196,6 +197,10 @@ static struct platform_device keysc_device = {
};
/* SDHI */
+static struct sh_mobile_sdhi_info sdhi0_info = {
+ .tmio_caps = MMC_CAP_SDIO_IRQ,
+};
+
static struct resource sdhi0_resources[] = {
[0] = {
.name = "SDHI0",
@@ -214,6 +219,13 @@ static struct platform_device sdhi0_device = {
.num_resources = ARRAY_SIZE(sdhi0_resources),
.resource = sdhi0_resources,
.id = 0,
+ .dev = {
+ .platform_data = &sdhi0_info,
+ },
+};
+
+static struct sh_mobile_sdhi_info sdhi1_info = {
+ .tmio_caps = MMC_CAP_NONREMOVABLE | MMC_CAP_SDIO_IRQ,
};
static struct resource sdhi1_resources[] = {
@@ -234,6 +246,9 @@ static struct platform_device sdhi1_device = {
.num_resources = ARRAY_SIZE(sdhi1_resources),
.resource = sdhi1_resources,
.id = 1,
+ .dev = {
+ .platform_data = &sdhi1_info,
+ },
};
static struct platform_device *g4evm_devices[] __initdata = {