diff options
author | Jiri Pirko <jpirko@redhat.com> | 2010-04-01 17:22:57 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-04-03 17:22:15 -0400 |
commit | 22bedad3ce112d5ca1eaf043d4990fa2ed698c87 (patch) | |
tree | b6fba5688d48b1396f01d13ee53610dea7749c15 /drivers/net/ipg.c | |
parent | a748ee2426817a95b1f03012d8f339c45c722ae1 (diff) |
net: convert multicast list to list_head
Converts the list and the core manipulating with it to be the same as uc_list.
+uses two functions for adding/removing mc address (normal and "global"
variant) instead of a function parameter.
+removes dev_mcast.c completely.
+exposes netdev_hw_addr_list_* macros along with __hw_addr_* functions for
manipulation with lists on a sandbox (used in bonding and 80211 drivers)
Signed-off-by: Jiri Pirko <jpirko@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ipg.c')
-rw-r--r-- | drivers/net/ipg.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/ipg.c b/drivers/net/ipg.c index 0d7ad3f2d0f3..67cfc7d9d895 100644 --- a/drivers/net/ipg.c +++ b/drivers/net/ipg.c | |||
@@ -569,7 +569,7 @@ static int ipg_config_autoneg(struct net_device *dev) | |||
569 | static void ipg_nic_set_multicast_list(struct net_device *dev) | 569 | static void ipg_nic_set_multicast_list(struct net_device *dev) |
570 | { | 570 | { |
571 | void __iomem *ioaddr = ipg_ioaddr(dev); | 571 | void __iomem *ioaddr = ipg_ioaddr(dev); |
572 | struct dev_mc_list *mc_list_ptr; | 572 | struct netdev_hw_addr *ha; |
573 | unsigned int hashindex; | 573 | unsigned int hashindex; |
574 | u32 hashtable[2]; | 574 | u32 hashtable[2]; |
575 | u8 receivemode; | 575 | u8 receivemode; |
@@ -608,9 +608,9 @@ static void ipg_nic_set_multicast_list(struct net_device *dev) | |||
608 | hashtable[1] = 0x00000000; | 608 | hashtable[1] = 0x00000000; |
609 | 609 | ||
610 | /* Cycle through all multicast addresses to filter. */ | 610 | /* Cycle through all multicast addresses to filter. */ |
611 | netdev_for_each_mc_addr(mc_list_ptr, dev) { | 611 | netdev_for_each_mc_addr(ha, dev) { |
612 | /* Calculate CRC result for each multicast address. */ | 612 | /* Calculate CRC result for each multicast address. */ |
613 | hashindex = crc32_le(0xffffffff, mc_list_ptr->dmi_addr, | 613 | hashindex = crc32_le(0xffffffff, ha->addr, |
614 | ETH_ALEN); | 614 | ETH_ALEN); |
615 | 615 | ||
616 | /* Use only the least significant 6 bits. */ | 616 | /* Use only the least significant 6 bits. */ |