diff options
Diffstat (limited to 'drivers/net/cpmac.c')
-rw-r--r-- | drivers/net/cpmac.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/net/cpmac.c b/drivers/net/cpmac.c index bf2072e54200..b85c81f60d10 100644 --- a/drivers/net/cpmac.c +++ b/drivers/net/cpmac.c | |||
@@ -328,7 +328,6 @@ static int cpmac_config(struct net_device *dev, struct ifmap *map) | |||
328 | static void cpmac_set_multicast_list(struct net_device *dev) | 328 | static void cpmac_set_multicast_list(struct net_device *dev) |
329 | { | 329 | { |
330 | struct dev_mc_list *iter; | 330 | struct dev_mc_list *iter; |
331 | int i; | ||
332 | u8 tmp; | 331 | u8 tmp; |
333 | u32 mbp, bit, hash[2] = { 0, }; | 332 | u32 mbp, bit, hash[2] = { 0, }; |
334 | struct cpmac_priv *priv = netdev_priv(dev); | 333 | struct cpmac_priv *priv = netdev_priv(dev); |
@@ -348,8 +347,7 @@ static void cpmac_set_multicast_list(struct net_device *dev) | |||
348 | * cpmac uses some strange mac address hashing | 347 | * cpmac uses some strange mac address hashing |
349 | * (not crc32) | 348 | * (not crc32) |
350 | */ | 349 | */ |
351 | for (i = 0, iter = dev->mc_list; i < dev->mc_count; | 350 | netdev_for_each_mc_addr(iter, dev) { |
352 | i++, iter = iter->next) { | ||
353 | bit = 0; | 351 | bit = 0; |
354 | tmp = iter->dmi_addr[0]; | 352 | tmp = iter->dmi_addr[0]; |
355 | bit ^= (tmp >> 2) ^ (tmp << 4); | 353 | bit ^= (tmp >> 2) ^ (tmp << 4); |