aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/mmc/mmc.h
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2011-10-28 17:16:11 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2011-10-28 17:16:11 -0400
commit46b51ea2099fa2082342e52b8284aa828429b80b (patch)
tree0a0d7bfe1aff036c86a2e7beacbd91398008bfb6 /include/linux/mmc/mmc.h
parent1fdb24e969110fafea36d3b393bea438f702c87f (diff)
parenta6029e1f75bb484c1f5bc68b6a8572e4024795bc (diff)
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: (83 commits) mmc: fix compile error when CONFIG_BLOCK is not enabled mmc: core: Cleanup eMMC4.5 conditionals mmc: omap_hsmmc: if multiblock reads are broken, disable them mmc: core: add workaround for controllers with broken multiblock reads mmc: core: Prevent too long response times for suspend mmc: recognise SDIO cards with SDIO_CCCR_REV 3.00 mmc: sd: Handle SD3.0 cards not supporting UHS-I bus speed mode mmc: core: support HPI send command mmc: core: Add cache control for eMMC4.5 device mmc: core: Modify the timeout value for writing power class mmc: core: new discard feature support at eMMC v4.5 mmc: core: mmc sanitize feature support for v4.5 mmc: dw_mmc: modify DATA register offset mmc: sdhci-pci: add flag for devices that can support runtime PM mmc: omap_hsmmc: ensure pbias configuration is always done mmc: core: Add Power Off Notify Feature eMMC 4.5 mmc: sdhci-s3c: fix potential NULL dereference mmc: replace printk with appropriate display macro mmc: core: Add default timeout value for CMD6 mmc: sdhci-pci: add runtime pm support ...
Diffstat (limited to 'include/linux/mmc/mmc.h')
-rw-r--r--include/linux/mmc/mmc.h38
1 files changed, 37 insertions, 1 deletions
diff --git a/include/linux/mmc/mmc.h b/include/linux/mmc/mmc.h
index 5a794cb503ea..0e7135697d11 100644
--- a/include/linux/mmc/mmc.h
+++ b/include/linux/mmc/mmc.h
@@ -270,18 +270,31 @@ struct _mmc_csd {
270 * EXT_CSD fields 270 * EXT_CSD fields
271 */ 271 */
272 272
273#define EXT_CSD_FLUSH_CACHE 32 /* W */
274#define EXT_CSD_CACHE_CTRL 33 /* R/W */
275#define EXT_CSD_POWER_OFF_NOTIFICATION 34 /* R/W */
276#define EXT_CSD_GP_SIZE_MULT 143 /* R/W */
273#define EXT_CSD_PARTITION_ATTRIBUTE 156 /* R/W */ 277#define EXT_CSD_PARTITION_ATTRIBUTE 156 /* R/W */
274#define EXT_CSD_PARTITION_SUPPORT 160 /* RO */ 278#define EXT_CSD_PARTITION_SUPPORT 160 /* RO */
279#define EXT_CSD_HPI_MGMT 161 /* R/W */
280#define EXT_CSD_RST_N_FUNCTION 162 /* R/W */
281#define EXT_CSD_SANITIZE_START 165 /* W */
275#define EXT_CSD_WR_REL_PARAM 166 /* RO */ 282#define EXT_CSD_WR_REL_PARAM 166 /* RO */
276#define EXT_CSD_ERASE_GROUP_DEF 175 /* R/W */ 283#define EXT_CSD_ERASE_GROUP_DEF 175 /* R/W */
277#define EXT_CSD_PART_CONFIG 179 /* R/W */ 284#define EXT_CSD_PART_CONFIG 179 /* R/W */
278#define EXT_CSD_ERASED_MEM_CONT 181 /* RO */ 285#define EXT_CSD_ERASED_MEM_CONT 181 /* RO */
279#define EXT_CSD_BUS_WIDTH 183 /* R/W */ 286#define EXT_CSD_BUS_WIDTH 183 /* R/W */
280#define EXT_CSD_HS_TIMING 185 /* R/W */ 287#define EXT_CSD_HS_TIMING 185 /* R/W */
288#define EXT_CSD_POWER_CLASS 187 /* R/W */
281#define EXT_CSD_REV 192 /* RO */ 289#define EXT_CSD_REV 192 /* RO */
282#define EXT_CSD_STRUCTURE 194 /* RO */ 290#define EXT_CSD_STRUCTURE 194 /* RO */
283#define EXT_CSD_CARD_TYPE 196 /* RO */ 291#define EXT_CSD_CARD_TYPE 196 /* RO */
292#define EXT_CSD_OUT_OF_INTERRUPT_TIME 198 /* RO */
284#define EXT_CSD_PART_SWITCH_TIME 199 /* RO */ 293#define EXT_CSD_PART_SWITCH_TIME 199 /* RO */
294#define EXT_CSD_PWR_CL_52_195 200 /* RO */
295#define EXT_CSD_PWR_CL_26_195 201 /* RO */
296#define EXT_CSD_PWR_CL_52_360 202 /* RO */
297#define EXT_CSD_PWR_CL_26_360 203 /* RO */
285#define EXT_CSD_SEC_CNT 212 /* RO, 4 bytes */ 298#define EXT_CSD_SEC_CNT 212 /* RO, 4 bytes */
286#define EXT_CSD_S_A_TIMEOUT 217 /* RO */ 299#define EXT_CSD_S_A_TIMEOUT 217 /* RO */
287#define EXT_CSD_REL_WR_SEC_C 222 /* RO */ 300#define EXT_CSD_REL_WR_SEC_C 222 /* RO */
@@ -293,6 +306,14 @@ struct _mmc_csd {
293#define EXT_CSD_SEC_ERASE_MULT 230 /* RO */ 306#define EXT_CSD_SEC_ERASE_MULT 230 /* RO */
294#define EXT_CSD_SEC_FEATURE_SUPPORT 231 /* RO */ 307#define EXT_CSD_SEC_FEATURE_SUPPORT 231 /* RO */
295#define EXT_CSD_TRIM_MULT 232 /* RO */ 308#define EXT_CSD_TRIM_MULT 232 /* RO */
309#define EXT_CSD_PWR_CL_200_195 236 /* RO */
310#define EXT_CSD_PWR_CL_200_360 237 /* RO */
311#define EXT_CSD_PWR_CL_DDR_52_195 238 /* RO */
312#define EXT_CSD_PWR_CL_DDR_52_360 239 /* RO */
313#define EXT_CSD_POWER_OFF_LONG_TIME 247 /* RO */
314#define EXT_CSD_GENERIC_CMD6_TIME 248 /* RO */
315#define EXT_CSD_CACHE_SIZE 249 /* RO, 4 bytes */
316#define EXT_CSD_HPI_FEATURES 503 /* RO */
296 317
297/* 318/*
298 * EXT_CSD field definitions 319 * EXT_CSD field definitions
@@ -302,7 +323,9 @@ struct _mmc_csd {
302 323
303#define EXT_CSD_PART_CONFIG_ACC_MASK (0x7) 324#define EXT_CSD_PART_CONFIG_ACC_MASK (0x7)
304#define EXT_CSD_PART_CONFIG_ACC_BOOT0 (0x1) 325#define EXT_CSD_PART_CONFIG_ACC_BOOT0 (0x1)
305#define EXT_CSD_PART_CONFIG_ACC_BOOT1 (0x2) 326#define EXT_CSD_PART_CONFIG_ACC_GP0 (0x4)
327
328#define EXT_CSD_PART_SUPPORT_PART_EN (0x1)
306 329
307#define EXT_CSD_CMD_SET_NORMAL (1<<0) 330#define EXT_CSD_CMD_SET_NORMAL (1<<0)
308#define EXT_CSD_CMD_SET_SECURE (1<<1) 331#define EXT_CSD_CMD_SET_SECURE (1<<1)
@@ -327,7 +350,20 @@ struct _mmc_csd {
327#define EXT_CSD_SEC_ER_EN BIT(0) 350#define EXT_CSD_SEC_ER_EN BIT(0)
328#define EXT_CSD_SEC_BD_BLK_EN BIT(2) 351#define EXT_CSD_SEC_BD_BLK_EN BIT(2)
329#define EXT_CSD_SEC_GB_CL_EN BIT(4) 352#define EXT_CSD_SEC_GB_CL_EN BIT(4)
353#define EXT_CSD_SEC_SANITIZE BIT(6) /* v4.5 only */
354
355#define EXT_CSD_RST_N_EN_MASK 0x3
356#define EXT_CSD_RST_N_ENABLED 1 /* RST_n is enabled on card */
357
358#define EXT_CSD_NO_POWER_NOTIFICATION 0
359#define EXT_CSD_POWER_ON 1
360#define EXT_CSD_POWER_OFF_SHORT 2
361#define EXT_CSD_POWER_OFF_LONG 3
330 362
363#define EXT_CSD_PWR_CL_8BIT_MASK 0xF0 /* 8 bit PWR CLS */
364#define EXT_CSD_PWR_CL_4BIT_MASK 0x0F /* 8 bit PWR CLS */
365#define EXT_CSD_PWR_CL_8BIT_SHIFT 4
366#define EXT_CSD_PWR_CL_4BIT_SHIFT 0
331/* 367/*
332 * MMC_SWITCH access modes 368 * MMC_SWITCH access modes
333 */ 369 */