[U-Boot] [PATCH v2 2/2] cmd: fdt: Print error message when fdt application fails
Stefan Agner
stefan at agner.ch
Tue Dec 20 15:58:45 CET 2016
From: Stefan Agner <stefan.agner at toradex.com>
There are lots of reason why a FDT application might fail, the
error code might give an indication. Let the error code translate
in a error string so users can try to understand what went wrong.
Signed-off-by: Stefan Agner <stefan.agner at toradex.com>
Acked-by: Maxime Ripard <maxime.ripard at free-electrons.com>
Acked-by: Simon Glass <sjg at chromium.org>
---
Currently I get this when I apply a device tree overlay to a device
tree without symbols:
Colibri iMX7 # fdt apply ${loadaddr}
Colibri iMX7 # fdt print
libfdt fdt_path_offset() returned FDT_ERR_BADMAGIC
Colibri iMX7 #
With this change, the situation is a bit more indicative:
Colibri iMX7 # fdt apply ${loadaddr}
fdt_overlay_apply(): FDT_ERR_NOTFOUND
Colibri iMX7 # fdt print
libfdt fdt_path_offset() returned FDT_ERR_BADMAGIC
Colibri iMX7 #
Changes in v2: None
cmd/fdt.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/cmd/fdt.c b/cmd/fdt.c
index 8bd345a..6883e75 100644
--- a/cmd/fdt.c
+++ b/cmd/fdt.c
@@ -642,6 +642,7 @@ static int do_fdt(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
else if (strncmp(argv[1], "ap", 2) == 0) {
unsigned long addr;
struct fdt_header *blob;
+ int ret;
if (argc != 3)
return CMD_RET_USAGE;
@@ -654,8 +655,11 @@ static int do_fdt(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
if (!fdt_valid(&blob))
return CMD_RET_FAILURE;
- if (fdt_overlay_apply(working_fdt, blob))
+ ret = fdt_overlay_apply(working_fdt, blob);
+ if (ret) {
+ printf("fdt_overlay_apply(): %s\n", fdt_strerror(ret));
return CMD_RET_FAILURE;
+ }
}
#endif
/* resize the fdt */
--
2.10.2
More information about the U-Boot
mailing list