diff options
Diffstat (limited to 'drivers/net/usb/smsc95xx.c')
-rw-r--r-- | drivers/net/usb/smsc95xx.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/usb/smsc95xx.c b/drivers/net/usb/smsc95xx.c index 3135af63d378..12a3c88c5282 100644 --- a/drivers/net/usb/smsc95xx.c +++ b/drivers/net/usb/smsc95xx.c | |||
@@ -385,13 +385,13 @@ static void smsc95xx_set_multicast(struct net_device *netdev) | |||
385 | pdata->mac_cr |= MAC_CR_MCPAS_; | 385 | pdata->mac_cr |= MAC_CR_MCPAS_; |
386 | pdata->mac_cr &= ~(MAC_CR_PRMS_ | MAC_CR_HPFILT_); | 386 | pdata->mac_cr &= ~(MAC_CR_PRMS_ | MAC_CR_HPFILT_); |
387 | } else if (!netdev_mc_empty(dev->net)) { | 387 | } else if (!netdev_mc_empty(dev->net)) { |
388 | struct dev_mc_list *mc_list; | 388 | struct netdev_hw_addr *ha; |
389 | 389 | ||
390 | pdata->mac_cr |= MAC_CR_HPFILT_; | 390 | pdata->mac_cr |= MAC_CR_HPFILT_; |
391 | pdata->mac_cr &= ~(MAC_CR_PRMS_ | MAC_CR_MCPAS_); | 391 | pdata->mac_cr &= ~(MAC_CR_PRMS_ | MAC_CR_MCPAS_); |
392 | 392 | ||
393 | netdev_for_each_mc_addr(mc_list, netdev) { | 393 | netdev_for_each_mc_addr(ha, netdev) { |
394 | u32 bitnum = smsc95xx_hash(mc_list->dmi_addr); | 394 | u32 bitnum = smsc95xx_hash(ha->addr); |
395 | u32 mask = 0x01 << (bitnum & 0x1F); | 395 | u32 mask = 0x01 << (bitnum & 0x1F); |
396 | if (bitnum & 0x20) | 396 | if (bitnum & 0x20) |
397 | hash_hi |= mask; | 397 | hash_hi |= mask; |