aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/atp.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/atp.c')
-rw-r--r--drivers/net/atp.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/net/atp.c b/drivers/net/atp.c
index 55039d44dc47..bd2f9d331dac 100644
--- a/drivers/net/atp.c
+++ b/drivers/net/atp.c
@@ -547,7 +547,7 @@ static void tx_timeout(struct net_device *dev)
547 dev->stats.tx_errors++; 547 dev->stats.tx_errors++;
548 /* Try to restart the adapter. */ 548 /* Try to restart the adapter. */
549 hardware_init(dev); 549 hardware_init(dev);
550 dev->trans_start = jiffies; 550 dev->trans_start = jiffies; /* prevent tx timeout */
551 netif_wake_queue(dev); 551 netif_wake_queue(dev);
552 dev->stats.tx_errors++; 552 dev->stats.tx_errors++;
553} 553}
@@ -586,7 +586,6 @@ static netdev_tx_t atp_send_packet(struct sk_buff *skb,
586 write_reg(ioaddr, IMR, ISR_RxOK | ISR_TxErr | ISR_TxOK); 586 write_reg(ioaddr, IMR, ISR_RxOK | ISR_TxErr | ISR_TxOK);
587 write_reg_high(ioaddr, IMR, ISRh_RxErr); 587 write_reg_high(ioaddr, IMR, ISRh_RxErr);
588 588
589 dev->trans_start = jiffies;
590 dev_kfree_skb (skb); 589 dev_kfree_skb (skb);
591 return NETDEV_TX_OK; 590 return NETDEV_TX_OK;
592} 591}
@@ -803,7 +802,6 @@ static void net_rx(struct net_device *dev)
803 done: 802 done:
804 write_reg(ioaddr, CMR1, CMR1_NextPkt); 803 write_reg(ioaddr, CMR1, CMR1_NextPkt);
805 lp->last_rx_time = jiffies; 804 lp->last_rx_time = jiffies;
806 return;
807} 805}
808 806
809static void read_block(long ioaddr, int length, unsigned char *p, int data_mode) 807static void read_block(long ioaddr, int length, unsigned char *p, int data_mode)
@@ -882,11 +880,11 @@ static void set_rx_mode_8012(struct net_device *dev)
882 memset(mc_filter, 0xff, sizeof(mc_filter)); 880 memset(mc_filter, 0xff, sizeof(mc_filter));
883 new_mode = CMR2h_Normal; 881 new_mode = CMR2h_Normal;
884 } else { 882 } else {
885 struct dev_mc_list *mclist; 883 struct netdev_hw_addr *ha;
886 884
887 memset(mc_filter, 0, sizeof(mc_filter)); 885 memset(mc_filter, 0, sizeof(mc_filter));
888 netdev_for_each_mc_addr(mclist, dev) { 886 netdev_for_each_mc_addr(ha, dev) {
889 int filterbit = ether_crc_le(ETH_ALEN, mclist->dmi_addr) & 0x3f; 887 int filterbit = ether_crc_le(ETH_ALEN, ha->addr) & 0x3f;
890 mc_filter[filterbit >> 5] |= 1 << (filterbit & 31); 888 mc_filter[filterbit >> 5] |= 1 << (filterbit & 31);
891 } 889 }
892 new_mode = CMR2h_Normal; 890 new_mode = CMR2h_Normal;