diff options
Diffstat (limited to 'drivers/net/smsc911x.c')
-rw-r--r-- | drivers/net/smsc911x.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/net/smsc911x.c b/drivers/net/smsc911x.c index ffbaa608e002..cc559741b0fa 100644 --- a/drivers/net/smsc911x.c +++ b/drivers/net/smsc911x.c | |||
@@ -1335,7 +1335,6 @@ static int smsc911x_hard_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
1335 | smsc911x_tx_writefifo(pdata, (unsigned int *)bufp, wrsz); | 1335 | smsc911x_tx_writefifo(pdata, (unsigned int *)bufp, wrsz); |
1336 | freespace -= (skb->len + 32); | 1336 | freespace -= (skb->len + 32); |
1337 | dev_kfree_skb(skb); | 1337 | dev_kfree_skb(skb); |
1338 | dev->trans_start = jiffies; | ||
1339 | 1338 | ||
1340 | if (unlikely(smsc911x_tx_get_txstatcount(pdata) >= 30)) | 1339 | if (unlikely(smsc911x_tx_get_txstatcount(pdata) >= 30)) |
1341 | smsc911x_tx_update_txcounters(dev); | 1340 | smsc911x_tx_update_txcounters(dev); |
@@ -1382,13 +1381,13 @@ static void smsc911x_set_multicast_list(struct net_device *dev) | |||
1382 | /* Enabling specific multicast addresses */ | 1381 | /* Enabling specific multicast addresses */ |
1383 | unsigned int hash_high = 0; | 1382 | unsigned int hash_high = 0; |
1384 | unsigned int hash_low = 0; | 1383 | unsigned int hash_low = 0; |
1385 | struct dev_mc_list *mc_list; | 1384 | struct netdev_hw_addr *ha; |
1386 | 1385 | ||
1387 | pdata->set_bits_mask = MAC_CR_HPFILT_; | 1386 | pdata->set_bits_mask = MAC_CR_HPFILT_; |
1388 | pdata->clear_bits_mask = (MAC_CR_PRMS_ | MAC_CR_MCPAS_); | 1387 | pdata->clear_bits_mask = (MAC_CR_PRMS_ | MAC_CR_MCPAS_); |
1389 | 1388 | ||
1390 | netdev_for_each_mc_addr(mc_list, dev) { | 1389 | netdev_for_each_mc_addr(ha, dev) { |
1391 | unsigned int bitnum = smsc911x_hash(mc_list->dmi_addr); | 1390 | unsigned int bitnum = smsc911x_hash(ha->addr); |
1392 | unsigned int mask = 0x01 << (bitnum & 0x1F); | 1391 | unsigned int mask = 0x01 << (bitnum & 0x1F); |
1393 | 1392 | ||
1394 | if (bitnum & 0x20) | 1393 | if (bitnum & 0x20) |