RE: [PATCH] imx8mm_beacon: Enable HS400 on MMC controller

2020-12-05 Thread ZHIZHIKIN Andrey
> -Original Message-
> From: Adam Ford 
> Sent: Saturday, December 5, 2020 4:01 PM
> To: ZHIZHIKIN Andrey 
> Cc: u-boot@lists.denx.de; af...@beaconembedded.com
> Subject: Re: [PATCH] imx8mm_beacon: Enable HS400 on MMC controller
> 
> On Sat, Dec 5, 2020 at 8:54 AM ZHIZHIKIN Andrey  geosystems.com> wrote:
> >
> > Hello Adam,
> >
> > > -Original Message-
> > > From: U-Boot  On Behalf Of Adam Ford
> > > Sent: Saturday, December 5, 2020 2:00 AM
> > > To: u-boot@lists.denx.de
> > > Cc: af...@beaconembedded.com; Adam Ford 
> > > Subject: [PATCH] imx8mm_beacon: Enable HS400 on MMC controller
> > >
> > >
> > > The i.MX8MM is capable of HS400.  Enable it in both U-Boot and SPL
> > > for faster throughput.
> >
> > I'm not quite sure if those high-speed modes would be required to be
> > enabled for SPL...
> There are separate SPL flags, so we could leave them off.
> 
> >
> > Even though the support for those modes is provided in SPL build,
> > there might be a little benefit of having it enabled as the only thing
> > SPL would need to fetch from storage medias would be U-Boot itself,
> > and the difference in access time between high speed modes enabled or
> > disabled for this task is quite negligible. The downside there would rather 
> > be an
> increase in SPL size to accommodate enabled code paths.
> >
> > I was contemplating myself to have those included, but decided to
> > op-out from it as I could not justify the benefit of it.
> >
> > Do you see any particular use-case where it would be beneficial to
> > enable those modes in SPL? If so - can you please share them, as if it
> > would turn out to be beneficial - I might also turn them on in EVK configs.
> 
> I turned them on because I could and it fit into SPL.  In theory the impy 
> could be
> deactivated for people who don't have the room.  I didn't do any time
> measurements so I don't know of the higher speed made it load u-boot any
> faster since it takes a little more time to do the extra initialization, I 
> can see the
> argument to leave them off.

OK, got it! Since you've introduced it for a specific derivative and you know 
that
from the size perspective it fits - then I believe it is OK to have them 
enabled. 

> 
> Maybe it's best to default the configs to leave them off in SPL, and let 
> people
> decide on what's best for their boards.  For the Beacon board, I'll probably 
> leave it
> on, but if SPL size constraints become an issue, I might turn them off later.

For EVK configs I would leave SPL configs OFF.

> 
> adam
> >
> > >
> > > Signed-off-by: Adam Ford 
> > >
> > > diff --git a/configs/imx8mm_beacon_defconfig
> > > b/configs/imx8mm_beacon_defconfig index c5d331f617..49d5453078
> > > 100644
> > > --- a/configs/imx8mm_beacon_defconfig
> > > +++ b/configs/imx8mm_beacon_defconfig
> > > @@ -70,6 +70,13 @@ CONFIG_DM_I2C=y
> > >  CONFIG_SYS_I2C_MXC=y
> > >  CONFIG_DM_MMC=y
> > >  CONFIG_SUPPORT_EMMC_BOOT=y
> > > +CONFIG_MMC_IO_VOLTAGE=y
> > > +CONFIG_SPL_MMC_IO_VOLTAGE=y
> > > +CONFIG_MMC_UHS_SUPPORT=y
> > > +CONFIG_SPL_MMC_UHS_SUPPORT=y
> > > +CONFIG_MMC_HS400_ES_SUPPORT=y
> > > +CONFIG_MMC_HS400_SUPPORT=y
> > > +CONFIG_SPL_MMC_HS400_SUPPORT=y
> > >  CONFIG_FSL_USDHC=y
> > >  CONFIG_PHYLIB=y
> > >  CONFIG_PHY_ATHEROS=y
> > > --
> > > 2.25.1
> >
> > -- andrey

-- andrey


Re: [PATCH] imx8mm_beacon: Enable HS400 on MMC controller

2020-12-05 Thread Adam Ford
On Sat, Dec 5, 2020 at 8:54 AM ZHIZHIKIN Andrey
 wrote:
>
> Hello Adam,
>
> > -Original Message-
> > From: U-Boot  On Behalf Of Adam Ford
> > Sent: Saturday, December 5, 2020 2:00 AM
> > To: u-boot@lists.denx.de
> > Cc: af...@beaconembedded.com; Adam Ford 
> > Subject: [PATCH] imx8mm_beacon: Enable HS400 on MMC controller
> >
> >
> > The i.MX8MM is capable of HS400.  Enable it in both U-Boot and SPL for 
> > faster
> > throughput.
>
> I'm not quite sure if those high-speed modes would be required to be enabled 
> for
> SPL...
There are separate SPL flags, so we could leave them off.

>
> Even though the support for those modes is provided in SPL build, there might 
> be
> a little benefit of having it enabled as the only thing SPL would need to 
> fetch from
> storage medias would be U-Boot itself, and the difference in access time 
> between
> high speed modes enabled or disabled for this task is quite negligible. The 
> downside
> there would rather be an increase in SPL size to accommodate enabled code 
> paths.
>
> I was contemplating myself to have those included, but decided to op-out from 
> it
> as I could not justify the benefit of it.
>
> Do you see any particular use-case where it would be beneficial to enable 
> those modes
> in SPL? If so - can you please share them, as if it would turn out to be 
> beneficial - I might
> also turn them on in EVK configs.

I turned them on because I could and it fit into SPL.  In theory the
impy could be deactivated for people who don't have the room.  I
didn't do any time measurements so I don't know of the higher speed
made it load u-boot any faster since it takes a little more time to do
the extra initialization, I can see the argument to leave them off.

Maybe it's best to default the configs to leave them off in SPL, and
let people decide on what's best for their boards.  For the Beacon
board, I'll probably leave it on, but if SPL size constraints become
an issue, I might turn them off later.

adam
>
> >
> > Signed-off-by: Adam Ford 
> >
> > diff --git a/configs/imx8mm_beacon_defconfig
> > b/configs/imx8mm_beacon_defconfig index c5d331f617..49d5453078 100644
> > --- a/configs/imx8mm_beacon_defconfig
> > +++ b/configs/imx8mm_beacon_defconfig
> > @@ -70,6 +70,13 @@ CONFIG_DM_I2C=y
> >  CONFIG_SYS_I2C_MXC=y
> >  CONFIG_DM_MMC=y
> >  CONFIG_SUPPORT_EMMC_BOOT=y
> > +CONFIG_MMC_IO_VOLTAGE=y
> > +CONFIG_SPL_MMC_IO_VOLTAGE=y
> > +CONFIG_MMC_UHS_SUPPORT=y
> > +CONFIG_SPL_MMC_UHS_SUPPORT=y
> > +CONFIG_MMC_HS400_ES_SUPPORT=y
> > +CONFIG_MMC_HS400_SUPPORT=y
> > +CONFIG_SPL_MMC_HS400_SUPPORT=y
> >  CONFIG_FSL_USDHC=y
> >  CONFIG_PHYLIB=y
> >  CONFIG_PHY_ATHEROS=y
> > --
> > 2.25.1
>
> -- andrey


RE: [PATCH] imx8mm_beacon: Enable HS400 on MMC controller

2020-12-05 Thread ZHIZHIKIN Andrey
Hello Adam,

> -Original Message-
> From: U-Boot  On Behalf Of Adam Ford
> Sent: Saturday, December 5, 2020 2:00 AM
> To: u-boot@lists.denx.de
> Cc: af...@beaconembedded.com; Adam Ford 
> Subject: [PATCH] imx8mm_beacon: Enable HS400 on MMC controller
> 
> 
> The i.MX8MM is capable of HS400.  Enable it in both U-Boot and SPL for faster
> throughput.

I'm not quite sure if those high-speed modes would be required to be enabled for
SPL...

Even though the support for those modes is provided in SPL build, there might be
a little benefit of having it enabled as the only thing SPL would need to fetch 
from 
storage medias would be U-Boot itself, and the difference in access time between
high speed modes enabled or disabled for this task is quite negligible. The 
downside
there would rather be an increase in SPL size to accommodate enabled code paths.

I was contemplating myself to have those included, but decided to op-out from it
as I could not justify the benefit of it.

Do you see any particular use-case where it would be beneficial to enable those 
modes
in SPL? If so - can you please share them, as if it would turn out to be 
beneficial - I might
also turn them on in EVK configs.

> 
> Signed-off-by: Adam Ford 
> 
> diff --git a/configs/imx8mm_beacon_defconfig
> b/configs/imx8mm_beacon_defconfig index c5d331f617..49d5453078 100644
> --- a/configs/imx8mm_beacon_defconfig
> +++ b/configs/imx8mm_beacon_defconfig
> @@ -70,6 +70,13 @@ CONFIG_DM_I2C=y
>  CONFIG_SYS_I2C_MXC=y
>  CONFIG_DM_MMC=y
>  CONFIG_SUPPORT_EMMC_BOOT=y
> +CONFIG_MMC_IO_VOLTAGE=y
> +CONFIG_SPL_MMC_IO_VOLTAGE=y
> +CONFIG_MMC_UHS_SUPPORT=y
> +CONFIG_SPL_MMC_UHS_SUPPORT=y
> +CONFIG_MMC_HS400_ES_SUPPORT=y
> +CONFIG_MMC_HS400_SUPPORT=y
> +CONFIG_SPL_MMC_HS400_SUPPORT=y
>  CONFIG_FSL_USDHC=y
>  CONFIG_PHYLIB=y
>  CONFIG_PHY_ATHEROS=y
> --
> 2.25.1

-- andrey