~ubuntu-branches/ubuntu/maverick/uboot-imx/maverick

« back to all changes in this revision

Viewing changes to common/cmd_bdinfo.c

  • Committer: Bazaar Package Importer
  • Author(s): Oliver Grawert
  • Date: 2010-01-20 15:41:26 UTC
  • mfrom: (1.1.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20100120154126-7bha1jeyjegu7xm5
Tags: 2009.08+really2009.01-0ubuntu1
* revert to the 2009.01 upstream version, 2009.08 has still to 
  many work in progress items in the freescale patchset (MMC and NIC
  dont work at all)
* add the latest patchset from freescale for 2009.01
* add 1002_enable_hush_shell_and_ext2.patch to enable hush shell and ext2 
* add 1003_fix_board_revision_numbers to make sure babbage 2.5 boards have 
  revision 51120 and babbage 3.0 boards have revision 51130 properly set in 
  their cpuinfo

Show diffs side-by-side

added added

removed removed

Lines of Context:
26
26
 */
27
27
#include <common.h>
28
28
#include <command.h>
 
29
#include <net.h>                /* for print_IPaddr */
29
30
 
30
31
DECLARE_GLOBAL_DATA_PTR;
31
32
 
32
33
static void print_num(const char *, ulong);
33
34
 
34
 
#if !defined(CONFIG_ARM) || defined(CONFIG_CMD_NET)
35
 
static void print_eth(int idx);
36
 
#endif
37
 
 
38
35
#ifndef CONFIG_ARM      /* PowerPC and other */
39
36
static void print_lnum(const char *, u64);
40
37
 
43
40
 
44
41
int do_bdinfo ( cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
45
42
{
 
43
        int i;
46
44
        bd_t *bd = gd->bd;
47
45
        char buf[32];
48
46
 
93
91
        print_str ("pevfreq",       strmhz(buf, bd->bi_pevfreq));
94
92
#endif
95
93
 
96
 
        print_eth(0);
 
94
        puts ("ethaddr     =");
 
95
        for (i=0; i<6; ++i) {
 
96
                printf ("%c%02X", i ? ':' : ' ', bd->bi_enetaddr[i]);
 
97
        }
 
98
 
97
99
#if defined(CONFIG_HAS_ETH1)
98
 
        print_eth(1);
 
100
        puts ("\neth1addr    =");
 
101
        for (i=0; i<6; ++i) {
 
102
                printf ("%c%02X", i ? ':' : ' ', bd->bi_enet1addr[i]);
 
103
        }
99
104
#endif
 
105
 
100
106
#if defined(CONFIG_HAS_ETH2)
101
 
        print_eth(2);
 
107
       puts ("\neth2addr    =");
 
108
       for (i=0; i<6; ++i) {
 
109
                printf ("%c%02X", i ? ':' : ' ', bd->bi_enet2addr[i]);
 
110
        }
102
111
#endif
 
112
 
103
113
#if defined(CONFIG_HAS_ETH3)
104
 
        print_eth(3);
 
114
       puts ("\neth3addr    =");
 
115
       for (i=0; i<6; ++i) {
 
116
                printf ("%c%02X", i ? ':' : ' ', bd->bi_enet3addr[i]);
 
117
        }
105
118
#endif
 
119
 
106
120
#if defined(CONFIG_HAS_ETH4)
107
 
        print_eth(4);
 
121
       puts ("\neth4addr    =");
 
122
       for (i=0; i<6; ++i) {
 
123
                printf ("%c%02X", i ? ':' : ' ', bd->bi_enet4addr[i]);
 
124
        }
108
125
#endif
 
126
 
109
127
#if defined(CONFIG_HAS_ETH5)
110
 
        print_eth(5);
 
128
       puts ("\neth5addr    =");
 
129
       for (i=0; i<6; ++i) {
 
130
                printf ("%c%02X", i ? ':' : ' ', bd->bi_enet5addr[i]);
 
131
        }
111
132
#endif
112
133
 
113
134
#ifdef CONFIG_HERMES
114
135
        print_str ("ethspeed",      strmhz(buf, bd->bi_ethspeed));
115
136
#endif
116
 
        printf ("IP addr     = %pI4\n", &bd->bi_ip_addr);
117
 
        printf ("baudrate    = %6ld bps\n", bd->bi_baudrate   );
 
137
        puts ("\nIP addr     = ");      print_IPaddr (bd->bi_ip_addr);
 
138
        printf ("\nbaudrate    = %6ld bps\n", bd->bi_baudrate   );
118
139
        return 0;
119
140
}
120
141
 
122
143
 
123
144
int do_bdinfo ( cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
124
145
{
 
146
        int i;
125
147
        bd_t *bd = gd->bd;
126
148
 
127
149
        print_num ("memstart",          (ulong)bd->bi_memstart);
130
152
        print_num ("flashsize",         (ulong)bd->bi_flashsize);
131
153
        print_num ("flashoffset",       (ulong)bd->bi_flashoffset);
132
154
 
133
 
        print_eth(0);
134
 
        printf ("ip_addr     = %pI4\n", &bd->bi_ip_addr);
135
 
        printf ("baudrate    = %ld bps\n", bd->bi_baudrate);
 
155
        puts ("ethaddr     =");
 
156
        for (i=0; i<6; ++i) {
 
157
                printf ("%c%02X", i ? ':' : ' ', bd->bi_enetaddr[i]);
 
158
        }
 
159
        puts ("\nip_addr     = ");
 
160
        print_IPaddr (bd->bi_ip_addr);
 
161
        printf ("\nbaudrate    = %ld bps\n", bd->bi_baudrate);
136
162
 
137
163
        return 0;
138
164
}
141
167
 
142
168
int do_bdinfo ( cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
143
169
{
 
170
#if defined(CONFIG_CMD_NET)
 
171
        int i;
 
172
#endif
144
173
        bd_t *bd = gd->bd;
145
174
 
146
175
        print_num ("mem start",         (ulong)bd->bi_memstart);
155
184
#endif
156
185
 
157
186
#if defined(CONFIG_CMD_NET)
158
 
        print_eth(0);
159
 
        printf ("ip_addr     = %pI4\n", &bd->bi_ip_addr);
 
187
        puts ("ethaddr     =");
 
188
        for (i=0; i<6; ++i) {
 
189
                printf ("%c%02X", i ? ':' : ' ', bd->bi_enetaddr[i]);
 
190
        }
 
191
        puts ("\nip_addr     = ");
 
192
        print_IPaddr (bd->bi_ip_addr);
160
193
#endif
161
194
 
162
 
        printf ("baudrate    = %ld bps\n", bd->bi_baudrate);
 
195
        printf ("\nbaudrate    = %ld bps\n", bd->bi_baudrate);
163
196
 
164
197
        return 0;
165
198
}
167
200
 
168
201
int do_bdinfo ( cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
169
202
{
 
203
        int i;
170
204
        bd_t *bd = gd->bd;
171
205
        print_num ("mem start      ",   (ulong)bd->bi_memstart);
172
206
        print_lnum ("mem size       ",  (u64)bd->bi_memsize);
178
212
        print_num ("sram size      ",   (ulong)bd->bi_sramsize);
179
213
#endif
180
214
#if defined(CONFIG_CMD_NET)
181
 
        print_eth(0);
182
 
        printf ("ip_addr     = %pI4\n", &bd->bi_ip_addr);
 
215
        puts ("ethaddr     =");
 
216
        for (i=0; i<6; ++i) {
 
217
                printf ("%c%02X", i ? ':' : ' ', bd->bi_enetaddr[i]);
 
218
        }
 
219
        puts ("\nip_addr     = ");
 
220
        print_IPaddr (bd->bi_ip_addr);
183
221
#endif
184
 
        printf ("baudrate    = %ld bps\n", (ulong)bd->bi_baudrate);
 
222
        printf ("\nbaudrate    = %ld bps\n", (ulong)bd->bi_baudrate);
185
223
        return 0;
186
224
}
187
225
 
189
227
int do_bdinfo(cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
190
228
{
191
229
        bd_t *bd = gd->bd;
 
230
#if defined(CONFIG_CMD_NET)
 
231
        int i;
 
232
#endif
192
233
 
193
234
#ifdef DEBUG
194
235
        print_num("bd address             ", (ulong) bd);
210
251
               CONFIG_SYS_GBL_DATA_SIZE);
211
252
 
212
253
#if defined(CONFIG_CMD_NET)
213
 
        print_eth(0);
214
 
        printf("ip_addr     = %pI4\n", &bd->bi_ip_addr);
 
254
        puts("ethaddr                =");
 
255
        for (i = 0; i < 6; ++i) {
 
256
                printf("%c%02X", i ? ':' : ' ', bd->bi_enetaddr[i]);
 
257
        }
 
258
        puts("\nIP addr                = ");
 
259
        print_IPaddr(bd->bi_ip_addr);
215
260
#endif
216
 
        printf("baudrate               = %6ld bps\n", bd->bi_baudrate);
 
261
        printf("\nbaudrate               = %6ld bps\n", bd->bi_baudrate);
217
262
        return 0;
218
263
}
219
264
 
222
267
 
223
268
int do_bdinfo ( cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
224
269
{
 
270
        int i;
225
271
        bd_t *bd = gd->bd;
226
272
        char buf[32];
227
273
 
237
283
#if defined(CONFIG_SYS_MBAR)
238
284
        print_num ("mbar",              bd->bi_mbar_base);
239
285
#endif
240
 
        print_str ("cpufreq",           strmhz(buf, bd->bi_intfreq));
241
286
        print_str ("busfreq",           strmhz(buf, bd->bi_busfreq));
242
287
#ifdef CONFIG_PCI
243
288
        print_str ("pcifreq",           strmhz(buf, bd->bi_pcifreq));
248
293
        print_str ("vcofreq",           strmhz(buf, bd->bi_vcofreq));
249
294
#endif
250
295
#if defined(CONFIG_CMD_NET)
251
 
        print_eth(0);
 
296
        puts ("ethaddr     =");
 
297
        for (i=0; i<6; ++i) {
 
298
                printf ("%c%02X", i ? ':' : ' ', bd->bi_enetaddr[i]);
 
299
        }
 
300
 
252
301
#if defined(CONFIG_HAS_ETH1)
253
 
        print_eth(1);
 
302
        puts ("\neth1addr    =");
 
303
        for (i=0; i<6; ++i) {
 
304
                printf ("%c%02X", i ? ':' : ' ', bd->bi_enet1addr[i]);
 
305
        }
254
306
#endif
 
307
 
255
308
#if defined(CONFIG_HAS_ETH2)
256
 
        print_eth(2);
 
309
        puts ("\neth2addr    =");
 
310
        for (i=0; i<6; ++i) {
 
311
                printf ("%c%02X", i ? ':' : ' ', bd->bi_enet2addr[i]);
 
312
        }
257
313
#endif
 
314
 
258
315
#if defined(CONFIG_HAS_ETH3)
259
 
        print_eth(3);
 
316
        puts ("\neth3addr    =");
 
317
        for (i=0; i<6; ++i) {
 
318
                printf ("%c%02X", i ? ':' : ' ', bd->bi_enet3addr[i]);
 
319
        }
260
320
#endif
261
321
 
262
 
        printf ("ip_addr     = %pI4\n", &bd->bi_ip_addr);
 
322
        puts ("\nip_addr     = ");
 
323
        print_IPaddr (bd->bi_ip_addr);
263
324
#endif
264
 
        printf ("baudrate    = %ld bps\n", bd->bi_baudrate);
 
325
        printf ("\nbaudrate    = %d bps\n", bd->bi_baudrate);
265
326
 
266
327
        return 0;
267
328
}
268
329
 
269
330
#elif defined(CONFIG_BLACKFIN)
270
 
static void print_str(const char *, const char *);
271
331
 
272
332
int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
273
333
{
 
334
        int i;
274
335
        bd_t *bd = gd->bd;
275
 
        char buf[32];
276
336
 
277
337
        printf("U-Boot      = %s\n", bd->bi_r_version);
278
338
        printf("CPU         = %s\n", bd->bi_cpu);
279
339
        printf("Board       = %s\n", bd->bi_board_name);
280
 
        print_str("VCO",         strmhz(buf, bd->bi_vco));
281
 
        print_str("CCLK",        strmhz(buf, bd->bi_cclk));
282
 
        print_str("SCLK",        strmhz(buf, bd->bi_sclk));
 
340
        printf("VCO         = %lu MHz\n", bd->bi_vco / 1000000);
 
341
        printf("CCLK        = %lu MHz\n", bd->bi_cclk / 1000000);
 
342
        printf("SCLK        = %lu MHz\n", bd->bi_sclk / 1000000);
283
343
 
284
344
        print_num("boot_params", (ulong)bd->bi_boot_params);
285
345
        print_num("memstart",    (ulong)bd->bi_memstart);
288
348
        print_num("flashsize",   (ulong)bd->bi_flashsize);
289
349
        print_num("flashoffset", (ulong)bd->bi_flashoffset);
290
350
 
291
 
        print_eth(0);
292
 
        printf("ip_addr     = %pI4\n", &bd->bi_ip_addr);
293
 
        printf("baudrate    = %d bps\n", bd->bi_baudrate);
 
351
        puts("ethaddr     =");
 
352
        for (i = 0; i < 6; ++i)
 
353
                printf("%c%02X", i ? ':' : ' ', bd->bi_enetaddr[i]);
 
354
        puts("\nip_addr     = ");
 
355
        print_IPaddr(bd->bi_ip_addr);
 
356
        printf("\nbaudrate    = %d bps\n", bd->bi_baudrate);
294
357
 
295
358
        return 0;
296
359
}
299
362
 
300
363
int do_bdinfo ( cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])
301
364
{
 
365
        int i;
302
366
        bd_t *bd = gd->bd;
303
367
 
304
368
        print_num ("boot_params",       (ulong)bd->bi_boot_params);
308
372
        print_num ("flashsize",         (ulong)bd->bi_flashsize);
309
373
        print_num ("flashoffset",       (ulong)bd->bi_flashoffset);
310
374
 
311
 
        print_eth(0);
312
 
        printf ("ip_addr     = %pI4\n", &bd->bi_ip_addr);
313
 
        printf ("baudrate    = %d bps\n", bd->bi_baudrate);
 
375
        puts ("ethaddr     =");
 
376
        for (i=0; i<6; ++i) {
 
377
                printf ("%c%02X", i ? ':' : ' ', bd->bi_enetaddr[i]);
 
378
        }
 
379
        puts ("\nip_addr     = ");
 
380
        print_IPaddr (bd->bi_ip_addr);
 
381
        printf ("\nbaudrate    = %d bps\n", bd->bi_baudrate);
314
382
 
315
383
        return 0;
316
384
}
334
402
        }
335
403
 
336
404
#if defined(CONFIG_CMD_NET)
337
 
        print_eth(0);
338
 
        printf ("ip_addr     = %pI4\n", &bd->bi_ip_addr);
 
405
        puts ("ethaddr     =");
 
406
        for (i=0; i<6; ++i) {
 
407
                printf ("%c%02X", i ? ':' : ' ', bd->bi_enetaddr[i]);
 
408
        }
 
409
        puts  ( "\n"
 
410
                "ip_addr     = ");
 
411
        print_IPaddr (bd->bi_ip_addr);
339
412
#endif
340
 
        printf ("baudrate    = %d bps\n", bd->bi_baudrate);
 
413
        printf ("\n"
 
414
                "baudrate    = %d bps\n", bd->bi_baudrate);
341
415
 
342
416
        return 0;
343
417
}
349
423
        printf ("%-12s= 0x%08lX\n", name, value);
350
424
}
351
425
 
352
 
#if !defined(CONFIG_ARM) || defined(CONFIG_CMD_NET)
353
 
static void print_eth(int idx)
354
 
{
355
 
        char name[10], *val;
356
 
        if (idx)
357
 
                sprintf(name, "eth%iaddr", idx);
358
 
        else
359
 
                strcpy(name, "ethaddr");
360
 
        val = getenv(name);
361
 
        if (!val)
362
 
                val = "(not set)";
363
 
        printf("%-12s= %s\n", name, val);
364
 
}
365
 
#endif
366
 
 
367
426
#ifndef CONFIG_ARM
368
427
static void print_lnum(const char *name, u64 value)
369
428
{
371
430
}
372
431
#endif
373
432
 
374
 
#if defined(CONFIG_PPC) || defined(CONFIG_M68K) || defined(CONFIG_BLACKFIN)
 
433
#if defined(CONFIG_PPC) || defined(CONFIG_M68K)
375
434
static void print_str(const char *name, const char *str)
376
435
{
377
436
        printf ("%-12s= %6s MHz\n", name, str);
383
442
 
384
443
U_BOOT_CMD(
385
444
        bdinfo, 1,      1,      do_bdinfo,
386
 
        "print Board Info structure",
387
 
        ""
 
445
        "bdinfo  - print Board Info structure\n",
 
446
        NULL
388
447
);