diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/staging/vt6655/device_main.c | 17 | ||||
-rw-r--r-- | drivers/staging/vt6655/hostap.c | 7 |
2 files changed, 17 insertions, 7 deletions
diff --git a/drivers/staging/vt6655/device_main.c b/drivers/staging/vt6655/device_main.c index f0e2c735155..a10ed27acbc 100644 --- a/drivers/staging/vt6655/device_main.c +++ b/drivers/staging/vt6655/device_main.c @@ -968,6 +968,16 @@ static BOOL device_release_WPADEV(PSDevice pDevice) } +static const struct net_device_ops device_netdev_ops = { + .ndo_open = device_open, + .ndo_stop = device_close, + .ndo_do_ioctl = device_ioctl, + .ndo_get_stats = device_get_stats, + .ndo_start_xmit = device_xmit, + .ndo_set_multicast_list = device_set_multi, +}; + + #ifndef PRIVATE_OBJ static int @@ -1134,12 +1144,7 @@ device_found1(struct pci_dev *pcid, const struct pci_device_id *ent) pDevice->pMgmt = &(pDevice->sMgmtObj); dev->irq = pcid->irq; - dev->open = device_open; - dev->hard_start_xmit = device_xmit; - dev->stop = device_close; - dev->get_stats = device_get_stats; - dev->set_multicast_list = device_set_multi; - dev->do_ioctl = device_ioctl; + dev->netdev_ops = &device_netdev_ops; #ifdef WIRELESS_EXT //Einsn Modify for ubuntu-7.04 diff --git a/drivers/staging/vt6655/hostap.c b/drivers/staging/vt6655/hostap.c index 620b8bd745b..91f189ddeef 100644 --- a/drivers/staging/vt6655/hostap.c +++ b/drivers/staging/vt6655/hostap.c @@ -133,7 +133,12 @@ static int hostap_enable_hostapd(PSDevice pDevice, int rtnl_locked) apdev_priv = netdev_priv(pDevice->apdev); *apdev_priv = *pDevice; memcpy(pDevice->apdev->dev_addr, dev->dev_addr, ETH_ALEN); - pDevice->apdev->hard_start_xmit = pDevice->tx_80211; + + const struct net_device_ops apdev_netdev_ops = { + .ndo_start_xmit = pDevice->tx_80211, + }; + pDevice->apdev->netdev_ops = &apdev_netdev_ops; + pDevice->apdev->type = ARPHRD_IEEE80211; pDevice->apdev->base_addr = dev->base_addr; |