diff options
author | Adrian Hunter <adrian.hunter@intel.com> | 2016-06-10 11:28:59 +0300 |
---|---|---|
committer | Chris Ball <chris@printf.net> | 2016-06-23 16:28:08 -0400 |
commit | a3d3331e6854a4607133bed152988d51250107ca (patch) | |
tree | c38fa494b12241983287d8c4fed1257bdd8957ca | |
parent | 0ca049f25191c32323ba25a3cfd542b9fdefb473 (diff) | |
download | mmc-utils-a3d3331e6854a4607133bed152988d51250107ca.tar.gz |
mmc-utils: Add Command Queue fields to Extended CSD
Display Command Queue information when printing Extended CSD
Example:
# mmc extcsd read /dev/mmcblk0 | grep CMDQ
Command Queue Support [CMDQ_SUPPORT]: 0x01
Command Queue Depth [CMDQ_DEPTH]: 16
Command Enabled [CMDQ_MODE_EN]: 0x01
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Chris Ball <chris@printf.net>
-rw-r--r-- | mmc.h | 3 | ||||
-rw-r--r-- | mmc_cmds.c | 9 |
2 files changed, 12 insertions, 0 deletions
@@ -55,6 +55,8 @@ #define EXT_CSD_FFU_ARG_2 489 /* RO */ #define EXT_CSD_FFU_ARG_1 488 /* RO */ #define EXT_CSD_FFU_ARG_0 487 /* RO */ +#define EXT_CSD_CMDQ_DEPTH 307 /* RO */ +#define EXT_CSD_CMDQ_SUPPORT 308 /* RO */ #define EXT_CSD_NUM_OF_FW_SEC_PROG_3 305 /* RO */ #define EXT_CSD_NUM_OF_FW_SEC_PROG_2 304 /* RO */ #define EXT_CSD_NUM_OF_FW_SEC_PROG_1 303 /* RO */ @@ -119,6 +121,7 @@ #define EXT_CSD_MODE_CONFIG 30 #define EXT_CSD_MODE_OPERATION_CODES 29 /* W */ #define EXT_CSD_FFU_STATUS 26 /* R */ +#define EXT_CSD_CMDQ_MODE_EN 15 /* R/W */ /* * WR_REL_PARAM field definitions @@ -1723,6 +1723,15 @@ int do_read_extcsd(int nargs, char **argv) printf("eMMC Firmware Version: %s\n", (char*)&ext_csd[EXT_CSD_FIRMWARE_VERSION]); } + + if (ext_csd_rev >= 8) { + printf("Command Queue Support [CMDQ_SUPPORT]: 0x%02x\n", + ext_csd[EXT_CSD_CMDQ_SUPPORT]); + printf("Command Queue Depth [CMDQ_DEPTH]: %u\n", + (ext_csd[EXT_CSD_CMDQ_DEPTH] & 0x1f) + 1); + printf("Command Enabled [CMDQ_MODE_EN]: 0x%02x\n", + ext_csd[EXT_CSD_CMDQ_MODE_EN]); + } out_free: return ret; } |