env: Provide a work-around for unquoting fdtfile

Some boards use a CONFIG option to specify the value of this variable.
This is normally handled by efi_get_distro_fdt_name() but in the case
of sunxi this does not work, since 'soc' is sunxi, but the files are
in the allwinner directory.

Provide a work-around for this particular case.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
This commit is contained in:
Simon Glass
2024-11-13 08:09:37 -07:00
parent 0fcdf0a251
commit 6cc483bc22
2 changed files with 13 additions and 0 deletions

View File

@@ -1862,6 +1862,7 @@ quiet_cmd_gen_envp = ENVP $@
$(CPP) -P $(cpp_flags) -x assembler-with-cpp -undef \
-D__ASSEMBLY__ \
-D__UBOOT_CONFIG__ \
-DDEFAULT_DEVICE_TREE=$(subst ",,$(CONFIG_DEFAULT_DEVICE_TREE)) \
-I . -I include -I $(srctree)/include \
-include linux/kconfig.h -include include/config.h \
-I$(srctree)/arch/$(ARCH)/include \

View File

@@ -87,6 +87,18 @@ settings. For example::
#include <env/ti/mmc.env>
Quotes are not suppressed, for example::
fdtfile=CONFIG_DEFAULT_DEVICE_TREE.dtb
# produces: fdtfile="sun7i-a20-pcduino3.dtb"
For this particular issue you can use ``DEFAULT_DEVICE_TREE`` instead::
fdtfile=DEFAULT_DEVICE_TREE.dtb
# produces: fdtfile=sun7i-a20-pcduino3.dtb
There is no general way to remove quotes.
If CONFIG_ENV_SOURCE_FILE is empty and the default filename is not present, then
the old-style C environment is used instead. See below.