summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/usb/asix.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/net/usb/asix.c b/drivers/net/usb/asix.c
index d0937c4634c9..8414bdc21235 100644
--- a/drivers/net/usb/asix.c
+++ b/drivers/net/usb/asix.c
@@ -978,6 +978,7 @@ static int ax88772_link_reset(struct usbnet *dev)
978 978
979static int ax88772_reset(struct usbnet *dev) 979static int ax88772_reset(struct usbnet *dev)
980{ 980{
981 struct asix_data *data = (struct asix_data *)&dev->data;
981 int ret, embd_phy; 982 int ret, embd_phy;
982 u16 rx_ctl; 983 u16 rx_ctl;
983 984
@@ -1055,6 +1056,13 @@ static int ax88772_reset(struct usbnet *dev)
1055 goto out; 1056 goto out;
1056 } 1057 }
1057 1058
1059 /* Rewrite MAC address */
1060 memcpy(data->mac_addr, dev->net->dev_addr, ETH_ALEN);
1061 ret = asix_write_cmd(dev, AX_CMD_WRITE_NODE_ID, 0, 0, ETH_ALEN,
1062 data->mac_addr);
1063 if (ret < 0)
1064 goto out;
1065
1058 /* Set RX_CTL to default values with 2k buffer, and enable cactus */ 1066 /* Set RX_CTL to default values with 2k buffer, and enable cactus */
1059 ret = asix_write_rx_ctl(dev, AX_DEFAULT_RX_CTL); 1067 ret = asix_write_rx_ctl(dev, AX_DEFAULT_RX_CTL);
1060 if (ret < 0) 1068 if (ret < 0)