[PATCH] mmc: meson-gx: increase power-up delay

Heiner Kallweit hkallweit1 at gmail.com
Tue Mar 14 12:45:34 PDT 2023


On 14.03.2023 18:24, Marc Gonzalez wrote:
> With the default power-up delay, on small kernels, the host probes
> too soon, and mmc_send_io_op_cond() times out.
> 
Looking at mmc_power_up() and how power_delay_ms is used
I wonder what you mean with "host probes too soon".
Are you sure that the additional delay is needed for the Amlogic MMC
block IP in general? Or could it be that your issue is caused by
a specific regulator and you need to add a delay there?

> Signed-off-by: Marc Gonzalez <marc.w.gonzalez at free.fr>
> ---
> Stress-tested with 80 cold boots, checking every time
> mmc2: new ultra high speed SDR50 SDIO card at address 0001
> IIUC, this will also slow down SD & MMC probing,
> but an additional 20 ms seems acceptable?
> ---
>  drivers/mmc/host/meson-gx-mmc.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/mmc/host/meson-gx-mmc.c b/drivers/mmc/host/meson-gx-mmc.c
> index 6e5ea0213b477..73ecbcf588c65 100644
> --- a/drivers/mmc/host/meson-gx-mmc.c
> +++ b/drivers/mmc/host/meson-gx-mmc.c
> @@ -1182,6 +1182,7 @@ static int meson_mmc_probe(struct platform_device *pdev)
>  	mmc = mmc_alloc_host(sizeof(struct meson_host), &pdev->dev);
>  	if (!mmc)
>  		return -ENOMEM;
> +	mmc->ios.power_delay_ms = 20;
>  	host = mmc_priv(mmc);
>  	host->mmc = mmc;
>  	host->dev = &pdev->dev;




More information about the linux-amlogic mailing list