diff options
author | Iliyan Malchev <malchev@google.com> | 2011-09-06 22:06:04 -0700 |
---|---|---|
committer | Iliyan Malchev <malchev@google.com> | 2011-09-06 22:06:04 -0700 |
commit | f0684621648fc997915507188ce512a445a9bab1 (patch) | |
tree | e3fa78fd3f9a1f6b085ba6e5774c69947e238dcb /drivers/mmc | |
parent | e16ec00c7a8db14c665cac8417d17d2232e62f1e (diff) | |
parent | f7dfd268d6c63662c222d226b835b8f273f9daab (diff) | |
download | kernel_samsung_tuna-f0684621648fc997915507188ce512a445a9bab1.zip kernel_samsung_tuna-f0684621648fc997915507188ce512a445a9bab1.tar.gz kernel_samsung_tuna-f0684621648fc997915507188ce512a445a9bab1.tar.bz2 |
Merge branch 'linux-omap-3.0' into android-omap-3.0
Diffstat (limited to 'drivers/mmc')
-rw-r--r-- | drivers/mmc/host/omap_hsmmc.c | 35 |
1 files changed, 5 insertions, 30 deletions
diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c index f032792..bdd8081 100644 --- a/drivers/mmc/host/omap_hsmmc.c +++ b/drivers/mmc/host/omap_hsmmc.c @@ -41,6 +41,7 @@ #include <plat/board.h> #include <plat/mmc.h> #include <plat/cpu.h> +#include <plat/omap-pm.h> /* OMAP HSMMC Host Controller Registers */ #define OMAP_HSMMC_SYSCONFIG 0x0010 @@ -181,7 +182,6 @@ struct omap_hsmmc_host { int slot_id; int got_dbclk; int response_busy; - int context_loss; int dpm_state; int vdd; int protect_card; @@ -621,21 +621,11 @@ static void omap_hsmmc_disable_irq(struct omap_hsmmc_host *host) static int omap_hsmmc_context_restore(struct omap_hsmmc_host *host) { struct mmc_ios *ios = &host->mmc->ios; - struct omap_mmc_platform_data *pdata = host->pdata; - int context_loss = 0; u32 hctl, capa, con; u16 dsor = 0; unsigned long timeout; - if (pdata->get_context_loss_count) { - context_loss = pdata->get_context_loss_count(host->dev); - if (context_loss < 0) - return 1; - } - - dev_dbg(mmc_dev(host->mmc), "context was %slost\n", - context_loss == host->context_loss ? "not " : ""); - if (host->context_loss == context_loss) + if (!omap_pm_was_context_lost(host->dev)) return 1; /* Wait for hardware reset */ @@ -735,8 +725,6 @@ static int omap_hsmmc_context_restore(struct omap_hsmmc_host *host) else OMAP_HSMMC_WRITE(host->base, CON, con & ~OD); out: - host->context_loss = context_loss; - dev_dbg(mmc_dev(host->mmc), "context is restored\n"); return 0; } @@ -746,15 +734,7 @@ out: */ static void omap_hsmmc_context_save(struct omap_hsmmc_host *host) { - struct omap_mmc_platform_data *pdata = host->pdata; - int context_loss; - - if (pdata->get_context_loss_count) { - context_loss = pdata->get_context_loss_count(host->dev); - if (context_loss < 0) - return; - host->context_loss = context_loss; - } + return; } #else @@ -1970,20 +1950,15 @@ static int omap_hsmmc_regs_show(struct seq_file *s, void *data) { struct mmc_host *mmc = s->private; struct omap_hsmmc_host *host = mmc_priv(mmc); - int context_loss = 0; - if (host->pdata->get_context_loss_count) - context_loss = host->pdata->get_context_loss_count(host->dev); seq_printf(s, "mmc%d:\n" " enabled:\t%d\n" " dpm_state:\t%d\n" " nesting_cnt:\t%d\n" - " ctx_loss:\t%d:%d\n" - "\nregs:\n", + " ct", mmc->index, mmc->enabled ? 1 : 0, - host->dpm_state, mmc->nesting_cnt, - host->context_loss, context_loss); + host->dpm_state, mmc->nesting_cnt); if (host->suspended || host->dpm_state == OFF) { seq_printf(s, "host suspended, can't read registers\n"); |