[U-Boot] [PATCH v2] image: fix compiling without CMD_FDT

Simon Goldschmidt simon.k.r.goldschmidt at gmail.com
Mon Dec 17 19:11:16 UTC 2018


From: Simon Goldschmidt <sgoldschmidt at de.pepperl-fuchs.com>

Booting an image currently sets the environment variable "fdtaddr"
by calling into 'cmd/fdt.c'. As a result, linking U-Boot fails if
CMD_FDT is not enabled.

Fix this by adding 'if (CONFIG_IS_ENABLED(CMD_FDT))' to the two
places where 'set_working_fdt_addr()' is called.

Signed-off-by: Simon Goldschmidt <simon.k.r.goldschmidt at gmail.com>
---

Changes in v2:
- fixed whitespace (v1 had spaces instead of tabs)

 common/bootm.c     | 3 ++-
 common/image-fdt.c | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/common/bootm.c b/common/bootm.c
index 8bf84ebcb7..80f304ce9f 100644
--- a/common/bootm.c
+++ b/common/bootm.c
@@ -262,7 +262,8 @@ int bootm_find_images(int flag, int argc, char * const argv[])
 		puts("Could not find a valid device tree\n");
 		return 1;
 	}
-	set_working_fdt_addr(map_to_sysmem(images.ft_addr));
+	if (CONFIG_IS_ENABLED(CMD_FDT))
+		set_working_fdt_addr(map_to_sysmem(images.ft_addr));
 #endif
 
 #if IMAGE_ENABLE_FIT
diff --git a/common/image-fdt.c b/common/image-fdt.c
index 95748f0ae1..8ee5a13352 100644
--- a/common/image-fdt.c
+++ b/common/image-fdt.c
@@ -193,7 +193,8 @@ int boot_relocate_fdt(struct lmb *lmb, char **of_flat_tree, ulong *of_size)
 	*of_flat_tree = of_start;
 	*of_size = of_len;
 
-	set_working_fdt_addr(map_to_sysmem(*of_flat_tree));
+	if (CONFIG_IS_ENABLED(CMD_FDT))
+		set_working_fdt_addr(map_to_sysmem(*of_flat_tree));
 	return 0;
 
 error:
-- 
2.17.1



More information about the U-Boot mailing list