From: "Zhang, YiX X" <yix.x.zhang@xxxxxxxxx> Current sysfs output format for eMMC Enhanced Area feature are incorrect. If the enhanced area feature not enabled, then the driver will return error code -EINVAL(-22) as the sysfs value. But the definition for those two sysfs items are unsigned int and unsigned long long. So, if Enhanced area feature not enabled on the eMMC device, then output similar to below may be observed: ... #cat /sys/block/mmcblk0/device/enhanced_area_offset #18446744073709551594 #cat /sys/block/mmcblk0/device/enhanced_area_size #4294967274 Submit this patch to change the output format to display the correct value. Signed-off-by: Yunpeng Gao <yunpeng.gao@xxxxxxxxx> --- drivers/mmc/core/mmc.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/mmc/core/mmc.c b/drivers/mmc/core/mmc.c index 793c6f7..a57827a 100644 --- a/drivers/mmc/core/mmc.c +++ b/drivers/mmc/core/mmc.c @@ -705,9 +705,10 @@ MMC_DEV_ATTR(name, "%s\n", card->cid.prod_name); MMC_DEV_ATTR(oemid, "0x%04x\n", card->cid.oemid); MMC_DEV_ATTR(prv, "0x%x\n", card->cid.prv); MMC_DEV_ATTR(serial, "0x%08x\n", card->cid.serial); -MMC_DEV_ATTR(enhanced_area_offset, "%llu\n", +MMC_DEV_ATTR(enhanced_area_offset, "%lld\n", card->ext_csd.enhanced_area_offset); -MMC_DEV_ATTR(enhanced_area_size, "%u\n", card->ext_csd.enhanced_area_size); +MMC_DEV_ATTR(enhanced_area_size, "%d KBytes\n", + card->ext_csd.enhanced_area_size); MMC_DEV_ATTR(raw_rpmb_size_mult, "%#x\n", card->ext_csd.raw_rpmb_size_mult); MMC_DEV_ATTR(rel_sectors, "%#x\n", card->ext_csd.rel_sectors); -- 1.7.9.5 -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html