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/stmmac/dwmac100.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/stmmac/dwmac100.c')
-rw-r--r-- | drivers/net/stmmac/dwmac100.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/stmmac/dwmac100.c b/drivers/net/stmmac/dwmac100.c index a183de29c39a..c0a1c9df3ac7 100644 --- a/drivers/net/stmmac/dwmac100.c +++ b/drivers/net/stmmac/dwmac100.c | |||
@@ -316,7 +316,7 @@ static void dwmac100_set_filter(struct net_device *dev) | |||
316 | MAC_CONTROL_HO | MAC_CONTROL_HP); | 316 | MAC_CONTROL_HO | MAC_CONTROL_HP); |
317 | } else { | 317 | } else { |
318 | u32 mc_filter[2]; | 318 | u32 mc_filter[2]; |
319 | struct dev_mc_list *mclist; | 319 | struct netdev_hw_addr *ha; |
320 | 320 | ||
321 | /* Perfect filter mode for physical address and Hash | 321 | /* Perfect filter mode for physical address and Hash |
322 | filter for multicast */ | 322 | filter for multicast */ |
@@ -325,11 +325,11 @@ static void dwmac100_set_filter(struct net_device *dev) | |||
325 | MAC_CONTROL_IF | MAC_CONTROL_HO); | 325 | MAC_CONTROL_IF | MAC_CONTROL_HO); |
326 | 326 | ||
327 | memset(mc_filter, 0, sizeof(mc_filter)); | 327 | memset(mc_filter, 0, sizeof(mc_filter)); |
328 | netdev_for_each_mc_addr(mclist, dev) { | 328 | netdev_for_each_mc_addr(ha, dev) { |
329 | /* The upper 6 bits of the calculated CRC are used to | 329 | /* The upper 6 bits of the calculated CRC are used to |
330 | * index the contens of the hash table */ | 330 | * index the contens of the hash table */ |
331 | int bit_nr = | 331 | int bit_nr = |
332 | ether_crc(ETH_ALEN, mclist->dmi_addr) >> 26; | 332 | ether_crc(ETH_ALEN, ha->addr) >> 26; |
333 | /* The most significant bit determines the register to | 333 | /* The most significant bit determines the register to |
334 | * use (H/L) while the other 5 bits determine the bit | 334 | * use (H/L) while the other 5 bits determine the bit |
335 | * within the register. */ | 335 | * within the register. */ |