diff options
Diffstat (limited to 'arch/arm/mach-davinci/devices-da8xx.c')
-rw-r--r-- | arch/arm/mach-davinci/devices-da8xx.c | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/arch/arm/mach-davinci/devices-da8xx.c b/arch/arm/mach-davinci/devices-da8xx.c index 094eb8ed8e7..58ad5b66fd6 100644 --- a/arch/arm/mach-davinci/devices-da8xx.c +++ b/arch/arm/mach-davinci/devices-da8xx.c | |||
@@ -412,3 +412,39 @@ int __init da8xx_register_lcdc(void) | |||
412 | { | 412 | { |
413 | return platform_device_register(&da850_lcdc_device); | 413 | return platform_device_register(&da850_lcdc_device); |
414 | } | 414 | } |
415 | |||
416 | static struct resource da8xx_mmcsd0_resources[] = { | ||
417 | { /* registers */ | ||
418 | .start = DA8XX_MMCSD0_BASE, | ||
419 | .end = DA8XX_MMCSD0_BASE + SZ_4K - 1, | ||
420 | .flags = IORESOURCE_MEM, | ||
421 | }, | ||
422 | { /* interrupt */ | ||
423 | .start = IRQ_DA8XX_MMCSDINT0, | ||
424 | .end = IRQ_DA8XX_MMCSDINT0, | ||
425 | .flags = IORESOURCE_IRQ, | ||
426 | }, | ||
427 | { /* DMA RX */ | ||
428 | .start = EDMA_CTLR_CHAN(0, 16), | ||
429 | .end = EDMA_CTLR_CHAN(0, 16), | ||
430 | .flags = IORESOURCE_DMA, | ||
431 | }, | ||
432 | { /* DMA TX */ | ||
433 | .start = EDMA_CTLR_CHAN(0, 17), | ||
434 | .end = EDMA_CTLR_CHAN(0, 17), | ||
435 | .flags = IORESOURCE_DMA, | ||
436 | }, | ||
437 | }; | ||
438 | |||
439 | static struct platform_device da8xx_mmcsd0_device = { | ||
440 | .name = "davinci_mmc", | ||
441 | .id = 0, | ||
442 | .num_resources = ARRAY_SIZE(da8xx_mmcsd0_resources), | ||
443 | .resource = da8xx_mmcsd0_resources, | ||
444 | }; | ||
445 | |||
446 | int __init da8xx_register_mmcsd0(struct davinci_mmc_config *config) | ||
447 | { | ||
448 | da8xx_mmcsd0_device.dev.platform_data = config; | ||
449 | return platform_device_register(&da8xx_mmcsd0_device); | ||
450 | } | ||