net: use netdev_mc_count and netdev_mc_empty when appropriate
[safe/jmp/linux-2.6] / drivers / net / yellowfin.c
index 8b231b3..5c88024 100644 (file)
@@ -1301,15 +1301,16 @@ static void set_rx_mode(struct net_device *dev)
        iowrite16(cfg_value & ~0x1000, ioaddr + Cnfg);
        if (dev->flags & IFF_PROMISC) {                 /* Set promiscuous. */
                iowrite16(0x000F, ioaddr + AddrMode);
-       } else if ((dev->mc_count > 64)  ||  (dev->flags & IFF_ALLMULTI)) {
+       } else if ((netdev_mc_count(dev) > 64) ||
+                  (dev->flags & IFF_ALLMULTI)) {
                /* Too many to filter well, or accept all multicasts. */
                iowrite16(0x000B, ioaddr + AddrMode);
-       } else if (dev->mc_count > 0) { /* Must use the multicast hash table. */
+       } else if (!netdev_mc_empty(dev)) { /* Must use the multicast hash table. */
                struct dev_mc_list *mclist;
                u16 hash_table[4];
                int i;
                memset(hash_table, 0, sizeof(hash_table));
-               for (i = 0, mclist = dev->mc_list; mclist && i < dev->mc_count;
+               for (i = 0, mclist = dev->mc_list; mclist && i < netdev_mc_count(dev);
                         i++, mclist = mclist->next) {
                        unsigned int bit;