aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--common/cmd_mmc.c12
-rw-r--r--drivers/mmc/mmc.c2
-rw-r--r--include/mmc.h1
3 files changed, 13 insertions, 2 deletions
diff --git a/common/cmd_mmc.c b/common/cmd_mmc.c
index 632ddae7a2f..4e28c9d7a4d 100644
--- a/common/cmd_mmc.c
+++ b/common/cmd_mmc.c
@@ -106,7 +106,11 @@ static void print_mmcinfo(struct mmc *mmc)
print_size(((u64)mmc->hc_wp_grp_size) << 9, "\n");
puts("User Capacity: ");
- print_size(mmc->capacity_user, usr_enh ? " ENH\n" : "\n");
+ print_size(mmc->capacity_user, usr_enh ? " ENH" : "");
+ if (mmc->wr_rel_set & EXT_CSD_WR_DATA_REL_USR)
+ puts(" WRREL\n");
+ else
+ putc('\n');
if (usr_enh) {
puts("User Enhanced Start: ");
print_size(mmc->enh_user_start, "\n");
@@ -124,7 +128,11 @@ static void print_mmcinfo(struct mmc *mmc)
if (mmc->capacity_gp[i]) {
printf("GP%i Capacity: ", i+1);
print_size(mmc->capacity_gp[i],
- is_enh ? " ENH\n" : "\n");
+ is_enh ? " ENH" : "");
+ if (mmc->wr_rel_set & EXT_CSD_WR_DATA_REL_GP(i))
+ puts(" WRREL\n");
+ else
+ putc('\n');
}
}
}
diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c
index 6fa5435000e..19ac4c482fa 100644
--- a/drivers/mmc/mmc.c
+++ b/drivers/mmc/mmc.c
@@ -1306,6 +1306,8 @@ static int mmc_startup(struct mmc *mmc)
mmc->hc_wp_grp_size = 1024
* ext_csd[EXT_CSD_HC_ERASE_GRP_SIZE]
* ext_csd[EXT_CSD_HC_WP_GRP_SIZE];
+
+ mmc->wr_rel_set = ext_csd[EXT_CSD_WR_REL_SET];
}
err = mmc_set_capacity(mmc, mmc->part_num);
diff --git a/include/mmc.h b/include/mmc.h
index 8d41234e207..09101e2c87a 100644
--- a/include/mmc.h
+++ b/include/mmc.h
@@ -318,6 +318,7 @@ struct mmc {
ushort rca;
u8 part_support;
u8 part_attr;
+ u8 wr_rel_set;
char part_config;
char part_num;
uint tran_speed;