aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sh/boards/mach-kfr2r09
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2009-10-25 21:47:44 -0400
committerPaul Mundt <lethal@linux-sh.org>2009-10-25 21:47:44 -0400
commit15893fb565921507da80e500d85bb2575989bb57 (patch)
tree16473cd98b2b4dd43f55d4880a7b42973f2f6bd0 /arch/sh/boards/mach-kfr2r09
parentf32154c9b580f11017b01bf093514c900c09364e (diff)
parent96987d96f0058d8689a2b8ac288dbff2e6d85563 (diff)
Merge branch 'sh/sdhi-mfd'
Conflicts: arch/sh/boards/mach-ecovec24/setup.c arch/sh/boards/mach-kfr2r09/setup.c
Diffstat (limited to 'arch/sh/boards/mach-kfr2r09')
-rw-r--r--arch/sh/boards/mach-kfr2r09/setup.c33
1 files changed, 33 insertions, 0 deletions
diff --git a/arch/sh/boards/mach-kfr2r09/setup.c b/arch/sh/boards/mach-kfr2r09/setup.c
index ce01d6a953b8..43d75ee93358 100644
--- a/arch/sh/boards/mach-kfr2r09/setup.c
+++ b/arch/sh/boards/mach-kfr2r09/setup.c
@@ -332,6 +332,28 @@ static struct platform_device kfr2r09_camera = {
332 }, 332 },
333}; 333};
334 334
335static struct resource kfr2r09_sh_sdhi0_resources[] = {
336 [0] = {
337 .name = "SDHI0",
338 .start = 0x04ce0000,
339 .end = 0x04ce01ff,
340 .flags = IORESOURCE_MEM,
341 },
342 [1] = {
343 .start = 101,
344 .flags = IORESOURCE_IRQ,
345 },
346};
347
348static struct platform_device kfr2r09_sh_sdhi0_device = {
349 .name = "sh_mobile_sdhi",
350 .num_resources = ARRAY_SIZE(kfr2r09_sh_sdhi0_resources),
351 .resource = kfr2r09_sh_sdhi0_resources,
352 .archdata = {
353 .hwblk_id = HWBLK_SDHI0,
354 },
355};
356
335static struct platform_device *kfr2r09_devices[] __initdata = { 357static struct platform_device *kfr2r09_devices[] __initdata = {
336 &kfr2r09_nor_flash_device, 358 &kfr2r09_nor_flash_device,
337 &kfr2r09_nand_flash_device, 359 &kfr2r09_nand_flash_device,
@@ -339,6 +361,7 @@ static struct platform_device *kfr2r09_devices[] __initdata = {
339 &kfr2r09_sh_lcdc_device, 361 &kfr2r09_sh_lcdc_device,
340 &kfr2r09_ceu_device, 362 &kfr2r09_ceu_device,
341 &kfr2r09_camera, 363 &kfr2r09_camera,
364 &kfr2r09_sh_sdhi0_device,
342}; 365};
343 366
344#define BSC_CS0BCR 0xfec10004 367#define BSC_CS0BCR 0xfec10004
@@ -500,6 +523,16 @@ static int __init kfr2r09_devices_setup(void)
500 523
501 platform_resource_setup_memory(&kfr2r09_ceu_device, "ceu", 4 << 20); 524 platform_resource_setup_memory(&kfr2r09_ceu_device, "ceu", 4 << 20);
502 525
526 /* SDHI0 connected to yc304 */
527 gpio_request(GPIO_FN_SDHI0CD, NULL);
528 gpio_request(GPIO_FN_SDHI0WP, NULL);
529 gpio_request(GPIO_FN_SDHI0D3, NULL);
530 gpio_request(GPIO_FN_SDHI0D2, NULL);
531 gpio_request(GPIO_FN_SDHI0D1, NULL);
532 gpio_request(GPIO_FN_SDHI0D0, NULL);
533 gpio_request(GPIO_FN_SDHI0CMD, NULL);
534 gpio_request(GPIO_FN_SDHI0CLK, NULL);
535
503 return platform_add_devices(kfr2r09_devices, 536 return platform_add_devices(kfr2r09_devices,
504 ARRAY_SIZE(kfr2r09_devices)); 537 ARRAY_SIZE(kfr2r09_devices));
505} 538}