
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@denx.de Cc: Joe Hershberger joe.hershberger@ni.com Cc: Patrick Delaunay patrick.delaunay@st.com Cc: uboot-stm32@st-md-mailman.stormreply.com Signed-off-by: Tom Rini trini@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 :)