diff options
author | Grazvydas Ignotas <notasas@gmail.com> | 2010-08-10 21:01:52 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-08-11 11:59:04 -0400 |
commit | 4816858cce279b5e8d1eab0b4832d89d8f2ca58c (patch) | |
tree | 81da0dc2193db08910ba5d1c7a55e03dcd7274a9 /drivers/mmc | |
parent | 6f51be3d37dff73cf8db771df4169f4c2f1cbf66 (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')
-rw-r--r-- | drivers/mmc/host/omap_hsmmc.c | 10 |
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 | ||
1601 | static 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 | |||
1601 | static void omap_hsmmc_conf_bus_power(struct omap_hsmmc_host *host) | 1609 | static 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 | ||