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/bmac.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/bmac.c')
-rw-r--r-- | drivers/net/bmac.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/net/bmac.c b/drivers/net/bmac.c index 119468e76323..1245e9835765 100644 --- a/drivers/net/bmac.c +++ b/drivers/net/bmac.c | |||
@@ -971,7 +971,7 @@ bmac_remove_multi(struct net_device *dev, | |||
971 | */ | 971 | */ |
972 | static void bmac_set_multicast(struct net_device *dev) | 972 | static void bmac_set_multicast(struct net_device *dev) |
973 | { | 973 | { |
974 | struct dev_mc_list *dmi; | 974 | struct netdev_hw_addr *ha; |
975 | struct bmac_data *bp = netdev_priv(dev); | 975 | struct bmac_data *bp = netdev_priv(dev); |
976 | int num_addrs = netdev_mc_count(dev); | 976 | int num_addrs = netdev_mc_count(dev); |
977 | unsigned short rx_cfg; | 977 | unsigned short rx_cfg; |
@@ -1000,8 +1000,8 @@ static void bmac_set_multicast(struct net_device *dev) | |||
1000 | rx_cfg = bmac_rx_on(dev, 0, 0); | 1000 | rx_cfg = bmac_rx_on(dev, 0, 0); |
1001 | XXDEBUG(("bmac: multi disabled, rx_cfg=%#08x\n", rx_cfg)); | 1001 | XXDEBUG(("bmac: multi disabled, rx_cfg=%#08x\n", rx_cfg)); |
1002 | } else { | 1002 | } else { |
1003 | netdev_for_each_mc_addr(dmi, dev) | 1003 | netdev_for_each_mc_addr(ha, dev) |
1004 | bmac_addhash(bp, dmi->dmi_addr); | 1004 | bmac_addhash(bp, ha->addr); |
1005 | bmac_update_hash_table_mask(dev, bp); | 1005 | bmac_update_hash_table_mask(dev, bp); |
1006 | rx_cfg = bmac_rx_on(dev, 1, 0); | 1006 | rx_cfg = bmac_rx_on(dev, 1, 0); |
1007 | XXDEBUG(("bmac: multi enabled, rx_cfg=%#08x\n", rx_cfg)); | 1007 | XXDEBUG(("bmac: multi enabled, rx_cfg=%#08x\n", rx_cfg)); |
@@ -1015,7 +1015,7 @@ static void bmac_set_multicast(struct net_device *dev) | |||
1015 | 1015 | ||
1016 | static void bmac_set_multicast(struct net_device *dev) | 1016 | static void bmac_set_multicast(struct net_device *dev) |
1017 | { | 1017 | { |
1018 | struct dev_mc_list *dmi; | 1018 | struct netdev_hw_addr *ha; |
1019 | char *addrs; | 1019 | char *addrs; |
1020 | int i; | 1020 | int i; |
1021 | unsigned short rx_cfg; | 1021 | unsigned short rx_cfg; |
@@ -1039,8 +1039,8 @@ static void bmac_set_multicast(struct net_device *dev) | |||
1039 | 1039 | ||
1040 | for(i = 0; i < 4; i++) hash_table[i] = 0; | 1040 | for(i = 0; i < 4; i++) hash_table[i] = 0; |
1041 | 1041 | ||
1042 | netdev_for_each_mc_addr(dmi, dev) { | 1042 | netdev_for_each_mc_addr(ha, dev) { |
1043 | addrs = dmi->dmi_addr; | 1043 | addrs = ha->addr; |
1044 | 1044 | ||
1045 | if(!(*addrs & 1)) | 1045 | if(!(*addrs & 1)) |
1046 | continue; | 1046 | continue; |