[U-Boot] [PATCHv2 5/5] env: Finish migration of common ENV options

Tom Rini trini at konsulko.com
Tue Nov 19 21:52:30 UTC 2019


On Tue, Nov 19, 2019 at 10:39:18PM +0100, Simon Goldschmidt wrote:
> Am 19.11.2019 um 02:02 schrieb Tom Rini:> - In ARMv8 NXP Layerscape
> platforms we also need to make use of
> >    CONFIG_SYS_RELOC_GD_ENV_ADDR now, do so.
> > - On ENV_IS_IN_REMOTE, CONFIG_ENV_OFFSET is never used, drop the define
> >    to 0.
> > - Add Kconfig entry for ENV_ADDR.
> > - Make ENV_ADDR / ENV_OFFSET depend on the env locations that use it.
> > - Add ENV_xxx_REDUND options that depend on their primary option and
> >    SYS_REDUNDAND_ENVIRONMENT
> > - On a number of PowerPC platforms, use SPL_ENV_ADDR not CONFIG_ENV_ADDR
> >    for the pre-main-U-Boot environment location.
> > - On ENV_IS_IN_SPI_FLASH, check not for CONFIG_ENV_ADDR being set but
> >    rather it being non-zero, as it will now be zero by default.
> > - Rework the env_offset absolute in env/embedded.o to not use
> >    CONFIG_ENV_OFFSET as it was the only use of ENV_OFFSET within
> >    ENV_IS_IN_FLASH.
> > - Migrate all platforms.
> >
> > Cc: Wolfgang Denk <wd at denx.de>
> > Cc: Joe Hershberger <joe.hershberger at ni.com>
> > Cc: Patrick Delaunay <patrick.delaunay at st.com>
> > Cc: uboot-stm32 at st-md-mailman.stormreply.com
> > Signed-off-by: Tom Rini <trini at konsulko.com>
> > ---
> 
> <snip>
> 
> > diff --git a/include/configs/socfpga_common.h
> b/include/configs/socfpga_common.h
> > index baa214399ff9..05bfef75c0df 100644
> > --- a/include/configs/socfpga_common.h
> > +++ b/include/configs/socfpga_common.h
> > @@ -157,21 +157,13 @@ unsigned int cm_get_qspi_controller_clk_hz(void);
> >   /*
> >    * U-Boot environment
> >    */
> > -#if !defined(CONFIG_ENV_SIZE)
> > -#define CONFIG_ENV_SIZE			(8 * 1024)
> > -#endif
> >
> >   /* Environment for SDMMC boot */
> > -#if defined(CONFIG_ENV_IS_IN_MMC) && !defined(CONFIG_ENV_OFFSET)
> > +#if defined(CONFIG_ENV_IS_IN_MMC)
> >   #define CONFIG_SYS_MMC_ENV_DEV		0 /* device 0 */
> > -#define CONFIG_ENV_OFFSET		(34 * 512) /* just after the GPT */
> >   #endif
> >
> >   /* Environment for QSPI boot */
> > -#if defined(CONFIG_ENV_IS_IN_SPI_FLASH) && !defined(CONFIG_ENV_OFFSET)
> > -#define CONFIG_ENV_OFFSET		0x00100000
> > -#define CONFIG_ENV_SECT_SIZE		(64 * 1024)
> > -#endif
> 
> Removing paragraphs like this one will break configs that haven't made it to
> a mainline defconfig. E.g. for socfpga_socrates_defconfig, you can chose for
> the ENV to be saved in SPI instead of MMC as the config supports booting
> from all sources.
> 
> How do we proceed with such things? I know that might be non-mainline, but I
> think throwing this info away is a step-back, not an improvement.
> 
> [And don't get me wrong: this doesn't affect my downstream boards, they
> don't save/load env due to secure boot reasons anyway.]

So, I would be happy to see follow up series that add default values for
locations for various SoCs.  That would address the type of problem
you're talking about, I believe.

I'd be even happier if someone looked at how Zephyr takes a dts file and
generates a header and adapt that to a way for us to have some values be
read from a dts* file and turned into a define we can use at build time
(not just the OF_PLAT data).  That would be a real nice step forward :)

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20191119/e81e30c1/attachment.sig>


More information about the U-Boot mailing list