소스 검색

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 <[email protected]>
Daniel Golle 1 년 전
부모
커밋
89fcf211cb
1개의 변경된 파일13개의 추가작업 그리고 0개의 파일을 삭제
  1. 13 0
      package/boot/uboot-mediatek/patches/250-fix-mmc-erase-timeout.patch

+ 13 - 0
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;