forked from luck/tmp_suning_uos_patched
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>
This commit is contained in:
parent
6f51be3d37
commit
4816858cce
|
@ -122,6 +122,8 @@ struct omap_mmc_platform_data {
|
|||
/* Call back after enabling / disabling regulators */
|
||||
void (*after_set_reg)(struct device *dev, int slot,
|
||||
int power_on, int vdd);
|
||||
/* if we have special card, init it using this callback */
|
||||
void (*init_card)(struct mmc_card *card);
|
||||
|
||||
/* return MMC cover switch state, can be NULL if not supported.
|
||||
*
|
||||
|
|
|
@ -1598,6 +1598,14 @@ static int omap_hsmmc_get_ro(struct mmc_host *mmc)
|
|||
return mmc_slot(host).get_ro(host->dev, 0);
|
||||
}
|
||||
|
||||
static void omap_hsmmc_init_card(struct mmc_host *mmc, struct mmc_card *card)
|
||||
{
|
||||
struct omap_hsmmc_host *host = mmc_priv(mmc);
|
||||
|
||||
if (mmc_slot(host).init_card)
|
||||
mmc_slot(host).init_card(card);
|
||||
}
|
||||
|
||||
static void omap_hsmmc_conf_bus_power(struct omap_hsmmc_host *host)
|
||||
{
|
||||
u32 hctl, capa, value;
|
||||
|
@ -1869,6 +1877,7 @@ static const struct mmc_host_ops omap_hsmmc_ops = {
|
|||
.set_ios = omap_hsmmc_set_ios,
|
||||
.get_cd = omap_hsmmc_get_cd,
|
||||
.get_ro = omap_hsmmc_get_ro,
|
||||
.init_card = omap_hsmmc_init_card,
|
||||
/* NYET -- enable_sdio_irq */
|
||||
};
|
||||
|
||||
|
@ -1879,6 +1888,7 @@ static const struct mmc_host_ops omap_hsmmc_ps_ops = {
|
|||
.set_ios = omap_hsmmc_set_ios,
|
||||
.get_cd = omap_hsmmc_get_cd,
|
||||
.get_ro = omap_hsmmc_get_ro,
|
||||
.init_card = omap_hsmmc_init_card,
|
||||
/* NYET -- enable_sdio_irq */
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user