[PATCH] drivers: mmc: Reset watchdog when accessing mmc device

Jaehoon Chung jh80.chung at samsung.com
Tue Jul 26 10:31:34 CEST 2022


On 7/13/22 16:32, qianfanguijin at 163.com wrote:
> From: qianfan Zhao <qianfanguijin at 163.com>
> 
> watchdog will reset when 'mmc read' or 'ext4load' a large file from mmc
> device. Reset watchdog when accessing mmc device.

I don't know why this patch is need.

Best Regards,
Jaehoon Chung

> 
> Signed-off-by: qianfan Zhao <qianfanguijin at 163.com>
> ---
>  drivers/mmc/mmc.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c
> index 4d9871d69f..27ffdb7fa7 100644
> --- a/drivers/mmc/mmc.c
> +++ b/drivers/mmc/mmc.c
> @@ -24,6 +24,7 @@
>  #include <memalign.h>
>  #include <linux/list.h>
>  #include <div64.h>
> +#include <watchdog.h>
>  #include "mmc_private.h"
>  
>  #define DEFAULT_CMD6_TIMEOUT_MS  500
> @@ -297,6 +298,7 @@ int mmc_poll_for_busy(struct mmc *mmc, int timeout_ms)
>  		if (timeout_ms-- <= 0)
>  			break;
>  
> +		WATCHDOG_RESET();
>  		udelay(1000);
>  	}
>  
> @@ -500,6 +502,8 @@ ulong mmc_bread(struct blk_desc *block_dev, lbaint_t start, lbaint_t blkcnt,
>  		blocks_todo -= cur;
>  		start += cur;
>  		dst += cur * mmc->read_bl_len;
> +
> +		WATCHDOG_RESET();
>  	} while (blocks_todo > 0);
>  
>  	return blkcnt;



More information about the U-Boot mailing list