diff options
author | Adrian Hunter <adrian.hunter@intel.com> | 2011-08-29 16:42:11 +0300 |
---|---|---|
committer | Philippe Langlais <philippe.langlais@stericsson.com> | 2011-12-06 10:57:49 +0100 |
commit | efc9dcbcfd10b72bb9892ea8c36cbcb78738ba77 (patch) | |
tree | 881df3ab315c6f06d36aceadead501bd97cdb4e7 /include/linux/mmc/core.h | |
parent | cf81d83e1cee2cdcac1fa92915f0cde77613556c (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>
Change-Id: I324ad5b70ce1093cef1bccead045a2539be4cbfc
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/33452
Reviewed-by: Ulf HANSSON <ulf.hansson@stericsson.com>
Tested-by: Ulf HANSSON <ulf.hansson@stericsson.com>
Diffstat (limited to 'include/linux/mmc/core.h')
-rw-r--r-- | include/linux/mmc/core.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/mmc/core.h b/include/linux/mmc/core.h index b8b1b7a311f..56e5625b6f4 100644 --- a/include/linux/mmc/core.h +++ b/include/linux/mmc/core.h @@ -162,6 +162,9 @@ extern int mmc_erase_group_aligned(struct mmc_card *card, unsigned int from, extern unsigned int mmc_calc_max_discard(struct mmc_card *card); extern int mmc_set_blocklen(struct mmc_card *card, unsigned int blocklen); +extern int mmc_hw_reset(struct mmc_host *host); +extern int mmc_hw_reset_check(struct mmc_host *host); +extern int mmc_can_reset(struct mmc_card *card); extern void mmc_set_data_timeout(struct mmc_data *, const struct mmc_card *); extern unsigned int mmc_align_data_size(struct mmc_card *, unsigned int); |