qlcnic: change adapter name display
[safe/jmp/linux-2.6] / drivers / net / ni52.c
index b42f5e5..9bddb5f 100644 (file)
@@ -109,7 +109,6 @@ static int fifo = 0x8;      /* don't change */
 #include <linux/string.h>
 #include <linux/errno.h>
 #include <linux/ioport.h>
-#include <linux/slab.h>
 #include <linux/interrupt.h>
 #include <linux/delay.h>
 #include <linux/init.h>
@@ -596,8 +595,8 @@ static int init586(struct net_device *dev)
        struct iasetup_cmd_struct __iomem *ias_cmd;
        struct tdr_cmd_struct __iomem *tdr_cmd;
        struct mcsetup_cmd_struct __iomem *mc_cmd;
-       struct dev_mc_list *dmi = dev->mc_list;
-       int num_addrs = dev->mc_count;
+       struct netdev_hw_addr *ha;
+       int num_addrs = netdev_mc_count(dev);
 
        ptr = p->scb + 1;
 
@@ -724,9 +723,9 @@ static int init586(struct net_device *dev)
                writew(0xffff, &mc_cmd->cmd_link);
                writew(num_addrs * 6, &mc_cmd->mc_cnt);
 
-               for (i = 0; i < num_addrs; i++, dmi = dmi->next)
-                       memcpy_toio(mc_cmd->mc_list[i],
-                                                       dmi->dmi_addr, 6);
+               i = 0;
+               netdev_for_each_mc_addr(ha, dev)
+                       memcpy_toio(mc_cmd->mc_list[i++], ha->addr, 6);
 
                writew(make16(mc_cmd), &p->scb->cbl_offset);
                writeb(CUC_START, &p->scb->cmd_cuc);
@@ -1148,7 +1147,7 @@ static void ni52_timeout(struct net_device *dev)
                writeb(CUC_START, &p->scb->cmd_cuc);
                ni_attn586();
                wait_for_scb_cmd(dev);
-               dev->trans_start = jiffies;
+               dev->trans_start = jiffies; /* prevent tx timeout */
                return 0;
        }
 #endif
@@ -1166,7 +1165,7 @@ static void ni52_timeout(struct net_device *dev)
                ni52_close(dev);
                ni52_open(dev);
        }
-       dev->trans_start = jiffies;
+       dev->trans_start = jiffies; /* prevent tx timeout */
 }
 
 /******************************************************
@@ -1219,7 +1218,6 @@ static netdev_tx_t ni52_send_packet(struct sk_buff *skb,
                        writeb(CUC_START, &p->scb->cmd_cuc);
                }
                ni_attn586();
-               dev->trans_start = jiffies;
                if (!i)
                        dev_kfree_skb(skb);
                wait_for_scb_cmd(dev);
@@ -1241,7 +1239,6 @@ static netdev_tx_t ni52_send_packet(struct sk_buff *skb,
        writew(0, &p->nop_cmds[next_nop]->cmd_status);
 
        writew(make16(p->xmit_cmds[0]), &p->nop_cmds[p->nop_point]->cmd_link);
-       dev->trans_start = jiffies;
        p->nop_point = next_nop;
        dev_kfree_skb(skb);
 #      endif
@@ -1257,7 +1254,6 @@ static netdev_tx_t ni52_send_packet(struct sk_buff *skb,
        writew(0, &p->nop_cmds[next_nop]->cmd_status);
        writew(make16(p->xmit_cmds[p->xmit_count]),
                                &p->nop_cmds[p->xmit_count]->cmd_link);
-       dev->trans_start = jiffies;
        p->xmit_count = next_nop;
        {
                unsigned long flags;