diff options
Diffstat (limited to 'drivers/net/netxen/netxen_nic_main.c')
| -rw-r--r-- | drivers/net/netxen/netxen_nic_main.c | 4 | 
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/net/netxen/netxen_nic_main.c b/drivers/net/netxen/netxen_nic_main.c index 0b4a56a8c8d..3bf78dbfbf0 100644 --- a/drivers/net/netxen/netxen_nic_main.c +++ b/drivers/net/netxen/netxen_nic_main.c @@ -437,6 +437,7 @@ netxen_read_mac_addr(struct netxen_adapter *adapter)  		netdev->dev_addr[i] = *(p + 5 - i);  	memcpy(netdev->perm_addr, netdev->dev_addr, netdev->addr_len); +	memcpy(adapter->mac_addr, netdev->dev_addr, netdev->addr_len);  	/* set station address */ @@ -459,6 +460,7 @@ int netxen_nic_set_mac(struct net_device *netdev, void *p)  		netxen_napi_disable(adapter);  	} +	memcpy(adapter->mac_addr, addr->sa_data, netdev->addr_len);  	memcpy(netdev->dev_addr, addr->sa_data, netdev->addr_len);  	adapter->macaddr_set(adapter, addr->sa_data); @@ -956,7 +958,7 @@ netxen_nic_up(struct netxen_adapter *adapter, struct net_device *netdev)  		return err;  	}  	if (NX_IS_REVISION_P2(adapter->ahw.revision_id)) -		adapter->macaddr_set(adapter, netdev->dev_addr); +		adapter->macaddr_set(adapter, adapter->mac_addr);  	adapter->set_multi(netdev);  	adapter->set_mtu(adapter, netdev->mtu);  |