static ssize_t lbs_anycast_get(struct device *dev,
                struct device_attribute *attr, char * buf)
 {
-       struct lbs_private *priv = to_net_dev(dev)->priv;
+       struct lbs_private *priv = netdev_priv(to_net_dev(dev));
        struct cmd_ds_mesh_access mesh_access;
        int ret;
 
 static ssize_t lbs_anycast_set(struct device *dev,
                struct device_attribute *attr, const char * buf, size_t count)
 {
-       struct lbs_private *priv = to_net_dev(dev)->priv;
+       struct lbs_private *priv = netdev_priv(to_net_dev(dev));
        struct cmd_ds_mesh_access mesh_access;
        uint32_t datum;
        int ret;
 static ssize_t lbs_rtap_get(struct device *dev,
                struct device_attribute *attr, char * buf)
 {
-       struct lbs_private *priv = to_net_dev(dev)->priv;
+       struct lbs_private *priv = netdev_priv(to_net_dev(dev));
        return snprintf(buf, 5, "0x%X\n", priv->monitormode);
 }
 
                struct device_attribute *attr, const char * buf, size_t count)
 {
        int monitor_mode;
-       struct lbs_private *priv = to_net_dev(dev)->priv;
+       struct lbs_private *priv = netdev_priv(to_net_dev(dev));
 
        sscanf(buf, "%x", &monitor_mode);
        if (monitor_mode) {
 static ssize_t lbs_mesh_get(struct device *dev,
                struct device_attribute *attr, char * buf)
 {
-       struct lbs_private *priv = to_net_dev(dev)->priv;
+       struct lbs_private *priv = netdev_priv(to_net_dev(dev));
        return snprintf(buf, 5, "0x%X\n", !!priv->mesh_dev);
 }
 
 static ssize_t lbs_mesh_set(struct device *dev,
                struct device_attribute *attr, const char * buf, size_t count)
 {
-       struct lbs_private *priv = to_net_dev(dev)->priv;
+       struct lbs_private *priv = netdev_priv(to_net_dev(dev));
        int enable;
        int ret, action = CMD_ACT_MESH_CONFIG_STOP;
 
  */
 static int lbs_dev_open(struct net_device *dev)
 {
-       struct lbs_private *priv = (struct lbs_private *) dev->priv ;
+       struct lbs_private *priv = netdev_priv(dev) ;
        int ret = 0;
 
        lbs_deb_enter(LBS_DEB_NET);
  */
 static int lbs_mesh_stop(struct net_device *dev)
 {
-       struct lbs_private *priv = (struct lbs_private *) (dev->priv);
+       struct lbs_private *priv = dev->ml_priv;
 
        lbs_deb_enter(LBS_DEB_MESH);
        spin_lock_irq(&priv->driver_lock);
  */
 static int lbs_eth_stop(struct net_device *dev)
 {
-       struct lbs_private *priv = (struct lbs_private *) dev->priv;
+       struct lbs_private *priv = netdev_priv(dev);
 
        lbs_deb_enter(LBS_DEB_NET);
 
 
 static void lbs_tx_timeout(struct net_device *dev)
 {
-       struct lbs_private *priv = (struct lbs_private *) dev->priv;
+       struct lbs_private *priv = netdev_priv(dev);
 
        lbs_deb_enter(LBS_DEB_TX);
 
  */
 static struct net_device_stats *lbs_get_stats(struct net_device *dev)
 {
-       struct lbs_private *priv = (struct lbs_private *) dev->priv;
+       struct lbs_private *priv = netdev_priv(dev);
 
        lbs_deb_enter(LBS_DEB_NET);
        return &priv->stats;
 static int lbs_set_mac_address(struct net_device *dev, void *addr)
 {
        int ret = 0;
-       struct lbs_private *priv = (struct lbs_private *) dev->priv;
+       struct lbs_private *priv = netdev_priv(dev);
        struct sockaddr *phwaddr = addr;
        struct cmd_ds_802_11_mac_address cmd;
 
 
 static void lbs_set_multicast_list(struct net_device *dev)
 {
-       struct lbs_private *priv = dev->priv;
+       struct lbs_private *priv = netdev_priv(dev);
 
        schedule_work(&priv->mcast_work);
 }
 static int lbs_thread(void *data)
 {
        struct net_device *dev = data;
-       struct lbs_private *priv = dev->priv;
+       struct lbs_private *priv = netdev_priv(dev);
        wait_queue_t wait;
 
        lbs_deb_enter(LBS_DEB_THREAD);
                lbs_pr_err("init ethX device failed\n");
                goto done;
        }
-       priv = dev->priv;
+       priv = netdev_priv(dev);
 
        if (lbs_init_adapter(priv)) {
                lbs_pr_err("failed to initialize adapter structure.\n");
                ret = -ENOMEM;
                goto done;
        }
-       mesh_dev->priv = priv;
+       mesh_dev->ml_priv = priv;
        priv->mesh_dev = mesh_dev;
 
        mesh_dev->open = lbs_dev_open;
 
 static struct net_device_stats *lbs_rtap_get_stats(struct net_device *dev)
 {
-       struct lbs_private *priv = dev->priv;
+       struct lbs_private *priv = dev->ml_priv;
        lbs_deb_enter(LBS_DEB_NET);
        return &priv->stats;
 }
        rtap_dev->stop = lbs_rtap_stop;
        rtap_dev->get_stats = lbs_rtap_get_stats;
        rtap_dev->hard_start_xmit = lbs_rtap_hard_start_xmit;
-       rtap_dev->priv = priv;
+       rtap_dev->ml_priv = priv;
        SET_NETDEV_DEV(rtap_dev, priv->dev->dev.parent);
 
        ret = register_netdev(rtap_dev);