aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/arm/am79c961a.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/arm/am79c961a.c')
-rw-r--r--drivers/net/arm/am79c961a.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/net/arm/am79c961a.c b/drivers/net/arm/am79c961a.c
index 1c3c1f94268..f1f58c5e27b 100644
--- a/drivers/net/arm/am79c961a.c
+++ b/drivers/net/arm/am79c961a.c
@@ -351,13 +351,13 @@ static struct net_device_stats *am79c961_getstats (struct net_device *dev)
351 return &priv->stats; 351 return &priv->stats;
352} 352}
353 353
354static void am79c961_mc_hash(struct dev_mc_list *dmi, unsigned short *hash) 354static void am79c961_mc_hash(char *addr, unsigned short *hash)
355{ 355{
356 if (dmi->dmi_addrlen == ETH_ALEN && dmi->dmi_addr[0] & 0x01) { 356 if (addr[0] & 0x01) {
357 int idx, bit; 357 int idx, bit;
358 u32 crc; 358 u32 crc;
359 359
360 crc = ether_crc_le(ETH_ALEN, dmi->dmi_addr); 360 crc = ether_crc_le(ETH_ALEN, addr);
361 361
362 idx = crc >> 30; 362 idx = crc >> 30;
363 bit = (crc >> 26) & 15; 363 bit = (crc >> 26) & 15;
@@ -387,8 +387,8 @@ static void am79c961_setmulticastlist (struct net_device *dev)
387 387
388 memset(multi_hash, 0x00, sizeof(multi_hash)); 388 memset(multi_hash, 0x00, sizeof(multi_hash));
389 389
390 for (dmi = dev->mc_list; dmi; dmi = dmi->next) 390 netdev_for_each_mc_addr(dmi, dev)
391 am79c961_mc_hash(dmi, multi_hash); 391 am79c961_mc_hash(dmi->dmi_addr, multi_hash);
392 } 392 }
393 393
394 spin_lock_irqsave(&priv->chip_lock, flags); 394 spin_lock_irqsave(&priv->chip_lock, flags);