mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-03-21 06:31:31 +00:00
mmc: fix erase_grp_size computation with high-capacity size definition
The erase_grp_size in struct mmc is to be a size in 512-byte sectors but the code used to compute it for eMMC when EXT_CSD_ERASE_GROUP_DEF is enabled computed it as bytes, leading to erase sizes and alignment much larger than what is actually required by the mmc device. Signed-off-by: Diego Santa Cruz <Diego.SantaCruz@spinetix.com>
This commit is contained in:
parent
beb98a1496
commit
a4ff9f83f5
2 changed files with 2 additions and 3 deletions
|
@ -1068,8 +1068,7 @@ static int mmc_startup(struct mmc *mmc)
|
|||
|
||||
/* Read out group size from ext_csd */
|
||||
mmc->erase_grp_size =
|
||||
ext_csd[EXT_CSD_HC_ERASE_GRP_SIZE] *
|
||||
MMC_MAX_BLOCK_LEN * 1024;
|
||||
ext_csd[EXT_CSD_HC_ERASE_GRP_SIZE] * 1024;
|
||||
/*
|
||||
* if high capacity and partition setting completed
|
||||
* SEC_COUNT is valid even if it is smaller than 2 GiB
|
||||
|
|
|
@ -315,7 +315,7 @@ struct mmc {
|
|||
uint tran_speed;
|
||||
uint read_bl_len;
|
||||
uint write_bl_len;
|
||||
uint erase_grp_size;
|
||||
uint erase_grp_size; /* in 512-byte sectors */
|
||||
u64 capacity;
|
||||
u64 capacity_user;
|
||||
u64 capacity_boot;
|
||||
|
|
Loading…
Add table
Reference in a new issue