openwrt/package/boot/uboot-mediatek/patches/250-fix-mmc-erase-timeout.patch
Daniel Golle 89fcf211cb uboot-mediatek: fix MMC erase timeout
When erasing large amounts of blocks at once this can take a long
time on slow cards. Instead of a fixed timeout, wait longer if more
blocks are being erased.

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2024-02-15 19:06:37 +00:00

14 lines
459 B
Diff

diff --git a/drivers/mmc/mmc_write.c b/drivers/mmc/mmc_write.c
index a6f93380dd0..5c573fe5c4c 100644
--- a/drivers/mmc/mmc_write.c
+++ b/drivers/mmc/mmc_write.c
@@ -80,7 +80,7 @@ ulong mmc_berase(struct blk_desc *block_dev, lbaint_t start, lbaint_t blkcnt)
u32 start_rem, blkcnt_rem, erase_args = 0;
struct mmc *mmc = find_mmc_device(dev_num);
lbaint_t blk = 0, blk_r = 0;
- int timeout_ms = 1000;
+ int timeout_ms = blkcnt;
if (!mmc)
return -1;