diff options
Diffstat (limited to 'drivers/staging/rtl8192e/rtl8192e/r8192E_dev.c')
-rw-r--r-- | drivers/staging/rtl8192e/rtl8192e/r8192E_dev.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/staging/rtl8192e/rtl8192e/r8192E_dev.c b/drivers/staging/rtl8192e/rtl8192e/r8192E_dev.c index 358b629d2cc6..7f9dee42a04d 100644 --- a/drivers/staging/rtl8192e/rtl8192e/r8192E_dev.c +++ b/drivers/staging/rtl8192e/rtl8192e/r8192E_dev.c @@ -360,13 +360,16 @@ static void _rtl92e_read_eeprom_info(struct net_device *dev) priv->eeprom_CustomerID); if (!priv->AutoloadFailFlag) { + u8 addr[ETH_ALEN]; + for (i = 0; i < 6; i += 2) { usValue = rtl92e_eeprom_read(dev, (EEPROM_NODE_ADDRESS_BYTE_0 + i) >> 1); - *(u16 *)(&dev->dev_addr[i]) = usValue; + *(u16 *)(&addr[i]) = usValue; } + eth_hw_addr_set(dev, addr); } else { - ether_addr_copy(dev->dev_addr, bMac_Tmp_Addr); + eth_hw_addr_set(dev, bMac_Tmp_Addr); } RT_TRACE(COMP_INIT, "Permanent Address = %pM\n", |