aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mmc/host/omap_hsmmc.c
diff options
context:
space:
mode:
authorGrazvydas Ignotas <notasas@gmail.com>2010-08-10 21:01:52 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2010-08-11 11:59:04 -0400
commit4816858cce279b5e8d1eab0b4832d89d8f2ca58c (patch)
tree81da0dc2193db08910ba5d1c7a55e03dcd7274a9 /drivers/mmc/host/omap_hsmmc.c
parent6f51be3d37dff73cf8db771df4169f4c2f1cbf66 (diff)
omap_hsmmc: add init_card pass-through callback
This will allow us to set up special cards in machine drivers just after they are detected by MMC core. Signed-off-by: Grazvydas Ignotas <notasas@gmail.com> Cc: Adrian Hunter <adrian.hunter@nokia.com> Cc: Tony Lindgren <tony@atomide.com> Cc: Bob Copeland <me@bobcopeland.com> Cc: Kalle Valo <kvalo@adurom.com> Cc: Madhusudhan Chikkature <madhu.cr@ti.com> Cc: Kishore Kadiyala <kishore.kadiyala@ti.com> Cc: Russell King <linux@arm.linux.org.uk> 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/host/omap_hsmmc.c')
-rw-r--r--drivers/mmc/host/omap_hsmmc.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
index a0c8515cb3b9..ee1a3093048e 100644
--- a/drivers/mmc/host/omap_hsmmc.c
+++ b/drivers/mmc/host/omap_hsmmc.c
@@ -1598,6 +1598,14 @@ static int omap_hsmmc_get_ro(struct mmc_host *mmc)
1598 return mmc_slot(host).get_ro(host->dev, 0); 1598 return mmc_slot(host).get_ro(host->dev, 0);
1599} 1599}
1600 1600
1601static void omap_hsmmc_init_card(struct mmc_host *mmc, struct mmc_card *card)
1602{
1603 struct omap_hsmmc_host *host = mmc_priv(mmc);
1604
1605 if (mmc_slot(host).init_card)
1606 mmc_slot(host).init_card(card);
1607}
1608
1601static void omap_hsmmc_conf_bus_power(struct omap_hsmmc_host *host) 1609static void omap_hsmmc_conf_bus_power(struct omap_hsmmc_host *host)
1602{ 1610{
1603 u32 hctl, capa, value; 1611 u32 hctl, capa, value;
@@ -1869,6 +1877,7 @@ static const struct mmc_host_ops omap_hsmmc_ops = {
1869 .set_ios = omap_hsmmc_set_ios, 1877 .set_ios = omap_hsmmc_set_ios,
1870 .get_cd = omap_hsmmc_get_cd, 1878 .get_cd = omap_hsmmc_get_cd,
1871 .get_ro = omap_hsmmc_get_ro, 1879 .get_ro = omap_hsmmc_get_ro,
1880 .init_card = omap_hsmmc_init_card,
1872 /* NYET -- enable_sdio_irq */ 1881 /* NYET -- enable_sdio_irq */
1873}; 1882};
1874 1883
@@ -1879,6 +1888,7 @@ static const struct mmc_host_ops omap_hsmmc_ps_ops = {
1879 .set_ios = omap_hsmmc_set_ios, 1888 .set_ios = omap_hsmmc_set_ios,
1880 .get_cd = omap_hsmmc_get_cd, 1889 .get_cd = omap_hsmmc_get_cd,
1881 .get_ro = omap_hsmmc_get_ro, 1890 .get_ro = omap_hsmmc_get_ro,
1891 .init_card = omap_hsmmc_init_card,
1882 /* NYET -- enable_sdio_irq */ 1892 /* NYET -- enable_sdio_irq */
1883}; 1893};
1884 1894