cmd/bdinfo: correct output of numerical values
authorHeinrich Schuchardt <xypron.glpk@gmx.de>
Thu, 11 Oct 2018 11:15:01 +0000 (13:15 +0200)
committerTom Rini <trini@konsulko.com>
Fri, 16 Nov 2018 18:34:34 +0000 (13:34 -0500)
Display all digits on 64bit systems. Currently we print only the lower
32 bits. Examples of values that can exceed 32 bits are the size and start of
memory banks.

For fdt_blob use the same output method as for other values. This avoids
misalignment.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
cmd/bdinfo.c

index 60b438766d31b1659fe94e43b74dc3874f03697a..cbeba6ba28f771e3ce9ddf3d13efea6d9298350c 100644 (file)
@@ -16,7 +16,7 @@ DECLARE_GLOBAL_DATA_PTR;
 __maybe_unused
 static void print_num(const char *name, ulong value)
 {
-       printf("%-12s= 0x%08lX\n", name, value);
+       printf("%-12s= 0x%0*lx\n", name, 2 * (int)sizeof(value), value);
 }
 
 __maybe_unused
@@ -348,7 +348,7 @@ static int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc,
               CONFIG_VAL(SYS_MALLOC_F_LEN));
 #endif
        if (gd->fdt_blob)
-               printf("fdt_blob = %p\n", gd->fdt_blob);
+               print_num("fdt_blob", (ulong)gd->fdt_blob);
 
        return 0;
 }