From: Daniel Golle Date: Tue, 5 Dec 2023 04:08:13 +0000 (+0000) Subject: uboot-mediatek: fix MMC erase timeout X-Git-Url: http://git.openwrt.org/source?a=commitdiff_plain;h=89fcf211cb64619911533622f6380dafb268225f;p=openwrt%2Fstaging%2Fwigyori.git 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 --- diff --git a/package/boot/uboot-mediatek/patches/250-fix-mmc-erase-timeout.patch b/package/boot/uboot-mediatek/patches/250-fix-mmc-erase-timeout.patch new file mode 100644 index 0000000000..ec9fa6f3a0 --- /dev/null +++ b/package/boot/uboot-mediatek/patches/250-fix-mmc-erase-timeout.patch @@ -0,0 +1,13 @@ +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;