summaryrefslogtreecommitdiff
path: root/common/cmd_bdinfo.c
diff options
context:
space:
mode:
authorMichal Simek <michal.simek@xilinx.com>2013-01-23 12:21:18 +0100
committerMichal Simek <michal.simek@xilinx.com>2013-02-04 12:07:09 +0100
commit9fc6a06ad36994db21ca77013a8ba1c2a88e359c (patch)
tree11f0f10876a178a3fb7188aaf19b79c48dee4b16 /common/cmd_bdinfo.c
parent2281ba5172b2855ed3af2251832332b3e9e16f6c (diff)
downloadu-boot-imx-9fc6a06ad36994db21ca77013a8ba1c2a88e359c.zip
u-boot-imx-9fc6a06ad36994db21ca77013a8ba1c2a88e359c.tar.gz
u-boot-imx-9fc6a06ad36994db21ca77013a8ba1c2a88e359c.tar.bz2
common: cmd_bdinfo: Fix bdinfo to show all MACs for Microblaze and ARM
- Show all ethernet MACs in the system. - Show current ethernet device Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Diffstat (limited to 'common/cmd_bdinfo.c')
-rw-r--r--common/cmd_bdinfo.c25
1 files changed, 21 insertions, 4 deletions
diff --git a/common/cmd_bdinfo.c b/common/cmd_bdinfo.c
index 48cdd16..65a5e08 100644
--- a/common/cmd_bdinfo.c
+++ b/common/cmd_bdinfo.c
@@ -51,6 +51,25 @@ static void print_eth(int idx)
}
__maybe_unused
+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\n", i, dev->name);
+ print_eth(i);
+ i++;
+ }
+ } while (dev);
+
+ printf("current eth = %s\n", eth_get_name());
+ printf("ip_addr = %s\n", getenv("ipaddr"));
+}
+
+__maybe_unused
static void print_lnum(const char *name, unsigned long long value)
{
printf("%-12s= 0x%.8llX\n", name, value);
@@ -195,8 +214,7 @@ 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);
- printf("ip_addr = %s\n", getenv("ipaddr"));
+ print_eths();
#endif
printf("baudrate = %u bps\n", (ulong)bd->bi_baudrate);
return 0;
@@ -366,8 +384,7 @@ int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
}
#if defined(CONFIG_CMD_NET)
- print_eth(0);
- printf("ip_addr = %s\n", getenv("ipaddr"));
+ print_eths();
#endif
printf("baudrate = %u bps\n", bd->bi_baudrate);
#if !(defined(CONFIG_SYS_ICACHE_OFF) && defined(CONFIG_SYS_DCACHE_OFF))