On Wed, 3 Nov 2021 at 17:23, Marek Behún <ka...@kernel.org> wrote: > > From: Marek Behún <marek.be...@nic.cz> > > The default_environment[] buffer is built at compile time, but sometimes > it makes sense for some default environment variables to be determined > at runtime, for example: > - one board code may support different boards, and needs that > fdtfile, board, board_name > are set appropriately when command > env default -a > is executed > - some boards may want to prohibit the > env default -a > command to remove device MAC addresses stored in > ethaddr, ethNaddr. > This is the case for the ESPRESSObin board code, for example, where > currently the board_late_init() function rewrites the default > environment array to achieve this. > > Add new sysinfo IDs > SYSINFO_ID_DEF_ENV_NAMES > SYSINFO_ID_DEF_ENV_VALUES > corresponding to sysinfo string list of names and values of default > environment variables that are to take precedence over the > default_environment[] buffer. > > Add code to default environemnt handlers in env/common.c, which iterate > these sysinfo string lists correspondingly. > > Signed-off-by: Marek Behún <marek.be...@nic.cz> > --- > env/common.c | 107 +++++++++++++++++++++++++++++++++++++++++++++- > include/sysinfo.h | 4 ++ > 2 files changed, 110 insertions(+), 1 deletion(-) >
Seems OK to me, but see my earlier request to simplify the API and reduce flexibility. Regards, Simon