瀏覽代碼

cmd/bdinfo: correct output of numerical values

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>
Heinrich Schuchardt 6 年之前
父節點
當前提交
95187bb7cb
共有 1 個文件被更改,包括 2 次插入2 次删除
  1. 2 2
      cmd/bdinfo.c

+ 2 - 2
cmd/bdinfo.c

@@ -16,7 +16,7 @@ DECLARE_GLOBAL_DATA_PTR;
 __maybe_unused
 __maybe_unused
 static void print_num(const char *name, ulong value)
 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
 __maybe_unused
@@ -348,7 +348,7 @@ static int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc,
 	       CONFIG_VAL(SYS_MALLOC_F_LEN));
 	       CONFIG_VAL(SYS_MALLOC_F_LEN));
 #endif
 #endif
 	if (gd->fdt_blob)
 	if (gd->fdt_blob)
-		printf("fdt_blob = %p\n", gd->fdt_blob);
+		print_num("fdt_blob", (ulong)gd->fdt_blob);
 
 
 	return 0;
 	return 0;
 }
 }