]> git.karo-electronics.de Git - karo-tx-uboot.git/blobdiff - common/image-fit.c
mkimage will now report information about loadable
[karo-tx-uboot.git] / common / image-fit.c
index b47d11024f2beb007d049bc0cb54a43268d8bde1..fc9ea1f1b243bb4234d48b7b3e678616af28f67f 100644 (file)
@@ -16,6 +16,7 @@
 #else
 #include <common.h>
 #include <errno.h>
+#include <mapmem.h>
 #include <asm/io.h>
 DECLARE_GLOBAL_DATA_PTR;
 #endif /* !USE_HOSTCC*/
@@ -1010,9 +1011,7 @@ int fit_image_verify(const void *fit, int image_noffset)
        }
 
        /* Process all hash subnodes of the component image node */
-       for (noffset = fdt_first_subnode(fit, image_noffset);
-            noffset >= 0;
-            noffset = fdt_next_subnode(fit, noffset)) {
+       fdt_for_each_subnode(fit, noffset, image_noffset) {
                const char *name = fit_get_name(fit, noffset, NULL);
 
                /*
@@ -1437,6 +1436,7 @@ void fit_conf_print(const void *fit, int noffset, const char *p)
        char *desc;
        char *uname;
        int ret;
+       int loadables_index;
 
        /* Mandatory properties */
        ret = fit_get_desc(fit, noffset, &desc);
@@ -1461,6 +1461,22 @@ void fit_conf_print(const void *fit, int noffset, const char *p)
        uname = (char *)fdt_getprop(fit, noffset, FIT_FDT_PROP, NULL);
        if (uname)
                printf("%s  FDT:          %s\n", p, uname);
+
+       /* Print out all of the specified loadables */
+       for (loadables_index = 0;
+            !fdt_get_string_index(fit, noffset,
+                       FIT_LOADABLE_PROP,
+                       loadables_index,
+                       (const char **)&uname) > 0;
+            loadables_index++)
+       {
+               if (loadables_index == 0) {
+                       printf("%s  Loadables:    ", p);
+               } else {
+                       printf("%s                ", p);
+               }
+               printf("%s\n", uname);
+       }
 }
 
 static int fit_image_select(const void *fit, int rd_noffset, int verify)