mmc: core: expose info about enhanced rpmb support
Following eMMC JEDEC JESD84-B51 standard, an ehannced form of rpmb is supported. What this enhanced mode supports is in addition to be able to write one rpmb or two rpmb frames at a time, 32 frames can be written at a time. Expose this information present in ext csd field so that the user space application that wants to make use of this can do so. Change-Id: I53fd962fd7e04b5d2d7804c289d7865c2c5618d5 Signed-off-by: Krishna Konda <kkonda@codeaurora.org> [subhashj@codeaurora.org: fixed trivial merge conflicts] Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org> [xiaonian@codeaurora.org: fixed trivial merge conflicts] Signed-off-by: Xiaonian Wang <xiaonian@codeaurora.org> Signed-off-by: Ram Prakash Gupta <rampraka@codeaurora.org>
This commit is contained in:
parent
0ae91508e6
commit
33d0217d46
3 changed files with 9 additions and 1 deletions
|
@ -690,6 +690,9 @@ static int mmc_decode_ext_csd(struct mmc_card *card, u8 *ext_csd)
|
|||
mmc_hostname(card->host),
|
||||
card->ext_csd.cmdq_depth);
|
||||
}
|
||||
card->ext_csd.enhanced_rpmb_supported =
|
||||
(card->ext_csd.rel_param &
|
||||
EXT_CSD_WR_REL_PARAM_EN_RPMB_REL_WR);
|
||||
}
|
||||
out:
|
||||
return err;
|
||||
|
@ -832,6 +835,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);
|
||||
MMC_DEV_ATTR(ocr, "0x%08x\n", card->ocr);
|
||||
MMC_DEV_ATTR(rca, "0x%04x\n", card->rca);
|
||||
|
@ -889,6 +894,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,
|
||||
&dev_attr_ocr.attr,
|
||||
&dev_attr_rca.attr,
|
||||
|
|
|
@ -54,6 +54,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;
|
||||
|
|
|
@ -315,7 +315,8 @@ static inline bool mmc_op_multi(u32 opcode)
|
|||
* EXT_CSD field definitions
|
||||
*/
|
||||
|
||||
#define EXT_CSD_WR_REL_PARAM_EN (1<<2)
|
||||
#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…
Reference in a new issue