diff options
Diffstat (limited to 'include/linux/mmc/mmc.h')
-rw-r--r-- | include/linux/mmc/mmc.h | 38 |
1 files changed, 37 insertions, 1 deletions
diff --git a/include/linux/mmc/mmc.h b/include/linux/mmc/mmc.h index 5a794cb503e..0e7135697d1 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 | */ |