bdinfo: Fix bdinfo to show all MACs for Microblaze and ARM
PATCH 1/1 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 <[email protected]>
--- common/cmd_bdinfo.c | 32 ++++++++++++++++++++++++++++++-- 1 files changed, 30 insertions(+), 2 deletions(-)
common/cmd_bdinfo.c +30 -2
@@ -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);
Signature · 1 line
1.5.5.6
PATCH 1/1 bdinfo: Fix bdinfo to show all MACs for Microblaze and ARM
Dear Michal Simek,
Quoted 59 lines · In message <[email protected]> you wrote:
- Show all ethernet MACs in the system.
- Show current ethernet deviceSigned-off-by Michal Simek <[email protected]>--- common/cmd_bdinfo.c | 32 ++++++++++++++++++++++++++++++-- 1 files changed, 30 insertions(+), 2 deletions(-)common/cmd_bdinfo.c +20
-2@@ -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 ;
common/cmd_bdinfo.c int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) · line 372
Quoted 10 lines
common/cmd_bdinfo.c +10
-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 ());
Instead of repeating this code we should turn it into a function.
Best regards,
Wolfgang Denk
Signature · 5 lines
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de "A complex system that works is invariably found to have evolved from a simple system that worked." - John Gall, _Systemantics_
PATCH 1/1 bdinfo: Fix bdinfo to show all MACs for Microblaze and ARM
In reply to Michal SimekQuoted 30 lines · Michal Simek
- Show all ethernet MACs in the system.
- Show current ethernet deviceSigned-off-by Michal Simek <[email protected]>--- common/cmd_bdinfo.c | 32 ++++++++++++++++++++++++++++++-- 1 files changed, 30 insertions(+), 2 deletions(-)common/cmd_bdinfo.c +5
-0@@ -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);common/cmd_bdinfo.c +0
-1print_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 );
common/cmd_bdinfo.c int do_bdinfo(cmd_tbl_t *cmdtp, int flag, int argc, · line 181
Quoted 10 lines
common/cmd_bdinfo.c +10
-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++; + }
i = 0;
do {
dev = eth_get_dev_by_index(i++);
} while (dev);i--;
... or something