Merge tag 'arc-fixes-for-2020.07-rc3' of https://gitlab.denx.de/u-boot/custodians...
[oweals/u-boot.git] / cmd / bdinfo.c
index de6fc48987793b4ffe6a93541f36095d861e99bc..9edcf8d74ebb583b9a3ba7c8bf74c443bb550fa0 100644 (file)
@@ -1,8 +1,7 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
  * (C) Copyright 2003
  * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
- *
- * SPDX-License-Identifier:    GPL-2.0+
  */
 
 /*
  */
 #include <common.h>
 #include <command.h>
+#include <env.h>
+#include <vsprintf.h>
 #include <linux/compiler.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
+__maybe_unused void print_cpu_word_size(void)
+{
+       printf("%-12s= %u-bit\n", "Build", (uint)sizeof(void *) * 8);
+}
+
 __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
@@ -180,7 +186,7 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
        print_bi_flash(bd);
        print_num("sramstart",          bd->bi_sramstart);
        print_num("sramsize",           bd->bi_sramsize);
-#if    defined(CONFIG_8xx) || defined(CONFIG_E500)
+#if    defined(CONFIG_MPC8xx) || defined(CONFIG_E500)
        print_num("immr_base",          bd->bi_immr_base);
 #endif
        print_num("bootflags",          bd->bi_bootflags);
@@ -207,6 +213,8 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
        print_baudrate();
        print_num("relocaddr", gd->relocaddr);
        board_detail();
+       print_cpu_word_size();
+
        return 0;
 }
 
@@ -226,6 +234,7 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 
        print_eth_ip_addr();
        print_baudrate();
+       print_cpu_word_size();
 
        return 0;
 }
@@ -251,6 +260,7 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
        print_num("fdt_blob", (ulong)gd->fdt_blob);
        print_num("new_fdt", (ulong)gd->new_fdt);
        print_num("fdt_size", (ulong)gd->fdt_size);
+       print_cpu_word_size();
 
        return 0;
 }
@@ -282,6 +292,7 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 #endif
        print_eth_ip_addr();
        print_baudrate();
+       print_cpu_word_size();
 
        return 0;
 }
@@ -293,6 +304,7 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
        print_std_bdinfo(gd->bd);
        print_num("relocaddr", gd->relocaddr);
        print_num("reloc off", gd->reloc_off);
+       print_cpu_word_size();
 
        return 0;
 }
@@ -322,14 +334,14 @@ static int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc,
        print_eths();
 #endif
        print_baudrate();
-#if !(defined(CONFIG_SYS_ICACHE_OFF) && defined(CONFIG_SYS_DCACHE_OFF))
+#if !(CONFIG_IS_ENABLED(SYS_ICACHE_OFF) && CONFIG_IS_ENABLED(SYS_DCACHE_OFF))
        print_num("TLB addr", gd->arch.tlb_addr);
 #endif
        print_num("relocaddr", gd->relocaddr);
        print_num("reloc off", gd->reloc_off);
        print_num("irq_sp", gd->irq_sp);        /* irq stack pointer */
        print_num("sp start ", gd->start_addr_sp);
-#if defined(CONFIG_LCD) || defined(CONFIG_VIDEO)
+#if defined(CONFIG_LCD) || defined(CONFIG_VIDEO) || defined(CONFIG_DM_VIDEO)
        print_num("FB base  ", gd->fb_base);
 #endif
        /*
@@ -347,9 +359,13 @@ static int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc,
 #if CONFIG_VAL(SYS_MALLOC_F_LEN)
        printf("Early malloc usage: %lx / %x\n", gd->malloc_ptr,
               CONFIG_VAL(SYS_MALLOC_F_LEN));
+#endif
+#if CONFIG_IS_ENABLED(MULTI_DTB_FIT)
+       print_num("multi_dtb_fit", (ulong)gd->multi_dtb_fit);
 #endif
        if (gd->fdt_blob)
-               printf("fdt_blob = %p\n", gd->fdt_blob);
+               print_num("fdt_blob", (ulong)gd->fdt_blob);
+       print_cpu_word_size();
 
        return 0;
 }
@@ -364,6 +380,8 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
        print_bi_flash(bd);
        print_eth_ip_addr();
        print_baudrate();
+       print_cpu_word_size();
+
        return 0;
 }
 
@@ -384,6 +402,7 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
        print_mhz("ethspeed",       bd->bi_ethspeed);
 #endif
        print_baudrate();
+       print_cpu_word_size();
 
        return 0;
 }
@@ -401,6 +420,8 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 #if defined(CONFIG_LCD) || defined(CONFIG_VIDEO)
        print_num("FB base  ", gd->fb_base);
 #endif
+       print_cpu_word_size();
+
        return 0;
 }
 
@@ -415,6 +436,7 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
        print_bi_dram(bd);
        print_eth_ip_addr();
        print_baudrate();
+       print_cpu_word_size();
 
        return 0;
 }
@@ -425,11 +447,13 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 {
        bd_t *bd = gd->bd;
 
-       print_num("arch_number", bd->bi_arch_number);
        print_bi_boot_params(bd);
        print_bi_dram(bd);
+       print_num("relocaddr", gd->relocaddr);
+       print_num("reloc off", gd->reloc_off);
        print_eth_ip_addr();
        print_baudrate();
+       print_cpu_word_size();
 
        return 0;
 }
@@ -443,6 +467,7 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
        print_bi_mem(bd);
        print_eth_ip_addr();
        print_baudrate();
+       print_cpu_word_size();
 
        return 0;
 }