[U-Boot] [PATCH] bdinfo: Fix bdinfo to show all MACs for Microblaze and ARM
Michal Simek
monstr at monstr.eu
Wed Aug 31 11:38:31 CEST 2011
- Show all ethernet MACs in the system.
- Show current ethernet device
Signed-off-by: Michal Simek <monstr at monstr.eu>
---
common/cmd_bdinfo.c | 32 ++++++++++++++++++++++++++++++--
1 files changed, 30 insertions(+), 2 deletions(-)
diff --git a/common/cmd_bdinfo.c b/common/cmd_bdinfo.c
index 6051120..01441de 100644
--- a/common/cmd_bdinfo.c
+++ b/common/cmd_bdinfo.c
@@ -153,6 +153,11 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
{
+#if defined(CONFIG_CMD_NET)
+ struct eth_device *dev;
+ int i;
+#endif
+
bd_t *bd = gd->bd;
print_num("mem start ", (ulong)bd->bi_memstart);
print_lnum("mem size ", (u64)bd->bi_memsize);
@@ -164,7 +169,17 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
print_num("sram size ", (ulong)bd->bi_sramsize);
#endif
#if defined(CONFIG_CMD_NET)
- print_eth(0);
+ i = 0;
+ while (1) {
+ dev = eth_get_dev_by_index(i);
+ if (dev) {
+ printf("eth%dname = %s\n", i, dev->name);
+ print_eth(i);
+ } else
+ break;
+ i++;
+ }
+ printf("current eth = %s\n", eth_get_name());
printf("ip_addr = %pI4\n", &bd->bi_ip_addr);
#endif
printf("baudrate = %ld bps\n", (ulong)bd->bi_baudrate);
@@ -330,6 +345,9 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
{
int i;
bd_t *bd = gd->bd;
+#if defined(CONFIG_CMD_NET)
+ struct eth_device *dev;
+#endif
print_num("arch_number", bd->bi_arch_number);
print_num("boot_params", (ulong)bd->bi_boot_params);
@@ -341,7 +359,17 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
}
#if defined(CONFIG_CMD_NET)
- print_eth(0);
+ i = 0;
+ while (1) {
+ dev = eth_get_dev_by_index(i)
+ if (dev) {
+ printf("eth%dname = %s\n", i, dev->name);
+ print_eth(i);
+ } else
+ break;
+ i++;
+ }
+ printf("current eth = %s\n", eth_get_name());
printf("ip_addr = %pI4\n", &bd->bi_ip_addr);
#endif
printf("baudrate = %d bps\n", bd->bi_baudrate);
--
1.5.5.6
More information about the U-Boot
mailing list