spl: fit: be more verbose when an error occurs when applying the overlays
authorJean-Jacques Hiblot <jjhiblot@ti.com>
Tue, 22 Oct 2019 14:39:15 +0000 (16:39 +0200)
committerTom Rini <trini@konsulko.com>
Tue, 7 Jan 2020 16:12:47 +0000 (11:12 -0500)
There are many ways the overlay application can fail.
2 of them are probably the most common:
- the application itself failed. Usually this is comes from an unresolved
  reference
- DTBO not available in FIT (could be because of a typo)

In both case it is good to be more explicit about the error and at least
show which overlay is failing.

Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
common/spl/spl_fit.c

index 0245dcadb416e43bd2f5863adf318174f6fd3fd5..5aeb9528fe4534932a379d7b46139dcad8e71a3b 100644 (file)
@@ -113,7 +113,7 @@ static int spl_fit_get_image_node(const void *fit, int images,
 
        node = fdt_subnode_offset(fit, images, str);
        if (node < 0) {
-               debug("cannot find image node '%s': %d\n", str, node);
+               pr_err("cannot find image node '%s': %d\n", str, node);
                return -EINVAL;
        }
 
@@ -359,8 +359,11 @@ static int spl_fit_append_fdt(struct spl_image_info *spl_image,
 
                        ret = fdt_overlay_apply_verbose(spl_image->fdt_addr,
                                                        (void *)image_info.load_addr);
-                       if (ret)
+                       if (ret) {
+                               pr_err("failed to apply DT overlay %s\n",
+                                      fit_get_name(fit, node, NULL));
                                break;
+                       }
 
                        debug("%s: DT overlay %s applied\n", __func__,
                              fit_get_name(fit, node, NULL));