tiny-printf: Support %i
[oweals/u-boot.git] / cmd / bdinfo.c
index 60b438766d31b1659fe94e43b74dc3874f03697a..d6a7175b37956e53c3270c714af6c97a3354bab2 100644 (file)
@@ -9,6 +9,8 @@
  */
 #include <common.h>
 #include <command.h>
+#include <env.h>
+#include <vsprintf.h>
 #include <linux/compiler.h>
 
 DECLARE_GLOBAL_DATA_PTR;
@@ -16,7 +18,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
@@ -321,14 +323,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
        /*
@@ -346,9 +348,12 @@ 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);
 
        return 0;
 }