On 8/18/21 4:46 AM, stcar...@linux.microsoft.com wrote:
> From: Stephen Carlson <stcar...@linux.microsoft.com>
> 
> Adds an implementation of the wait_dat0 MMC operation for the Freescale
> eSHDC driver, allowing the driver to continue when the card is ready
> rather than waiting for the worst case time on each MMC switch operation.
> 
> Signed-off-by: Stephen Carlson <stcar...@linux.microsoft.com>
> ---
>  drivers/mmc/fsl_esdhc.c | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
> 
> diff --git a/drivers/mmc/fsl_esdhc.c b/drivers/mmc/fsl_esdhc.c
> index 1d98fa65c4..f74289a677 100644
> --- a/drivers/mmc/fsl_esdhc.c
> +++ b/drivers/mmc/fsl_esdhc.c
> @@ -27,6 +27,7 @@
>  #include <dm/device_compat.h>
>  #include <linux/bitops.h>
>  #include <linux/delay.h>
> +#include <linux/iopoll.h>
>  #include <linux/dma-mapping.h>
>  #include <sdhci.h>
>  
> @@ -1145,6 +1146,20 @@ int fsl_esdhc_hs400_prepare_ddr(struct udevice *dev)
>       return 0;
>  }
>  
> +static int fsl_esdhc_wait_dat0(struct udevice *dev, int state,
> +                            int timeout_us)
> +{
> +     int ret;

nitpick, doesn't need to use the ret variable.

> +     u32 tmp;
> +     struct fsl_esdhc_priv *priv = dev_get_priv(dev);
> +     struct fsl_esdhc *regs = priv->esdhc_regs;
> +
> +     ret = readx_poll_timeout(esdhc_read32, &regs->prsstat, tmp,
> +                              !!(tmp & PRSSTAT_DAT0) == !!state,
> +                              timeout_us);
> +     return ret;

return readx_poll_timeout(); ?

Other things look good to me.

Reviewed-by: Jaehoon Chung <jh80.ch...@samsung.com>

Best Regards,
Jaehoon Chung

> +}
> +
>  static const struct dm_mmc_ops fsl_esdhc_ops = {
>       .get_cd         = fsl_esdhc_get_cd,
>       .send_cmd       = fsl_esdhc_send_cmd,
> @@ -1154,6 +1169,7 @@ static const struct dm_mmc_ops fsl_esdhc_ops = {
>  #endif
>       .reinit = fsl_esdhc_reinit,
>       .hs400_prepare_ddr = fsl_esdhc_hs400_prepare_ddr,
> +     .wait_dat0 = fsl_esdhc_wait_dat0,
>  };
>  
>  static const struct udevice_id fsl_esdhc_ids[] = {
> 

Reply via email to