On Tue, 2017-04-04 at 12:31 +0200, Wolfgang Denk wrote: > Dear Joakim, > > In message <1491301459.28343.1.ca...@infinera.com> you wrote: > > > > Use case is when CONFIG_ENV_SECT_SIZE and/or CONFIG_ENV_ADDR are non > > constants. > > That is my exact question - when would this happen? Flash sectors > do now wander around in memory or change size :-)
No, but they happens when you are forced to update you HW with new type of flashes with different layout so you have to move where the environment is stored. Sure, this can be fixed by having two different u-boot images but that will in our case be just painful to carry around an extra u-boot img, then in field devise a method to chose the right img. for what looks like the same HW but the flash. What I have done is not that earth shattering, basically just move from: static env_t *flash_addr = (env_t *)CONFIG_ENV_ADDR; to int env_init(void) { ... env_t *flash_addr = (env_t *)CONFIG_ENV_ADDR; This allows CONFIG_ENV_ADDR to be a function but it does not have to, you also lose a relocation entry as a static variable is removed. Jocke _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot