aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/mmc/mmc.h
diff options
context:
space:
mode:
authorAdrian Hunter <adrian.hunter@intel.com>2011-08-29 16:42:11 +0300
committerChris Ball <cjb@laptop.org>2011-10-26 16:32:05 -0400
commitb2499518b5ad7e28bb3ed348fd3f370eeb1e36c0 (patch)
treec4c9597d0631554bffeecbcc6a2a7ec3037ea78c /include/linux/mmc/mmc.h
parentmmc: mmci: simplify err check in mmci_post_request (diff)
downloadlinux-dev-b2499518b5ad7e28bb3ed348fd3f370eeb1e36c0.tar.xz
linux-dev-b2499518b5ad7e28bb3ed348fd3f370eeb1e36c0.zip
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>
Diffstat (limited to 'include/linux/mmc/mmc.h')
-rw-r--r--include/linux/mmc/mmc.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/mmc/mmc.h b/include/linux/mmc/mmc.h
index 5a794cb503ea..ed8fca890ee2 100644
--- a/include/linux/mmc/mmc.h
+++ b/include/linux/mmc/mmc.h
@@ -272,6 +272,7 @@ struct _mmc_csd {
#define EXT_CSD_PARTITION_ATTRIBUTE 156 /* R/W */
#define EXT_CSD_PARTITION_SUPPORT 160 /* RO */
+#define EXT_CSD_RST_N_FUNCTION 162 /* R/W */
#define EXT_CSD_WR_REL_PARAM 166 /* RO */
#define EXT_CSD_ERASE_GROUP_DEF 175 /* R/W */
#define EXT_CSD_PART_CONFIG 179 /* R/W */
@@ -328,6 +329,9 @@ struct _mmc_csd {
#define EXT_CSD_SEC_BD_BLK_EN BIT(2)
#define EXT_CSD_SEC_GB_CL_EN BIT(4)
+#define EXT_CSD_RST_N_EN_MASK 0x3
+#define EXT_CSD_RST_N_ENABLED 1 /* RST_n is enabled on card */
+
/*
* MMC_SWITCH access modes
*/