diff options
Diffstat (limited to 'drivers/net/usb/mcs7830.c')
| -rw-r--r-- | drivers/net/usb/mcs7830.c | 7 | 
1 files changed, 4 insertions, 3 deletions
| diff --git a/drivers/net/usb/mcs7830.c b/drivers/net/usb/mcs7830.c index 70978219e98a..834d8cd3005d 100644 --- a/drivers/net/usb/mcs7830.c +++ b/drivers/net/usb/mcs7830.c | |||
| @@ -44,6 +44,7 @@ | |||
| 44 | #include <linux/mii.h> | 44 | #include <linux/mii.h> | 
| 45 | #include <linux/module.h> | 45 | #include <linux/module.h> | 
| 46 | #include <linux/netdevice.h> | 46 | #include <linux/netdevice.h> | 
| 47 | #include <linux/slab.h> | ||
| 47 | #include <linux/usb.h> | 48 | #include <linux/usb.h> | 
| 48 | #include <linux/usb/usbnet.h> | 49 | #include <linux/usb/usbnet.h> | 
| 49 | 50 | ||
| @@ -452,12 +453,12 @@ static void mcs7830_data_set_multicast(struct net_device *net) | |||
| 452 | * for our 8 byte filter buffer | 453 | * for our 8 byte filter buffer | 
| 453 | * to avoid allocating memory that | 454 | * to avoid allocating memory that | 
| 454 | * is tricky to free later */ | 455 | * is tricky to free later */ | 
| 455 | struct dev_mc_list *mc_list; | 456 | struct netdev_hw_addr *ha; | 
| 456 | u32 crc_bits; | 457 | u32 crc_bits; | 
| 457 | 458 | ||
| 458 | /* Build the multicast hash filter. */ | 459 | /* Build the multicast hash filter. */ | 
| 459 | netdev_for_each_mc_addr(mc_list, net) { | 460 | netdev_for_each_mc_addr(ha, net) { | 
| 460 | crc_bits = ether_crc(ETH_ALEN, mc_list->dmi_addr) >> 26; | 461 | crc_bits = ether_crc(ETH_ALEN, ha->addr) >> 26; | 
| 461 | data->multi_filter[crc_bits >> 3] |= 1 << (crc_bits & 7); | 462 | data->multi_filter[crc_bits >> 3] |= 1 << (crc_bits & 7); | 
| 462 | } | 463 | } | 
| 463 | } | 464 | } | 
