Staging: rt2860: convert to netdev_ops
authorAlexander Beregalov <a.beregalov@gmail.com>
Sun, 29 Mar 2009 15:27:21 +0000 (19:27 +0400)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 17 Apr 2009 18:06:24 +0000 (11:06 -0700)
Signed-off-by: Alexander Beregalov <a.beregalov@gmail.com>
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/staging/rt2860/rt_main_dev.c

index cf17bcdd7333ec8e808d38a935c62c84ca2ae759..6c4396f0903bfb0ab541b9067d0c704b66d42572 100644 (file)
@@ -722,6 +722,20 @@ err:
        return (-1);
 } /* End of rt28xx_open */
 
+static const struct net_device_ops rt2860_netdev_ops = {
+       .ndo_open               = MainVirtualIF_open,
+       .ndo_stop               = MainVirtualIF_close,
+       .ndo_do_ioctl           = rt28xx_ioctl,
+       .ndo_get_stats          = RT28xx_get_ether_stats,
+       .ndo_validate_addr      = NULL,
+       .ndo_set_mac_address    = eth_mac_addr,
+       .ndo_change_mtu         = eth_change_mtu,
+#ifdef IKANOS_VX_1X0
+       .ndo_start_xmit         = IKANOS_DataFramesTx,
+#else
+       .ndo_start_xmit         = rt28xx_send_packets,
+#endif
+};
 
 /* Must not be called for mdev and apdev */
 static NDIS_STATUS rt_ieee80211_if_setup(struct net_device *dev, PRTMP_ADAPTER pAd)
@@ -733,11 +747,6 @@ static NDIS_STATUS rt_ieee80211_if_setup(struct net_device *dev, PRTMP_ADAPTER p
 
 
        //ether_setup(dev);
-       dev->hard_start_xmit = rt28xx_send_packets;
-
-#ifdef IKANOS_VX_1X0
-       dev->hard_start_xmit = IKANOS_DataFramesTx;
-#endif // IKANOS_VX_1X0 //
 
 #ifdef CONFIG_STA_SUPPORT
 #if WIRELESS_EXT >= 12
@@ -760,12 +769,8 @@ static NDIS_STATUS rt_ieee80211_if_setup(struct net_device *dev, PRTMP_ADAPTER p
 #if WIRELESS_EXT < 21
                dev->get_wireless_stats = rt28xx_get_wireless_stats;
 #endif
-       dev->get_stats = RT28xx_get_ether_stats;
-       dev->open = MainVirtualIF_open; //rt28xx_open;
-       dev->stop = MainVirtualIF_close; //rt28xx_close;
        dev->priv_flags = INT_MAIN;
-       dev->do_ioctl = rt28xx_ioctl;
-       dev->validate_addr = NULL;
+       dev->netdev_ops = &rt2860_netdev_ops;
        // find available device name
        for (i = 0; i < 8; i++)
        {