Block-addressed devices should have address multiplied with sector size. Clarify with comment how is_blockaddressed() is calculated. Signed-off-by: Tomas Melin<tomas.melin@xxxxxxxxxxx> --- mmc_cmds.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mmc_cmds.c b/mmc_cmds.c index 295d505..21ddd55 100644 --- a/mmc_cmds.c +++ b/mmc_cmds.c @@ -794,7 +794,7 @@ unsigned int get_sector_count(__u8 *ext_csd) int is_blockaddresed(__u8 *ext_csd) { unsigned int sectors = get_sector_count(ext_csd); - + /* over 2GiB devices are block-addressed */ return (sectors > (2u * 1024 * 1024 * 1024) / 512); } @@ -1659,7 +1659,7 @@ int do_read_extcsd(int nargs, char **argv) printf("Enhanced User Data Start Address" " [ENH_START_ADDR]: 0x%06x\n", regl); printf(" i.e. %lu bytes offset\n", (is_blockaddresed(ext_csd) ? - 1l : 512l) * regl); + 512l : 1l) * regl); /* A441]: reserved [135] */ printf("Bad Block Management mode" -- 2.1.4 ��.n��������+%������w��{.n�����{��i��)��jg��������ݢj����G�������j:+v���w�m������w�������h�����٥