[v2, 05/11] mmc: add a hs400_tuning flag

Y.b. Lu yangbo.lu at nxp.com
Mon Jul 20 09:30:54 CEST 2020


Hi Peng,

> -----Original Message-----
> From: Peng Fan <peng.fan at nxp.com>
> Sent: Monday, July 20, 2020 9:37 AM
> To: Y.b. Lu <yangbo.lu at nxp.com>; u-boot at lists.denx.de; Priyanka Jain
> <priyanka.jain at nxp.com>; 'Jaehoon Chung' <jh80.chung at samsung.com>
> Cc: Y.b. Lu <yangbo.lu at nxp.com>
> Subject: RE: [v2, 05/11] mmc: add a hs400_tuning flag
> 
> > Subject: [v2, 05/11] mmc: add a hs400_tuning flag
> >
> > Add a hs400_tuning flag to identify the tuning for HS400 mode.
> 
> Why? Please explain a bit more.

Some specific controllers may have difference between HS400 tuning and HS200 tuning.
For eSDHC, as you saw in my patch #7, and there are also some eSDHC errata related to HS400 tuning which I will upstream patches in the future.
In kernel drivers/mmc/host/sdhci.c, there is a flag SDHCI_HS400_TUNING used by sdhci-msm.c and sdhci-of-esdhc.c for specific handling.
I will explain more in commit message.

> 
> Thanks,
> Peng.
> 
> >
> > Signed-off-by: Yangbo Lu <yangbo.lu at nxp.com>
> > ---
> > Changes for v2:
> > 	- None.
> > ---
> >  drivers/mmc/mmc.c | 2 ++
> >  include/mmc.h     | 1 +
> >  2 files changed, 3 insertions(+)
> >
> > diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c index
> > a53f93a..a18e75d 100644
> > --- a/drivers/mmc/mmc.c
> > +++ b/drivers/mmc/mmc.c
> > @@ -1976,7 +1976,9 @@ static int mmc_select_hs400(struct mmc *mmc)
> >  	mmc_set_clock(mmc, mmc->tran_speed, false);
> >
> >  	/* execute tuning if needed */
> > +	mmc->hs400_tuning = 1;
> >  	err = mmc_execute_tuning(mmc,
> > MMC_CMD_SEND_TUNING_BLOCK_HS200);
> > +	mmc->hs400_tuning = 0;
> >  	if (err) {
> >  		debug("tuning failed\n");
> >  		return err;
> > diff --git a/include/mmc.h b/include/mmc.h index 161b8bc..2399cc2 100644
> > --- a/include/mmc.h
> > +++ b/include/mmc.h
> > @@ -707,6 +707,7 @@ struct mmc {
> >  				  * accessing the boot partitions
> >  				  */
> >  	u32 quirks;
> > +	u8 hs400_tuning;
> >  };
> >
> >  struct mmc_hwpart_conf {
> > --
> > 2.7.4



More information about the U-Boot mailing list