net: convert multiple drivers to use netdev_for_each_mc_addr, part4
Signed-off-by: Jiri Pirko <jpirko@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
7a81e9f3ca
commit
48e2f183cb
@@ -575,19 +575,16 @@ static void mpc52xx_fec_set_multicast_list(struct net_device *dev)
|
||||
out_be32(&fec->gaddr2, 0xffffffff);
|
||||
} else {
|
||||
u32 crc;
|
||||
int i;
|
||||
struct dev_mc_list *dmi;
|
||||
u32 gaddr1 = 0x00000000;
|
||||
u32 gaddr2 = 0x00000000;
|
||||
|
||||
dmi = dev->mc_list;
|
||||
for (i=0; i<netdev_mc_count(dev); i++) {
|
||||
netdev_for_each_mc_addr(dmi, dev) {
|
||||
crc = ether_crc_le(6, dmi->dmi_addr) >> 26;
|
||||
if (crc >= 32)
|
||||
gaddr1 |= 1 << (crc-32);
|
||||
else
|
||||
gaddr2 |= 1 << crc;
|
||||
dmi = dmi->next;
|
||||
}
|
||||
out_be32(&fec->gaddr1, gaddr1);
|
||||
out_be32(&fec->gaddr2, gaddr2);
|
||||
|
Reference in New Issue
Block a user