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

From: Simon Goldschmidt sgoldschmidt@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@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:

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@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:

On Mon, Dec 17, 2018 at 08:14:42PM +0100, Simon Goldschmidt wrote:
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@gmail.com
Applied to u-boot/master, thanks!

On Mon, 17 Dec 2018 at 12:11, Simon Goldschmidt simon.k.r.goldschmidt@gmail.com wrote:
From: Simon Goldschmidt sgoldschmidt@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@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(-)
Reviewed-by: Simon Glass sjg@chromium.org
participants (3)
-
Simon Glass
-
Simon Goldschmidt
-
Tom Rini