aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/sonic.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/sonic.c')
-rw-r--r--drivers/net/sonic.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/net/sonic.c b/drivers/net/sonic.c
index 287c251075e5..26e25d7f5829 100644
--- a/drivers/net/sonic.c
+++ b/drivers/net/sonic.c
@@ -174,7 +174,7 @@ static void sonic_tx_timeout(struct net_device *dev)
174 /* Try to restart the adaptor. */ 174 /* Try to restart the adaptor. */
175 sonic_init(dev); 175 sonic_init(dev);
176 lp->stats.tx_errors++; 176 lp->stats.tx_errors++;
177 dev->trans_start = jiffies; 177 dev->trans_start = jiffies; /* prevent tx timeout */
178 netif_wake_queue(dev); 178 netif_wake_queue(dev);
179} 179}
180 180
@@ -263,8 +263,6 @@ static int sonic_send_packet(struct sk_buff *skb, struct net_device *dev)
263 263
264 SONIC_WRITE(SONIC_CMD, SONIC_CR_TXP); 264 SONIC_WRITE(SONIC_CMD, SONIC_CR_TXP);
265 265
266 dev->trans_start = jiffies;
267
268 return NETDEV_TX_OK; 266 return NETDEV_TX_OK;
269} 267}
270 268
@@ -531,7 +529,7 @@ static void sonic_multicast_list(struct net_device *dev)
531{ 529{
532 struct sonic_local *lp = netdev_priv(dev); 530 struct sonic_local *lp = netdev_priv(dev);
533 unsigned int rcr; 531 unsigned int rcr;
534 struct dev_mc_list *dmi; 532 struct netdev_hw_addr *ha;
535 unsigned char *addr; 533 unsigned char *addr;
536 int i; 534 int i;
537 535
@@ -550,8 +548,8 @@ static void sonic_multicast_list(struct net_device *dev)
550 netdev_mc_count(dev)); 548 netdev_mc_count(dev));
551 sonic_set_cam_enable(dev, 1); /* always enable our own address */ 549 sonic_set_cam_enable(dev, 1); /* always enable our own address */
552 i = 1; 550 i = 1;
553 netdev_for_each_mc_addr(dmi, dev) { 551 netdev_for_each_mc_addr(ha, dev) {
554 addr = dmi->dmi_addr; 552 addr = ha->addr;
555 sonic_cda_put(dev, i, SONIC_CD_CAP0, addr[1] << 8 | addr[0]); 553 sonic_cda_put(dev, i, SONIC_CD_CAP0, addr[1] << 8 | addr[0]);
556 sonic_cda_put(dev, i, SONIC_CD_CAP1, addr[3] << 8 | addr[2]); 554 sonic_cda_put(dev, i, SONIC_CD_CAP1, addr[3] << 8 | addr[2]);
557 sonic_cda_put(dev, i, SONIC_CD_CAP2, addr[5] << 8 | addr[4]); 555 sonic_cda_put(dev, i, SONIC_CD_CAP2, addr[5] << 8 | addr[4]);