|
@@ -937,6 +937,7 @@ static int ax88179_set_mac_addr(struct net_device *net, void *p)
|
|
{
|
|
{
|
|
struct usbnet *dev = netdev_priv(net);
|
|
struct usbnet *dev = netdev_priv(net);
|
|
struct sockaddr *addr = p;
|
|
struct sockaddr *addr = p;
|
|
|
|
+ int ret;
|
|
|
|
|
|
if (netif_running(net))
|
|
if (netif_running(net))
|
|
return -EBUSY;
|
|
return -EBUSY;
|
|
@@ -946,8 +947,12 @@ static int ax88179_set_mac_addr(struct net_device *net, void *p)
|
|
memcpy(net->dev_addr, addr->sa_data, ETH_ALEN);
|
|
memcpy(net->dev_addr, addr->sa_data, ETH_ALEN);
|
|
|
|
|
|
/* Set the MAC address */
|
|
/* Set the MAC address */
|
|
- return ax88179_write_cmd(dev, AX_ACCESS_MAC, AX_NODE_ID, ETH_ALEN,
|
|
|
|
|
|
+ ret = ax88179_write_cmd(dev, AX_ACCESS_MAC, AX_NODE_ID, ETH_ALEN,
|
|
ETH_ALEN, net->dev_addr);
|
|
ETH_ALEN, net->dev_addr);
|
|
|
|
+ if (ret < 0)
|
|
|
|
+ return ret;
|
|
|
|
+
|
|
|
|
+ return 0;
|
|
}
|
|
}
|
|
|
|
|
|
static const struct net_device_ops ax88179_netdev_ops = {
|
|
static const struct net_device_ops ax88179_netdev_ops = {
|