aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/rndis_wlan.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2009-03-25 03:03:16 -0400
committerDavid S. Miller <davem@davemloft.net>2009-03-25 03:03:16 -0400
commit23d12e2bdd4f73d90c8c29674c531aa45eecf27f (patch)
treec1c0a98df0b4cb8622eb7a3f247477d65275f81b /drivers/net/wireless/rndis_wlan.c
parent67fca028f1535e510689d2e444b0289e264e05c1 (diff)
rndis_wlan: Fix build with netdev_ops compat disabled.
Instead of storing a private ->set_multicast_list, just have a private netdev ops. Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/wireless/rndis_wlan.c')
-rw-r--r--drivers/net/wireless/rndis_wlan.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/drivers/net/wireless/rndis_wlan.c b/drivers/net/wireless/rndis_wlan.c
index 82af21eeb592..db91db776508 100644
--- a/drivers/net/wireless/rndis_wlan.c
+++ b/drivers/net/wireless/rndis_wlan.c
@@ -2524,6 +2524,17 @@ static int bcm4320_early_init(struct usbnet *usbdev)
2524 return 0; 2524 return 0;
2525} 2525}
2526 2526
2527/* same as rndis_netdev_ops but with local multicast handler */
2528static const struct net_device_ops rndis_wext_netdev_ops = {
2529 .ndo_open = usbnet_open,
2530 .ndo_stop = usbnet_stop,
2531 .ndo_start_xmit = usbnet_start_xmit,
2532 .ndo_tx_timeout = usbnet_tx_timeout,
2533 .ndo_set_mac_address = eth_mac_addr,
2534 .ndo_validate_addr = eth_validate_addr,
2535 .ndo_set_multicast_list = rndis_wext_set_multicast_list,
2536};
2537
2527 2538
2528static int rndis_wext_bind(struct usbnet *usbdev, struct usb_interface *intf) 2539static int rndis_wext_bind(struct usbnet *usbdev, struct usb_interface *intf)
2529{ 2540{
@@ -2559,7 +2570,8 @@ static int rndis_wext_bind(struct usbnet *usbdev, struct usb_interface *intf)
2559 * rndis_host wants to avoid all OID as much as possible 2570 * rndis_host wants to avoid all OID as much as possible
2560 * so do promisc/multicast handling in rndis_wext. 2571 * so do promisc/multicast handling in rndis_wext.
2561 */ 2572 */
2562 usbdev->net->set_multicast_list = rndis_wext_set_multicast_list; 2573 usbdev->net->netdev_ops = &rndis_wext_netdev_ops;
2574
2563 tmp = RNDIS_PACKET_TYPE_DIRECTED | RNDIS_PACKET_TYPE_BROADCAST; 2575 tmp = RNDIS_PACKET_TYPE_DIRECTED | RNDIS_PACKET_TYPE_BROADCAST;
2564 retval = rndis_set_oid(usbdev, OID_GEN_CURRENT_PACKET_FILTER, &tmp, 2576 retval = rndis_set_oid(usbdev, OID_GEN_CURRENT_PACKET_FILTER, &tmp,
2565 sizeof(tmp)); 2577 sizeof(tmp));