+ print_eth(0);
+ printf("ip_addr = %s\n", getenv("ipaddr"));
+#endif
+ printf("baudrate = %u bps\n", bd->bi_baudrate);
+#if !(defined(CONFIG_SYS_ICACHE_OFF) && defined(CONFIG_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)
+ print_num("FB base ", gd->fb_base);
+#endif
+ /*
+ * TODO: Currently only support for davinci SOC's is added.
+ * Remove this check once all the board implement this.
+ */
+#ifdef CONFIG_CLOCKS
+ printf("ARM frequency = %ld MHz\n", gd->bd->bi_arm_freq);
+ printf("DSP frequency = %ld MHz\n", gd->bd->bi_dsp_freq);
+ printf("DDR frequency = %ld MHz\n", gd->bd->bi_ddr_freq);
+#endif
+ return 0;
+}
+
+#elif defined(CONFIG_SH)
+
+int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
+{
+ bd_t *bd = gd->bd;
+ print_num("mem start ", (ulong)bd->bi_memstart);
+ print_lnum("mem size ", (u64)bd->bi_memsize);
+ print_num("flash start ", (ulong)bd->bi_flashstart);
+ print_num("flash size ", (ulong)bd->bi_flashsize);
+ print_num("flash offset ", (ulong)bd->bi_flashoffset);
+
+#if defined(CONFIG_CMD_NET)
+ print_eth(0);
+ printf("ip_addr = %s\n", getenv("ipaddr"));
+#endif
+ printf("baudrate = %u bps\n", bd->bi_baudrate);
+ return 0;
+}
+
+#elif defined(CONFIG_X86)
+
+int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
+{
+ int i;
+ bd_t *bd = gd->bd;
+
+ print_num("boot_params", (ulong)bd->bi_boot_params);
+ print_num("bi_memstart", bd->bi_memstart);
+ print_num("bi_memsize", bd->bi_memsize);
+ print_num("bi_flashstart", bd->bi_flashstart);
+ print_num("bi_flashsize", bd->bi_flashsize);
+ print_num("bi_flashoffset", bd->bi_flashoffset);
+ print_num("bi_sramstart", bd->bi_sramstart);
+ print_num("bi_sramsize", bd->bi_sramsize);
+ print_num("bi_bootflags", bd->bi_bootflags);
+ print_mhz("cpufreq", bd->bi_intfreq);
+ print_mhz("busfreq", bd->bi_busfreq);
+
+ for (i = 0; i < CONFIG_NR_DRAM_BANKS; ++i) {
+ print_num("DRAM bank", i);
+ print_num("-> start", bd->bi_dram[i].start);
+ print_num("-> size", bd->bi_dram[i].size);