diff options
Diffstat (limited to 'drivers/net/arm/at91_ether.c')
-rw-r--r-- | drivers/net/arm/at91_ether.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/arm/at91_ether.c b/drivers/net/arm/at91_ether.c index c8bc60a7040c..17d85d98987d 100644 --- a/drivers/net/arm/at91_ether.c +++ b/drivers/net/arm/at91_ether.c | |||
@@ -563,7 +563,7 @@ static void at91ether_sethashtable(struct net_device *dev) | |||
563 | mc_filter[0] = mc_filter[1] = 0; | 563 | mc_filter[0] = mc_filter[1] = 0; |
564 | 564 | ||
565 | curr = dev->mc_list; | 565 | curr = dev->mc_list; |
566 | for (i = 0; i < dev->mc_count; i++, curr = curr->next) { | 566 | for (i = 0; i < netdev_mc_count(dev); i++, curr = curr->next) { |
567 | if (!curr) break; /* unexpected end of list */ | 567 | if (!curr) break; /* unexpected end of list */ |
568 | 568 | ||
569 | bitnr = hash_get_index(curr->dmi_addr); | 569 | bitnr = hash_get_index(curr->dmi_addr); |
@@ -592,7 +592,7 @@ static void at91ether_set_multicast_list(struct net_device *dev) | |||
592 | at91_emac_write(AT91_EMAC_HSH, -1); | 592 | at91_emac_write(AT91_EMAC_HSH, -1); |
593 | at91_emac_write(AT91_EMAC_HSL, -1); | 593 | at91_emac_write(AT91_EMAC_HSL, -1); |
594 | cfg |= AT91_EMAC_MTI; | 594 | cfg |= AT91_EMAC_MTI; |
595 | } else if (dev->mc_count > 0) { /* Enable specific multicasts */ | 595 | } else if (!netdev_mc_empty(dev)) { /* Enable specific multicasts */ |
596 | at91ether_sethashtable(dev); | 596 | at91ether_sethashtable(dev); |
597 | cfg |= AT91_EMAC_MTI; | 597 | cfg |= AT91_EMAC_MTI; |
598 | } else if (dev->flags & (~IFF_ALLMULTI)) { /* Disable all multicast mode */ | 598 | } else if (dev->flags & (~IFF_ALLMULTI)) { /* Disable all multicast mode */ |