Loading drivers/mmc/core/mmc.c +6 −0 Original line number Diff line number Diff line Loading @@ -677,6 +677,9 @@ static int mmc_read_ext_csd(struct mmc_card *card, u8 *ext_csd) mmc_hostname(card->host), card->ext_csd.barrier_support, card->ext_csd.cache_flush_policy); card->ext_csd.enhanced_rpmb_supported = (card->ext_csd.rel_param & EXT_CSD_WR_REL_PARAM_EN_RPMB_REL_WR); } else { card->ext_csd.cmdq_support = 0; card->ext_csd.cmdq_depth = 0; Loading Loading @@ -789,6 +792,8 @@ MMC_DEV_ATTR(enhanced_area_offset, "%llu\n", card->ext_csd.enhanced_area_offset); MMC_DEV_ATTR(enhanced_area_size, "%u\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(enhanced_rpmb_supported, "%#x\n", card->ext_csd.enhanced_rpmb_supported); MMC_DEV_ATTR(rel_sectors, "%#x\n", card->ext_csd.rel_sectors); static struct attribute *mmc_std_attrs[] = { Loading @@ -807,6 +812,7 @@ static struct attribute *mmc_std_attrs[] = { &dev_attr_enhanced_area_offset.attr, &dev_attr_enhanced_area_size.attr, &dev_attr_raw_rpmb_size_mult.attr, &dev_attr_enhanced_rpmb_supported.attr, &dev_attr_rel_sectors.attr, NULL, }; Loading include/linux/mmc/card.h +1 −0 Original line number Diff line number Diff line Loading @@ -56,6 +56,7 @@ struct mmc_ext_csd { u8 sec_feature_support; u8 rel_sectors; u8 rel_param; bool enhanced_rpmb_supported; u8 part_config; u8 cache_ctrl; u8 rst_n_function; Loading include/linux/mmc/mmc.h +2 −1 Original line number Diff line number Diff line Loading @@ -298,6 +298,7 @@ struct _mmc_csd { */ #define EXT_CSD_WR_REL_PARAM_EN (1<<2) #define EXT_CSD_WR_REL_PARAM_EN_RPMB_REL_WR (1<<4) #define EXT_CSD_BOOT_WP_B_PWR_WP_DIS (0x40) #define EXT_CSD_BOOT_WP_B_PERM_WP_DIS (0x10) Loading Loading
drivers/mmc/core/mmc.c +6 −0 Original line number Diff line number Diff line Loading @@ -677,6 +677,9 @@ static int mmc_read_ext_csd(struct mmc_card *card, u8 *ext_csd) mmc_hostname(card->host), card->ext_csd.barrier_support, card->ext_csd.cache_flush_policy); card->ext_csd.enhanced_rpmb_supported = (card->ext_csd.rel_param & EXT_CSD_WR_REL_PARAM_EN_RPMB_REL_WR); } else { card->ext_csd.cmdq_support = 0; card->ext_csd.cmdq_depth = 0; Loading Loading @@ -789,6 +792,8 @@ MMC_DEV_ATTR(enhanced_area_offset, "%llu\n", card->ext_csd.enhanced_area_offset); MMC_DEV_ATTR(enhanced_area_size, "%u\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(enhanced_rpmb_supported, "%#x\n", card->ext_csd.enhanced_rpmb_supported); MMC_DEV_ATTR(rel_sectors, "%#x\n", card->ext_csd.rel_sectors); static struct attribute *mmc_std_attrs[] = { Loading @@ -807,6 +812,7 @@ static struct attribute *mmc_std_attrs[] = { &dev_attr_enhanced_area_offset.attr, &dev_attr_enhanced_area_size.attr, &dev_attr_raw_rpmb_size_mult.attr, &dev_attr_enhanced_rpmb_supported.attr, &dev_attr_rel_sectors.attr, NULL, }; Loading
include/linux/mmc/card.h +1 −0 Original line number Diff line number Diff line Loading @@ -56,6 +56,7 @@ struct mmc_ext_csd { u8 sec_feature_support; u8 rel_sectors; u8 rel_param; bool enhanced_rpmb_supported; u8 part_config; u8 cache_ctrl; u8 rst_n_function; Loading
include/linux/mmc/mmc.h +2 −1 Original line number Diff line number Diff line Loading @@ -298,6 +298,7 @@ struct _mmc_csd { */ #define EXT_CSD_WR_REL_PARAM_EN (1<<2) #define EXT_CSD_WR_REL_PARAM_EN_RPMB_REL_WR (1<<4) #define EXT_CSD_BOOT_WP_B_PWR_WP_DIS (0x40) #define EXT_CSD_BOOT_WP_B_PERM_WP_DIS (0x10) Loading