diff options
Diffstat (limited to 'drivers/net/typhoon.c')
-rw-r--r-- | drivers/net/typhoon.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/drivers/net/typhoon.c b/drivers/net/typhoon.c index 98d818daa77e..22bde49262c0 100644 --- a/drivers/net/typhoon.c +++ b/drivers/net/typhoon.c | |||
@@ -881,8 +881,6 @@ typhoon_start_tx(struct sk_buff *skb, struct net_device *dev) | |||
881 | wmb(); | 881 | wmb(); |
882 | iowrite32(txRing->lastWrite, tp->tx_ioaddr + txRing->writeRegister); | 882 | iowrite32(txRing->lastWrite, tp->tx_ioaddr + txRing->writeRegister); |
883 | 883 | ||
884 | dev->trans_start = jiffies; | ||
885 | |||
886 | /* If we don't have room to put the worst case packet on the | 884 | /* If we don't have room to put the worst case packet on the |
887 | * queue, then we must stop the queue. We need 2 extra | 885 | * queue, then we must stop the queue. We need 2 extra |
888 | * descriptors -- one to prevent ring wrap, and one for the | 886 | * descriptors -- one to prevent ring wrap, and one for the |
@@ -920,11 +918,11 @@ typhoon_set_rx_mode(struct net_device *dev) | |||
920 | /* Too many to match, or accept all multicasts. */ | 918 | /* Too many to match, or accept all multicasts. */ |
921 | filter |= TYPHOON_RX_FILTER_ALL_MCAST; | 919 | filter |= TYPHOON_RX_FILTER_ALL_MCAST; |
922 | } else if (!netdev_mc_empty(dev)) { | 920 | } else if (!netdev_mc_empty(dev)) { |
923 | struct dev_mc_list *mclist; | 921 | struct netdev_hw_addr *ha; |
924 | 922 | ||
925 | memset(mc_filter, 0, sizeof(mc_filter)); | 923 | memset(mc_filter, 0, sizeof(mc_filter)); |
926 | netdev_for_each_mc_addr(mclist, dev) { | 924 | netdev_for_each_mc_addr(ha, dev) { |
927 | int bit = ether_crc(ETH_ALEN, mclist->dmi_addr) & 0x3f; | 925 | int bit = ether_crc(ETH_ALEN, ha->addr) & 0x3f; |
928 | mc_filter[bit >> 5] |= 1 << (bit & 0x1f); | 926 | mc_filter[bit >> 5] |= 1 << (bit & 0x1f); |
929 | } | 927 | } |
930 | 928 | ||