summaryrefslogtreecommitdiff
path: root/drivers/mmc/core/mmc.c
diff options
context:
space:
mode:
authorAdrian Hunter <adrian.hunter@intel.com>2011-08-29 16:42:11 +0300
committerMarcel Ziswiler <marcel.ziswiler@toradex.com>2017-03-31 10:16:31 +0200
commite5ad0688a6b46f62664bdaad854311017bd039c4 (patch)
tree9e982ef690984ebd1d8709ef8b273794d7a4e0ec /drivers/mmc/core/mmc.c
parentb496d097ab8741678ae3027b8e5358a04fb5ea82 (diff)
mmc: core: add eMMC hardware reset support
eMMC's may have a hardware reset line. This patch provides a host controller operation to implement hardware reset and a function to reset and reinitialize the card. Also, for MMC, the reset is always performed before initialization. The host must set the new host capability MMC_CAP_HW_RESET to enable hardware reset. Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> Signed-off-by: Chris Ball <cjb@laptop.org> (cherry picked from commit b2499518b5ad7e28bb3ed348fd3f370eeb1e36c0)
Diffstat (limited to 'drivers/mmc/core/mmc.c')
-rwxr-xr-xdrivers/mmc/core/mmc.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/mmc/core/mmc.c b/drivers/mmc/core/mmc.c
index e450fbc66559..d77872f8f9ba 100755
--- a/drivers/mmc/core/mmc.c
+++ b/drivers/mmc/core/mmc.c
@@ -426,6 +426,7 @@ static int mmc_read_ext_csd(struct mmc_card *card, u8 *ext_csd)
card->ext_csd.raw_erased_mem_count = ext_csd[EXT_CSD_ERASED_MEM_CONT];
if (card->ext_csd.rev >= 5) {
card->ext_csd.rel_param = ext_csd[EXT_CSD_WR_REL_PARAM];
+ card->ext_csd.rst_n_function = ext_csd[EXT_CSD_RST_N_FUNCTION];
/* check whether the eMMC card supports HPI */
if ((ext_csd[EXT_CSD_HPI_FEATURES] & 0x1) &&
!(card->quirks & MMC_QUIRK_BROKEN_HPI)) {