summaryrefslogtreecommitdiff
path: root/drivers/mmc
diff options
context:
space:
mode:
authorPavan Kunapuli <pkunapuli@nvidia.com>2011-03-10 22:55:20 +0530
committerDan Willemsen <dwillemsen@nvidia.com>2011-04-26 15:53:27 -0700
commit72cceca7fabaed8871c941e012af73523c47bcf3 (patch)
treecb5fd7e0d6b752e00fbc5720d5f42aacf6490ab2 /drivers/mmc
parent288a03b174751d2fe441b36d9bfd6767f1b292c0 (diff)
mmc:unset bus speed mode variable after reset.
Unsetting bus speed mode variable after reset to ensure that the uhs mode is set properly. Original-Change-Id: I098a0df1289acefe01c391da622132a3562382fe Reviewed-on: http://git-master/r/22423 Reviewed-by: Pavan Kunapuli <pkunapuli@nvidia.com> Tested-by: Pavan Kunapuli <pkunapuli@nvidia.com> Reviewed-by: Bitan Biswas <bbiswas@nvidia.com> Tested-by: Bitan Biswas <bbiswas@nvidia.com> Reviewed-by: Narendra Damahe <ndamahe@nvidia.com> Tested-by: Narendra Damahe <ndamahe@nvidia.com> Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com> Change-Id: I0ffd0ab93b7fb72e2a7ae8d060b264d4f735df03
Diffstat (limited to 'drivers/mmc')
-rw-r--r--drivers/mmc/core/mmc.c18
-rw-r--r--drivers/mmc/host/sdhci.c1
2 files changed, 9 insertions, 10 deletions
diff --git a/drivers/mmc/core/mmc.c b/drivers/mmc/core/mmc.c
index 6027ab0f0652..366877dc7b80 100644
--- a/drivers/mmc/core/mmc.c
+++ b/drivers/mmc/core/mmc.c
@@ -466,16 +466,14 @@ static int mmc_init_card(struct mmc_host *host, u32 ocr,
goto free_card;
}
- if (!oldcard) {
- /*
- * Fetch and process extended CSD.
- */
- err = mmc_read_ext_csd(card);
- if (err)
- goto free_card;
- /* Erase size depends on CSD and Extended CSD */
- mmc_set_erase_size(card);
- }
+ /*
+ * Fetch and process extended CSD.
+ */
+ err = mmc_read_ext_csd(card);
+ if (err)
+ goto free_card;
+ /* Erase size depends on CSD and Extended CSD */
+ mmc_set_erase_size(card);
/*
* Activate high speed (if supported)
diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c
index 542de652adf0..d235ad596e16 100644
--- a/drivers/mmc/host/sdhci.c
+++ b/drivers/mmc/host/sdhci.c
@@ -179,6 +179,7 @@ static void sdhci_reset(struct sdhci_host *host, u8 mask)
if (mask & SDHCI_RESET_ALL) {
host->ops->configure_capabilities(host);
host->uhs_mode = 0;
+ host->mmc->ios.bus_speed_mode = 0;
host->mmc->ios.signalling_voltage = MMC_3_3_VOLT_SIGNALLING;
}
}