diff options
Diffstat (limited to 'include/linux/mmc/mmc.h')
-rw-r--r-- | include/linux/mmc/mmc.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/include/linux/mmc/mmc.h b/include/linux/mmc/mmc.h index 264ba5451e3b..ac26a685cca8 100644 --- a/include/linux/mmc/mmc.h +++ b/include/linux/mmc/mmc.h | |||
@@ -50,6 +50,7 @@ | |||
50 | #define MMC_SET_BLOCKLEN 16 /* ac [31:0] block len R1 */ | 50 | #define MMC_SET_BLOCKLEN 16 /* ac [31:0] block len R1 */ |
51 | #define MMC_READ_SINGLE_BLOCK 17 /* adtc [31:0] data addr R1 */ | 51 | #define MMC_READ_SINGLE_BLOCK 17 /* adtc [31:0] data addr R1 */ |
52 | #define MMC_READ_MULTIPLE_BLOCK 18 /* adtc [31:0] data addr R1 */ | 52 | #define MMC_READ_MULTIPLE_BLOCK 18 /* adtc [31:0] data addr R1 */ |
53 | #define MMC_SEND_TUNING_BLOCK 19 /* adtc R1 */ | ||
53 | 54 | ||
54 | /* class 3 */ | 55 | /* class 3 */ |
55 | #define MMC_WRITE_DAT_UNTIL_STOP 20 /* adtc [31:0] data addr R1 */ | 56 | #define MMC_WRITE_DAT_UNTIL_STOP 20 /* adtc [31:0] data addr R1 */ |
@@ -82,6 +83,12 @@ | |||
82 | #define MMC_APP_CMD 55 /* ac [31:16] RCA R1 */ | 83 | #define MMC_APP_CMD 55 /* ac [31:16] RCA R1 */ |
83 | #define MMC_GEN_CMD 56 /* adtc [0] RD/WR R1 */ | 84 | #define MMC_GEN_CMD 56 /* adtc [0] RD/WR R1 */ |
84 | 85 | ||
86 | static inline bool mmc_op_multi(u32 opcode) | ||
87 | { | ||
88 | return opcode == MMC_WRITE_MULTIPLE_BLOCK || | ||
89 | opcode == MMC_READ_MULTIPLE_BLOCK; | ||
90 | } | ||
91 | |||
85 | /* | 92 | /* |
86 | * MMC_SWITCH argument format: | 93 | * MMC_SWITCH argument format: |
87 | * | 94 | * |
@@ -255,18 +262,23 @@ struct _mmc_csd { | |||
255 | 262 | ||
256 | #define EXT_CSD_PARTITION_ATTRIBUTE 156 /* R/W */ | 263 | #define EXT_CSD_PARTITION_ATTRIBUTE 156 /* R/W */ |
257 | #define EXT_CSD_PARTITION_SUPPORT 160 /* RO */ | 264 | #define EXT_CSD_PARTITION_SUPPORT 160 /* RO */ |
265 | #define EXT_CSD_WR_REL_PARAM 166 /* RO */ | ||
258 | #define EXT_CSD_ERASE_GROUP_DEF 175 /* R/W */ | 266 | #define EXT_CSD_ERASE_GROUP_DEF 175 /* R/W */ |
267 | #define EXT_CSD_PART_CONFIG 179 /* R/W */ | ||
259 | #define EXT_CSD_ERASED_MEM_CONT 181 /* RO */ | 268 | #define EXT_CSD_ERASED_MEM_CONT 181 /* RO */ |
260 | #define EXT_CSD_BUS_WIDTH 183 /* R/W */ | 269 | #define EXT_CSD_BUS_WIDTH 183 /* R/W */ |
261 | #define EXT_CSD_HS_TIMING 185 /* R/W */ | 270 | #define EXT_CSD_HS_TIMING 185 /* R/W */ |
262 | #define EXT_CSD_REV 192 /* RO */ | 271 | #define EXT_CSD_REV 192 /* RO */ |
263 | #define EXT_CSD_STRUCTURE 194 /* RO */ | 272 | #define EXT_CSD_STRUCTURE 194 /* RO */ |
264 | #define EXT_CSD_CARD_TYPE 196 /* RO */ | 273 | #define EXT_CSD_CARD_TYPE 196 /* RO */ |
274 | #define EXT_CSD_PART_SWITCH_TIME 199 /* RO */ | ||
265 | #define EXT_CSD_SEC_CNT 212 /* RO, 4 bytes */ | 275 | #define EXT_CSD_SEC_CNT 212 /* RO, 4 bytes */ |
266 | #define EXT_CSD_S_A_TIMEOUT 217 /* RO */ | 276 | #define EXT_CSD_S_A_TIMEOUT 217 /* RO */ |
277 | #define EXT_CSD_REL_WR_SEC_C 222 /* RO */ | ||
267 | #define EXT_CSD_HC_WP_GRP_SIZE 221 /* RO */ | 278 | #define EXT_CSD_HC_WP_GRP_SIZE 221 /* RO */ |
268 | #define EXT_CSD_ERASE_TIMEOUT_MULT 223 /* RO */ | 279 | #define EXT_CSD_ERASE_TIMEOUT_MULT 223 /* RO */ |
269 | #define EXT_CSD_HC_ERASE_GRP_SIZE 224 /* RO */ | 280 | #define EXT_CSD_HC_ERASE_GRP_SIZE 224 /* RO */ |
281 | #define EXT_CSD_BOOT_MULT 226 /* RO */ | ||
270 | #define EXT_CSD_SEC_TRIM_MULT 229 /* RO */ | 282 | #define EXT_CSD_SEC_TRIM_MULT 229 /* RO */ |
271 | #define EXT_CSD_SEC_ERASE_MULT 230 /* RO */ | 283 | #define EXT_CSD_SEC_ERASE_MULT 230 /* RO */ |
272 | #define EXT_CSD_SEC_FEATURE_SUPPORT 231 /* RO */ | 284 | #define EXT_CSD_SEC_FEATURE_SUPPORT 231 /* RO */ |
@@ -276,6 +288,12 @@ struct _mmc_csd { | |||
276 | * EXT_CSD field definitions | 288 | * EXT_CSD field definitions |
277 | */ | 289 | */ |
278 | 290 | ||
291 | #define EXT_CSD_WR_REL_PARAM_EN (1<<2) | ||
292 | |||
293 | #define EXT_CSD_PART_CONFIG_ACC_MASK (0x7) | ||
294 | #define EXT_CSD_PART_CONFIG_ACC_BOOT0 (0x1) | ||
295 | #define EXT_CSD_PART_CONFIG_ACC_BOOT1 (0x2) | ||
296 | |||
279 | #define EXT_CSD_CMD_SET_NORMAL (1<<0) | 297 | #define EXT_CSD_CMD_SET_NORMAL (1<<0) |
280 | #define EXT_CSD_CMD_SET_SECURE (1<<1) | 298 | #define EXT_CSD_CMD_SET_SECURE (1<<1) |
281 | #define EXT_CSD_CMD_SET_CPSECURE (1<<2) | 299 | #define EXT_CSD_CMD_SET_CPSECURE (1<<2) |