Blame view

cmd/bdinfo.c 9.97 KB
8bde7f776   wdenk   * Code cleanup:
1
2
3
4
  /*
   * (C) Copyright 2003
   * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
   *
1a4596601   Wolfgang Denk   Add GPL-2.0+ SPDX...
5
   * SPDX-License-Identifier:	GPL-2.0+
8bde7f776   wdenk   * Code cleanup:
6
7
8
9
10
11
12
   */
  
  /*
   * Boot support
   */
  #include <common.h>
  #include <command.h>
d88af4da9   Mike Frysinger   cmd_bdinfo: simpl...
13
  #include <linux/compiler.h>
8bde7f776   wdenk   * Code cleanup:
14

d87080b72   Wolfgang Denk   GCC-4.x fixes: cl...
15
  DECLARE_GLOBAL_DATA_PTR;
8bde7f776   wdenk   * Code cleanup:
16

d88af4da9   Mike Frysinger   cmd_bdinfo: simpl...
17
18
19
20
21
22
  __maybe_unused
  static void print_num(const char *name, ulong value)
  {
  	printf("%-12s= 0x%08lX
  ", name, value);
  }
8bde7f776   wdenk   * Code cleanup:
23

5f3dfadc2   Simon Glass   Fix unused functi...
24
  __maybe_unused
d88af4da9   Mike Frysinger   cmd_bdinfo: simpl...
25
26
27
28
29
30
31
  static void print_eth(int idx)
  {
  	char name[10], *val;
  	if (idx)
  		sprintf(name, "eth%iaddr", idx);
  	else
  		strcpy(name, "ethaddr");
00caae6d4   Simon Glass   env: Rename geten...
32
  	val = env_get(name);
d88af4da9   Mike Frysinger   cmd_bdinfo: simpl...
33
34
35
36
37
  	if (!val)
  		val = "(not set)";
  	printf("%-12s= %s
  ", name, val);
  }
de2dff6ff   Mike Frysinger   bdinfo: get mac a...
38

05c3e68f8   Joe Hershberger   dm: eth: Add basi...
39
  #ifndef CONFIG_DM_ETH
d88af4da9   Mike Frysinger   cmd_bdinfo: simpl...
40
  __maybe_unused
9fc6a06ad   Michal Simek   common: cmd_bdinf...
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
  static void print_eths(void)
  {
  	struct eth_device *dev;
  	int i = 0;
  
  	do {
  		dev = eth_get_dev_by_index(i);
  		if (dev) {
  			printf("eth%dname    = %s
  ", i, dev->name);
  			print_eth(i);
  			i++;
  		}
  	} while (dev);
  
  	printf("current eth = %s
  ", eth_get_name());
00caae6d4   Simon Glass   env: Rename geten...
58
59
  	printf("ip_addr     = %s
  ", env_get("ipaddr"));
9fc6a06ad   Michal Simek   common: cmd_bdinf...
60
  }
05c3e68f8   Joe Hershberger   dm: eth: Add basi...
61
  #endif
9fc6a06ad   Michal Simek   common: cmd_bdinf...
62
63
  
  __maybe_unused
47708457f   Daniel Schwierzeck   common: cmd_bdinf...
64
  static void print_lnum(const char *name, unsigned long long value)
d88af4da9   Mike Frysinger   cmd_bdinfo: simpl...
65
66
67
68
69
70
71
72
73
74
75
76
77
  {
  	printf("%-12s= 0x%.8llX
  ", name, value);
  }
  
  __maybe_unused
  static void print_mhz(const char *name, unsigned long hz)
  {
  	char buf[32];
  
  	printf("%-12s= %6s MHz
  ", name, strmhz(buf, hz));
  }
8bde7f776   wdenk   * Code cleanup:
78

171e53968   Max Filippov   cmd/bdinfo: extra...
79
80
81
82
83
  
  static inline void print_bi_boot_params(const bd_t *bd)
  {
  	print_num("boot_params",	(ulong)bd->bi_boot_params);
  }
12feb3647   Max Filippov   cmd/bdinfo: extra...
84
85
86
87
88
89
90
91
  static inline void print_bi_mem(const bd_t *bd)
  {
  #if defined(CONFIG_SH)
  	print_num("mem start      ",	(ulong)bd->bi_memstart);
  	print_lnum("mem size       ",	(u64)bd->bi_memsize);
  #elif defined(CONFIG_ARC)
  	print_num("mem start",		(ulong)bd->bi_memstart);
  	print_lnum("mem size",		(u64)bd->bi_memsize);
12feb3647   Max Filippov   cmd/bdinfo: extra...
92
93
94
95
96
  #else
  	print_num("memstart",		(ulong)bd->bi_memstart);
  	print_lnum("memsize",		(u64)bd->bi_memsize);
  #endif
  }
fd60e99f5   Max Filippov   cmd/bdinfo: extra...
97
98
99
100
101
102
  static inline void print_bi_dram(const bd_t *bd)
  {
  #ifdef CONFIG_NR_DRAM_BANKS
  	int i;
  
  	for (i = 0; i < CONFIG_NR_DRAM_BANKS; ++i) {
ddd917b8f   Simon Glass   bdinfo: Don't pri...
103
104
105
106
107
  		if (bd->bi_dram[i].size) {
  			print_num("DRAM bank",	i);
  			print_num("-> start",	bd->bi_dram[i].start);
  			print_num("-> size",	bd->bi_dram[i].size);
  		}
fd60e99f5   Max Filippov   cmd/bdinfo: extra...
108
109
110
  	}
  #endif
  }
f80e53598   Max Filippov   cmd/bdinfo: extra...
111
112
113
114
115
116
  static inline void print_bi_flash(const bd_t *bd)
  {
  #if defined(CONFIG_MICROBLAZE) || defined(CONFIG_SH)
  	print_num("flash start    ",	(ulong)bd->bi_flashstart);
  	print_num("flash size     ",	(ulong)bd->bi_flashsize);
  	print_num("flash offset   ",	(ulong)bd->bi_flashoffset);
70cc0c34b   Tom Rini   OpenRISC: Remove
117
  #elif defined(CONFIG_NIOS2)
f80e53598   Max Filippov   cmd/bdinfo: extra...
118
119
120
121
122
123
124
125
126
  	print_num("flash start",	(ulong)bd->bi_flashstart);
  	print_num("flash size",		(ulong)bd->bi_flashsize);
  	print_num("flash offset",	(ulong)bd->bi_flashoffset);
  #else
  	print_num("flashstart",		(ulong)bd->bi_flashstart);
  	print_num("flashsize",		(ulong)bd->bi_flashsize);
  	print_num("flashoffset",	(ulong)bd->bi_flashoffset);
  #endif
  }
8752e260c   Max Filippov   cmd/bdinfo: extra...
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
  static inline void print_eth_ip_addr(void)
  {
  #if defined(CONFIG_CMD_NET)
  	print_eth(0);
  #if defined(CONFIG_HAS_ETH1)
  	print_eth(1);
  #endif
  #if defined(CONFIG_HAS_ETH2)
  	print_eth(2);
  #endif
  #if defined(CONFIG_HAS_ETH3)
  	print_eth(3);
  #endif
  #if defined(CONFIG_HAS_ETH4)
  	print_eth(4);
  #endif
  #if defined(CONFIG_HAS_ETH5)
  	print_eth(5);
  #endif
00caae6d4   Simon Glass   env: Rename geten...
146
147
  	printf("IP addr     = %s
  ", env_get("ipaddr"));
8752e260c   Max Filippov   cmd/bdinfo: extra...
148
149
  #endif
  }
4e3fa7d8a   Max Filippov   cmd/bdinfo: extra...
150
151
152
153
154
  static inline void print_baudrate(void)
  {
  #if defined(CONFIG_PPC)
  	printf("baudrate    = %6u bps
  ", gd->baudrate);
4e3fa7d8a   Max Filippov   cmd/bdinfo: extra...
155
156
157
158
159
  #else
  	printf("baudrate    = %u bps
  ", gd->baudrate);
  #endif
  }
b37483c42   Tom Rini   cmd/bdinfo.c: Fix...
160
  static inline void __maybe_unused print_std_bdinfo(const bd_t *bd)
e37950843   Max Filippov   cmd/bdinfo: extra...
161
162
163
164
165
166
167
  {
  	print_bi_boot_params(bd);
  	print_bi_mem(bd);
  	print_bi_flash(bd);
  	print_eth_ip_addr();
  	print_baudrate();
  }
c99ea7907   Reinhard Meyer   Fix #if chain and...
168
  #if defined(CONFIG_PPC)
e79394643   York Sun   common: Update cm...
169
170
  void __weak board_detail(void)
  {
7b07a20c5   Chris Packham   cmd/bdinfo: corre...
171
  	/* Please define board_detail() for your platform */
e79394643   York Sun   common: Update cm...
172
  }
8bde7f776   wdenk   * Code cleanup:
173

5902e8f71   Macpaul Lin   cosmetic: cmd_bdi...
174
  int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
8bde7f776   wdenk   * Code cleanup:
175
  {
8bde7f776   wdenk   * Code cleanup:
176
  	bd_t *bd = gd->bd;
8bde7f776   wdenk   * Code cleanup:
177
178
  
  #ifdef DEBUG
5902e8f71   Macpaul Lin   cosmetic: cmd_bdi...
179
180
  	print_num("bd address",		(ulong)bd);
  #endif
12feb3647   Max Filippov   cmd/bdinfo: extra...
181
  	print_bi_mem(bd);
f80e53598   Max Filippov   cmd/bdinfo: extra...
182
  	print_bi_flash(bd);
5902e8f71   Macpaul Lin   cosmetic: cmd_bdi...
183
184
  	print_num("sramstart",		bd->bi_sramstart);
  	print_num("sramsize",		bd->bi_sramsize);
907208c45   Christophe Leroy   powerpc: Partialy...
185
  #if	defined(CONFIG_8xx) || defined(CONFIG_E500)
5902e8f71   Macpaul Lin   cosmetic: cmd_bdi...
186
187
188
  	print_num("immr_base",		bd->bi_immr_base);
  #endif
  	print_num("bootflags",		bd->bi_bootflags);
9c4c5ae3e   Jon Loeliger   * Patch by Jon Lo...
189
  #if defined(CONFIG_CPM2)
0c277ef9f   Timur Tabi   cmd_bdinfo: repla...
190
191
192
  	print_mhz("vco",		bd->bi_vco);
  	print_mhz("sccfreq",		bd->bi_sccfreq);
  	print_mhz("brgfreq",		bd->bi_brgfreq);
8bde7f776   wdenk   * Code cleanup:
193
  #endif
0c277ef9f   Timur Tabi   cmd_bdinfo: repla...
194
  	print_mhz("intfreq",		bd->bi_intfreq);
9c4c5ae3e   Jon Loeliger   * Patch by Jon Lo...
195
  #if defined(CONFIG_CPM2)
0c277ef9f   Timur Tabi   cmd_bdinfo: repla...
196
  	print_mhz("cpmfreq",		bd->bi_cpmfreq);
8bde7f776   wdenk   * Code cleanup:
197
  #endif
0c277ef9f   Timur Tabi   cmd_bdinfo: repla...
198
  	print_mhz("busfreq",		bd->bi_busfreq);
03f5c5502   wdenk   Patches by Jon Lo...
199

34e210f5b   Timur Tabi   cmd_bdinfo: displ...
200
201
202
203
204
205
206
207
208
  #ifdef CONFIG_ENABLE_36BIT_PHYS
  #ifdef CONFIG_PHYS_64BIT
  	puts("addressing  = 36-bit
  ");
  #else
  	puts("addressing  = 32-bit
  ");
  #endif
  #endif
8752e260c   Max Filippov   cmd/bdinfo: extra...
209
  	print_eth_ip_addr();
4e3fa7d8a   Max Filippov   cmd/bdinfo: extra...
210
  	print_baudrate();
5902e8f71   Macpaul Lin   cosmetic: cmd_bdi...
211
  	print_num("relocaddr", gd->relocaddr);
e79394643   York Sun   common: Update cm...
212
  	board_detail();
8bde7f776   wdenk   * Code cleanup:
213
214
  	return 0;
  }
c99ea7907   Reinhard Meyer   Fix #if chain and...
215
  #elif defined(CONFIG_NIOS2)
5c952cf02   wdenk   Patches by Scott ...
216

5902e8f71   Macpaul Lin   cosmetic: cmd_bdi...
217
  int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
5c952cf02   wdenk   Patches by Scott ...
218
  {
5c952cf02   wdenk   Patches by Scott ...
219
  	bd_t *bd = gd->bd;
fd60e99f5   Max Filippov   cmd/bdinfo: extra...
220
  	print_bi_dram(bd);
f80e53598   Max Filippov   cmd/bdinfo: extra...
221
  	print_bi_flash(bd);
5c952cf02   wdenk   Patches by Scott ...
222

6d0f6bcf3   Jean-Christophe PLAGNIOL-VILLARD   rename CFG_ macro...
223
  #if defined(CONFIG_SYS_SRAM_BASE)
5c952cf02   wdenk   Patches by Scott ...
224
225
226
  	print_num ("sram start",	(ulong)bd->bi_sramstart);
  	print_num ("sram size",		(ulong)bd->bi_sramsize);
  #endif
8752e260c   Max Filippov   cmd/bdinfo: extra...
227
  	print_eth_ip_addr();
4e3fa7d8a   Max Filippov   cmd/bdinfo: extra...
228
  	print_baudrate();
5c952cf02   wdenk   Patches by Scott ...
229
230
231
  
  	return 0;
  }
c99ea7907   Reinhard Meyer   Fix #if chain and...
232
233
  
  #elif defined(CONFIG_MICROBLAZE)
cfc67116a   Michal Simek   [Microblaze][PATC...
234

5902e8f71   Macpaul Lin   cosmetic: cmd_bdi...
235
  int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
cfc67116a   Michal Simek   [Microblaze][PATC...
236
  {
cfc67116a   Michal Simek   [Microblaze][PATC...
237
  	bd_t *bd = gd->bd;
e945f6dc2   Michal Simek   microblaze: Move ...
238

fd60e99f5   Max Filippov   cmd/bdinfo: extra...
239
  	print_bi_dram(bd);
f80e53598   Max Filippov   cmd/bdinfo: extra...
240
  	print_bi_flash(bd);
6d0f6bcf3   Jean-Christophe PLAGNIOL-VILLARD   rename CFG_ macro...
241
  #if defined(CONFIG_SYS_SRAM_BASE)
5902e8f71   Macpaul Lin   cosmetic: cmd_bdi...
242
243
  	print_num("sram start     ",	(ulong)bd->bi_sramstart);
  	print_num("sram size      ",	(ulong)bd->bi_sramsize);
cfc67116a   Michal Simek   [Microblaze][PATC...
244
  #endif
062f078c3   Michal Simek   microblaze: Do no...
245
  #if defined(CONFIG_CMD_NET) && !defined(CONFIG_DM_ETH)
9fc6a06ad   Michal Simek   common: cmd_bdinf...
246
  	print_eths();
cfc67116a   Michal Simek   [Microblaze][PATC...
247
  #endif
4e3fa7d8a   Max Filippov   cmd/bdinfo: extra...
248
  	print_baudrate();
e945f6dc2   Michal Simek   microblaze: Move ...
249
250
  	print_num("relocaddr", gd->relocaddr);
  	print_num("reloc off", gd->reloc_off);
de86765bc   Michal Simek   bdinfo: Show info...
251
252
253
  	print_num("fdt_blob", (ulong)gd->fdt_blob);
  	print_num("new_fdt", (ulong)gd->new_fdt);
  	print_num("fdt_size", (ulong)gd->fdt_size);
e945f6dc2   Michal Simek   microblaze: Move ...
254

cfc67116a   Michal Simek   [Microblaze][PATC...
255
256
  	return 0;
  }
4a5517094   wdenk   * Patch by Scott ...
257

c99ea7907   Reinhard Meyer   Fix #if chain and...
258
  #elif defined(CONFIG_M68K)
5902e8f71   Macpaul Lin   cosmetic: cmd_bdi...
259
  int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
8e585f02f   TsiChung Liew   Added M5329AFEE a...
260
  {
8e585f02f   TsiChung Liew   Added M5329AFEE a...
261
  	bd_t *bd = gd->bd;
8ae158cd8   TsiChungLiew   ColdFire: Add M54...
262

12feb3647   Max Filippov   cmd/bdinfo: extra...
263
  	print_bi_mem(bd);
f80e53598   Max Filippov   cmd/bdinfo: extra...
264
  	print_bi_flash(bd);
6d0f6bcf3   Jean-Christophe PLAGNIOL-VILLARD   rename CFG_ macro...
265
  #if defined(CONFIG_SYS_INIT_RAM_ADDR)
5902e8f71   Macpaul Lin   cosmetic: cmd_bdi...
266
267
  	print_num("sramstart",		(ulong)bd->bi_sramstart);
  	print_num("sramsize",		(ulong)bd->bi_sramsize);
8e585f02f   TsiChung Liew   Added M5329AFEE a...
268
  #endif
6d0f6bcf3   Jean-Christophe PLAGNIOL-VILLARD   rename CFG_ macro...
269
  #if defined(CONFIG_SYS_MBAR)
5902e8f71   Macpaul Lin   cosmetic: cmd_bdi...
270
  	print_num("mbar",		bd->bi_mbar_base);
8e585f02f   TsiChung Liew   Added M5329AFEE a...
271
  #endif
0c277ef9f   Timur Tabi   cmd_bdinfo: repla...
272
273
  	print_mhz("cpufreq",		bd->bi_intfreq);
  	print_mhz("busfreq",		bd->bi_busfreq);
8ae158cd8   TsiChungLiew   ColdFire: Add M54...
274
  #ifdef CONFIG_PCI
0c277ef9f   Timur Tabi   cmd_bdinfo: repla...
275
  	print_mhz("pcifreq",		bd->bi_pcifreq);
8ae158cd8   TsiChungLiew   ColdFire: Add M54...
276
277
  #endif
  #ifdef CONFIG_EXTRA_CLOCK
0c277ef9f   Timur Tabi   cmd_bdinfo: repla...
278
279
280
  	print_mhz("flbfreq",		bd->bi_flbfreq);
  	print_mhz("inpfreq",		bd->bi_inpfreq);
  	print_mhz("vcofreq",		bd->bi_vcofreq);
8ae158cd8   TsiChungLiew   ColdFire: Add M54...
281
  #endif
8752e260c   Max Filippov   cmd/bdinfo: extra...
282
  	print_eth_ip_addr();
4e3fa7d8a   Max Filippov   cmd/bdinfo: extra...
283
  	print_baudrate();
8e585f02f   TsiChung Liew   Added M5329AFEE a...
284
285
286
  
  	return 0;
  }
c99ea7907   Reinhard Meyer   Fix #if chain and...
287
  #elif defined(CONFIG_MIPS)
8bde7f776   wdenk   * Code cleanup:
288

5902e8f71   Macpaul Lin   cosmetic: cmd_bdi...
289
  int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
8bde7f776   wdenk   * Code cleanup:
290
  {
e37950843   Max Filippov   cmd/bdinfo: extra...
291
  	print_std_bdinfo(gd->bd);
8cf7a418b   Tim Chick   mips: Report relo...
292
293
  	print_num("relocaddr", gd->relocaddr);
  	print_num("reloc off", gd->reloc_off);
8bde7f776   wdenk   * Code cleanup:
294
295
296
  
  	return 0;
  }
8bde7f776   wdenk   * Code cleanup:
297

c99ea7907   Reinhard Meyer   Fix #if chain and...
298
  #elif defined(CONFIG_ARM)
8bde7f776   wdenk   * Code cleanup:
299

0e350f81e   Jeroen Hofstee   common: commands:...
300
301
  static int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc,
  			char * const argv[])
8bde7f776   wdenk   * Code cleanup:
302
  {
8bde7f776   wdenk   * Code cleanup:
303
  	bd_t *bd = gd->bd;
5902e8f71   Macpaul Lin   cosmetic: cmd_bdi...
304
  	print_num("arch_number",	bd->bi_arch_number);
171e53968   Max Filippov   cmd/bdinfo: extra...
305
  	print_bi_boot_params(bd);
fd60e99f5   Max Filippov   cmd/bdinfo: extra...
306
  	print_bi_dram(bd);
8bde7f776   wdenk   * Code cleanup:
307

e81495224   York Sun   Reserve secure me...
308
  #ifdef CONFIG_SYS_MEM_RESERVE_SECURE
e61a7534e   York Sun   armv8: Move secur...
309
  	if (gd->arch.secure_ram & MEM_RESERVE_SECURE_SECURED) {
e81495224   York Sun   Reserve secure me...
310
  		print_num("Secure ram",
e61a7534e   York Sun   armv8: Move secur...
311
  			  gd->arch.secure_ram & MEM_RESERVE_SECURE_ADDR_MASK);
e81495224   York Sun   Reserve secure me...
312
313
  	}
  #endif
f2ccf7f7a   York Sun   armv8: Add global...
314
315
316
317
  #ifdef CONFIG_RESV_RAM
  	if (gd->arch.resv_ram)
  		print_num("Reserved ram", gd->arch.resv_ram);
  #endif
ff9738001   Simon Glass   Avoid calling pri...
318
  #if defined(CONFIG_CMD_NET) && !defined(CONFIG_DM_ETH)
9fc6a06ad   Michal Simek   common: cmd_bdinf...
319
  	print_eths();
a41dbbd98   Hebbar   ARM: Display Ethe...
320
  #endif
4e3fa7d8a   Max Filippov   cmd/bdinfo: extra...
321
  	print_baudrate();
e47f2db53   Aneesh V   armv7: rename cac...
322
  #if !(defined(CONFIG_SYS_ICACHE_OFF) && defined(CONFIG_SYS_DCACHE_OFF))
34fd5d253   Simon Glass   arm: Move tlb_add...
323
  	print_num("TLB addr", gd->arch.tlb_addr);
f1d2b313c   Heiko Schocher   ARM: add relocati...
324
  #endif
5902e8f71   Macpaul Lin   cosmetic: cmd_bdi...
325
326
327
328
  	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);
c8fcd0f27   Simon Glass   Only use fb_base ...
329
  #if defined(CONFIG_LCD) || defined(CONFIG_VIDEO)
5902e8f71   Macpaul Lin   cosmetic: cmd_bdi...
330
  	print_num("FB base  ", gd->fb_base);
c8fcd0f27   Simon Glass   Only use fb_base ...
331
  #endif
8f5d46872   Hadli, Manjunath   davinci: add supp...
332
333
334
335
336
337
338
339
340
341
342
343
  	/*
  	 * 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
  ", gd->bd->bi_arm_freq);
  	printf("DSP frequency = %ld MHz
  ", gd->bd->bi_dsp_freq);
  	printf("DDR frequency = %ld MHz
  ", gd->bd->bi_ddr_freq);
  #endif
7bb7d672a   Hannes Schmelzer   common/cmd_bdinfo...
344
345
346
347
  #ifdef CONFIG_BOARD_TYPES
  	printf("Board Type  = %ld
  ", gd->board_type);
  #endif
f1896c45c   Andy Yan   spl: make SPL and...
348
  #if CONFIG_VAL(SYS_MALLOC_F_LEN)
7f7ddf2a8   Simon Glass   arm: Show early-m...
349
350
  	printf("Early malloc usage: %lx / %x
  ", gd->malloc_ptr,
f1896c45c   Andy Yan   spl: make SPL and...
351
  	       CONFIG_VAL(SYS_MALLOC_F_LEN));
7f7ddf2a8   Simon Glass   arm: Show early-m...
352
  #endif
535395337   Heiko Schocher   bdinfo: print fdt...
353
354
355
  	if (gd->fdt_blob)
  		printf("fdt_blob = %p
  ", gd->fdt_blob);
7f7ddf2a8   Simon Glass   arm: Show early-m...
356

8bde7f776   wdenk   * Code cleanup:
357
358
  	return 0;
  }
ebd0d062a   Nobuhiro Iwamatsu   sh: Add support d...
359
  #elif defined(CONFIG_SH)
5902e8f71   Macpaul Lin   cosmetic: cmd_bdi...
360
  int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
ebd0d062a   Nobuhiro Iwamatsu   sh: Add support d...
361
362
  {
  	bd_t *bd = gd->bd;
12feb3647   Max Filippov   cmd/bdinfo: extra...
363
364
  
  	print_bi_mem(bd);
f80e53598   Max Filippov   cmd/bdinfo: extra...
365
  	print_bi_flash(bd);
8752e260c   Max Filippov   cmd/bdinfo: extra...
366
  	print_eth_ip_addr();
4e3fa7d8a   Max Filippov   cmd/bdinfo: extra...
367
  	print_baudrate();
ebd0d062a   Nobuhiro Iwamatsu   sh: Add support d...
368
369
  	return 0;
  }
a806ee6fa   Graeme Russ   x86: Add do_bdinfo()
370
  #elif defined(CONFIG_X86)
5902e8f71   Macpaul Lin   cosmetic: cmd_bdi...
371
  int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
a806ee6fa   Graeme Russ   x86: Add do_bdinfo()
372
  {
a806ee6fa   Graeme Russ   x86: Add do_bdinfo()
373
  	bd_t *bd = gd->bd;
a806ee6fa   Graeme Russ   x86: Add do_bdinfo()
374

171e53968   Max Filippov   cmd/bdinfo: extra...
375
  	print_bi_boot_params(bd);
5902e8f71   Macpaul Lin   cosmetic: cmd_bdi...
376

fd60e99f5   Max Filippov   cmd/bdinfo: extra...
377
  	print_bi_dram(bd);
a806ee6fa   Graeme Russ   x86: Add do_bdinfo()
378

ca92ad4f6   Heinrich Schuchardt   cmd/bdinfo: print...
379
380
  	print_num("relocaddr", gd->relocaddr);
  	print_num("reloc off", gd->reloc_off);
a806ee6fa   Graeme Russ   x86: Add do_bdinfo()
381
  #if defined(CONFIG_CMD_NET)
8752e260c   Max Filippov   cmd/bdinfo: extra...
382
  	print_eth_ip_addr();
0c277ef9f   Timur Tabi   cmd_bdinfo: repla...
383
  	print_mhz("ethspeed",	    bd->bi_ethspeed);
a806ee6fa   Graeme Russ   x86: Add do_bdinfo()
384
  #endif
4e3fa7d8a   Max Filippov   cmd/bdinfo: extra...
385
  	print_baudrate();
a806ee6fa   Graeme Russ   x86: Add do_bdinfo()
386
387
388
  
  	return 0;
  }
6fcc3be45   Simon Glass   sandbox: Add boar...
389
390
391
392
  #elif defined(CONFIG_SANDBOX)
  
  int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
  {
6fcc3be45   Simon Glass   sandbox: Add boar...
393
  	bd_t *bd = gd->bd;
171e53968   Max Filippov   cmd/bdinfo: extra...
394
  	print_bi_boot_params(bd);
fd60e99f5   Max Filippov   cmd/bdinfo: extra...
395
  	print_bi_dram(bd);
8752e260c   Max Filippov   cmd/bdinfo: extra...
396
  	print_eth_ip_addr();
6fcc3be45   Simon Glass   sandbox: Add boar...
397

c8fcd0f27   Simon Glass   Only use fb_base ...
398
  #if defined(CONFIG_LCD) || defined(CONFIG_VIDEO)
6fcc3be45   Simon Glass   sandbox: Add boar...
399
  	print_num("FB base  ", gd->fb_base);
c8fcd0f27   Simon Glass   Only use fb_base ...
400
  #endif
6fcc3be45   Simon Glass   sandbox: Add boar...
401
402
  	return 0;
  }
64d614617   Macpaul Lin   nds32: common bdi...
403
404
405
406
  #elif defined(CONFIG_NDS32)
  
  int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
  {
64d614617   Macpaul Lin   nds32: common bdi...
407
408
409
  	bd_t *bd = gd->bd;
  
  	print_num("arch_number",	bd->bi_arch_number);
171e53968   Max Filippov   cmd/bdinfo: extra...
410
  	print_bi_boot_params(bd);
fd60e99f5   Max Filippov   cmd/bdinfo: extra...
411
  	print_bi_dram(bd);
8752e260c   Max Filippov   cmd/bdinfo: extra...
412
  	print_eth_ip_addr();
4e3fa7d8a   Max Filippov   cmd/bdinfo: extra...
413
  	print_baudrate();
64d614617   Macpaul Lin   nds32: common bdi...
414
415
416
  
  	return 0;
  }
068feb9b8   Rick Chen   riscv: Modify gen...
417
418
419
420
421
422
423
424
425
426
427
428
429
430
  #elif defined(CONFIG_RISCV)
  
  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_eth_ip_addr();
  	print_baudrate();
  
  	return 0;
  }
946f6f242   Alexey Brodkin   cmd_bdinfo: check...
431
  #elif defined(CONFIG_ARC)
bc5d54288   Alexey Brodkin   arc: bdinfo, imag...
432
433
434
435
  
  int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
  {
  	bd_t *bd = gd->bd;
12feb3647   Max Filippov   cmd/bdinfo: extra...
436
  	print_bi_mem(bd);
8752e260c   Max Filippov   cmd/bdinfo: extra...
437
  	print_eth_ip_addr();
4e3fa7d8a   Max Filippov   cmd/bdinfo: extra...
438
  	print_baudrate();
bc5d54288   Alexey Brodkin   arc: bdinfo, imag...
439
440
441
  
  	return 0;
  }
de5e5cea0   Chris Zankel   xtensa: add suppo...
442
443
444
445
446
447
448
  #elif defined(CONFIG_XTENSA)
  
  int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
  {
  	print_std_bdinfo(gd->bd);
  	return 0;
  }
c99ea7907   Reinhard Meyer   Fix #if chain and...
449
450
451
  #else
   #error "a case for this architecture does not exist!"
  #endif
8bde7f776   wdenk   * Code cleanup:
452

8bde7f776   wdenk   * Code cleanup:
453
  /* -------------------------------------------------------------------- */
0d4983930   wdenk   Patch by Kenneth ...
454
455
  U_BOOT_CMD(
  	bdinfo,	1,	1,	do_bdinfo,
2fb2604d5   Peter Tyser   Command usage cle...
456
  	"print Board Info structure",
a89c33db9   Wolfgang Denk   General help mess...
457
  	""
8bde7f776   wdenk   * Code cleanup:
458
  );