diff options
author | kishore kadiyala <kishore.kadiyala@ti.com> | 2009-09-22 19:45:25 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-09-23 10:39:37 -0400 |
commit | 82cf818d54f0a415a031eabd0949a81946445198 (patch) | |
tree | 947295f8136af85acd7e33b7ab01a8e8669c13b8 /drivers/mmc | |
parent | c99436fb7505ca2427780d7ae49ebb427bb6f374 (diff) |
omap4: mmc driver support on OMAP4
Add basic support for all 5 MMC controllers on OMAP4.
This patch doesn't include mmc-regulator support
Signed-off-by: Kishore Kadiyala <kishore.kadiyala@ti.com>
Cc: Jarkko Lavinen <jarkko.lavinen@nokia.com>
Acked-by: Madhusudhan Chikkature <madhu.cr@ti.com>
Cc: Russell King <linux@arm.linux.org.uk>
Acked-by: Tony Lindgren <tony@atomide.com>
Cc: Hiroshi DOYU <Hiroshi.DOYU@nokia.com>
Cc: Sakari Ailus <sakari.ailus@maxwell.research.nokia.com>
Cc: <linux-mmc@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/mmc')
-rw-r--r-- | drivers/mmc/host/Kconfig | 6 | ||||
-rw-r--r-- | drivers/mmc/host/omap_hsmmc.c | 10 |
2 files changed, 13 insertions, 3 deletions
diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig index 6f20eb93554b..7cb057f3f883 100644 --- a/drivers/mmc/host/Kconfig +++ b/drivers/mmc/host/Kconfig | |||
@@ -132,11 +132,11 @@ config MMC_OMAP | |||
132 | 132 | ||
133 | config MMC_OMAP_HS | 133 | config MMC_OMAP_HS |
134 | tristate "TI OMAP High Speed Multimedia Card Interface support" | 134 | tristate "TI OMAP High Speed Multimedia Card Interface support" |
135 | depends on ARCH_OMAP2430 || ARCH_OMAP3 | 135 | depends on ARCH_OMAP2430 || ARCH_OMAP3 || ARCH_OMAP4 |
136 | help | 136 | help |
137 | This selects the TI OMAP High Speed Multimedia card Interface. | 137 | This selects the TI OMAP High Speed Multimedia card Interface. |
138 | If you have an OMAP2430 or OMAP3 board with a Multimedia Card slot, | 138 | If you have an OMAP2430 or OMAP3 board or OMAP4 board with a |
139 | say Y or M here. | 139 | Multimedia Card slot, say Y or M here. |
140 | 140 | ||
141 | If unsure, say N. | 141 | If unsure, say N. |
142 | 142 | ||
diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c index a4dd43f117f0..4487cc097911 100644 --- a/drivers/mmc/host/omap_hsmmc.c +++ b/drivers/mmc/host/omap_hsmmc.c | |||
@@ -109,6 +109,8 @@ | |||
109 | #define OMAP_MMC1_DEVID 0 | 109 | #define OMAP_MMC1_DEVID 0 |
110 | #define OMAP_MMC2_DEVID 1 | 110 | #define OMAP_MMC2_DEVID 1 |
111 | #define OMAP_MMC3_DEVID 2 | 111 | #define OMAP_MMC3_DEVID 2 |
112 | #define OMAP_MMC4_DEVID 3 | ||
113 | #define OMAP_MMC5_DEVID 4 | ||
112 | 114 | ||
113 | #define MMC_TIMEOUT_MS 20 | 115 | #define MMC_TIMEOUT_MS 20 |
114 | #define OMAP_MMC_MASTER_CLOCK 96000000 | 116 | #define OMAP_MMC_MASTER_CLOCK 96000000 |
@@ -1758,6 +1760,14 @@ static int __init omap_hsmmc_probe(struct platform_device *pdev) | |||
1758 | host->dma_line_tx = OMAP34XX_DMA_MMC3_TX; | 1760 | host->dma_line_tx = OMAP34XX_DMA_MMC3_TX; |
1759 | host->dma_line_rx = OMAP34XX_DMA_MMC3_RX; | 1761 | host->dma_line_rx = OMAP34XX_DMA_MMC3_RX; |
1760 | break; | 1762 | break; |
1763 | case OMAP_MMC4_DEVID: | ||
1764 | host->dma_line_tx = OMAP44XX_DMA_MMC4_TX; | ||
1765 | host->dma_line_rx = OMAP44XX_DMA_MMC4_RX; | ||
1766 | break; | ||
1767 | case OMAP_MMC5_DEVID: | ||
1768 | host->dma_line_tx = OMAP44XX_DMA_MMC5_TX; | ||
1769 | host->dma_line_rx = OMAP44XX_DMA_MMC5_RX; | ||
1770 | break; | ||
1761 | default: | 1771 | default: |
1762 | dev_err(mmc_dev(host->mmc), "Invalid MMC id\n"); | 1772 | dev_err(mmc_dev(host->mmc), "Invalid MMC id\n"); |
1763 | goto err_irq; | 1773 | goto err_irq; |