net: write enetaddr down to hardware on env_callback
authorMarek Vasut <marex@denx.de>
Sat, 12 Nov 2016 15:28:40 +0000 (16:28 +0100)
committerTom Rini <trini@konsulko.com>
Sun, 13 Nov 2016 20:54:38 +0000 (15:54 -0500)
If mac-address is changed using "setenv ethaddr ...." command the new
mac-adress also must be written into the responsible ethernet driver.
This fixes the legacy ethernet handling.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Hannes Schmelzer <oe5hpm@oevsv.at>
Cc: Joe Hershberger <joe.hershberger@ni.com>
Cc: Tom Rini <trini@konsulko.com>
Reviewed-by: Hannes Schmelzer <oe5hpm@oevsv.at>
net/eth_legacy.c

index d6d7cee..1354f49 100644 (file)
@@ -118,6 +118,7 @@ static int on_ethaddr(const char *name, const char *value, enum env_op op,
                        case env_op_create:
                        case env_op_overwrite:
                                eth_parse_enetaddr(value, dev->enetaddr);
+                               eth_write_hwaddr(dev, "eth", dev->index);
                                break;
                        case env_op_delete:
                                memset(dev->enetaddr, 0, 6);