goto final;
        }
        else
-               priva = arlan_device[devnum]->priv;
+               priva = netdev_priv(arlan_device[devnum]);
 
        if (priva == NULL)
        {
                goto final;
        }
        else
-               priva = arlan_device[devnum]->priv;
+               priva = netdev_priv(arlan_device[devnum]);
        if (priva == NULL)
        {
                printk(KERN_WARNING " Could not find the device private in arlan procsys, bad\n ");
                  goto final;
        }
        else
-               priva = arlan_device[devnum]->priv;
+               priva = netdev_priv(arlan_device[devnum]);
        if (priva == NULL)
        {
                printk(KERN_WARNING " Could not find the device private in arlan procsys, bad\n ");
                  pos += sprintf(arlan_drive_info + pos, "No device found here \n");
                  goto final;
        } else
-               priva = arlan_device[devnum]->priv;
+               priva = netdev_priv(arlan_device[devnum]);
        if (priva == NULL)
        {
                printk(KERN_WARNING " Could not find the device private in arlan procsys, bad\n ");
                goto final;
        }
        else
-               priva = arlan_device[devnum]->priv;
+               priva = netdev_priv(arlan_device[devnum]);
        if (priva == NULL)
        {
                printk(KERN_WARNING " Could not find the device private in arlan procsys, bad\n ");
        }
        else if (arlan_device[devnum] != NULL)
        {
-                 priv = arlan_device[devnum]->priv;
+                 priv = netdev_priv(arlan_device[devnum]);
 
                  arlan_command(arlan_device[devnum], ARLAN_COMMAND_CLEAN_AND_CONF);
        }
        }
        else if (arlan_device[devnum] != NULL)
        {
-               priv = arlan_device[devnum]->priv;
+               priv = netdev_priv(arlan_device[devnum]);
                arlan_command(arlan_device[devnum], ARLAN_COMMAND_CLEAN_AND_RESET);
 
        } else
 
 {
        int res, ret = 0;
        conf_reg_t reg;
-       struct hostap_interface *iface = dev->priv;
+       struct hostap_interface *iface = netdev_priv(dev);
        local_info_t *local = iface->local;
        tuple_t tuple;
        cisparse_t *parse = NULL;
 
        struct local_info *local;
        union iwreq_data wrqu;
 
-       iface = dev->priv;
+       iface = netdev_priv(dev);
        local = iface->local;
 
        /* Send disconnect event, e.g., to trigger reassociation after resume
 
 static int prism2_set_genericelement(struct net_device *dev, u8 *elem,
                                     size_t len)
 {
-       struct hostap_interface *iface = dev->priv;
+       struct hostap_interface *iface = netdev_priv(dev);
        local_info_t *local = iface->local;
        u8 *buf;
 
                                struct iw_request_info *info,
                                struct iw_param *data, char *extra)
 {
-       struct hostap_interface *iface = dev->priv;
+       struct hostap_interface *iface = netdev_priv(dev);
        local_info_t *local = iface->local;
 
        switch (data->flags & IW_AUTH_INDEX) {
                                struct iw_request_info *info,
                                struct iw_param *data, char *extra)
 {
-       struct hostap_interface *iface = dev->priv;
+       struct hostap_interface *iface = netdev_priv(dev);
        local_info_t *local = iface->local;
 
        switch (data->flags & IW_AUTH_INDEX) {
                                     struct iw_request_info *info,
                                     struct iw_point *erq, char *extra)
 {
-       struct hostap_interface *iface = dev->priv;
+       struct hostap_interface *iface = netdev_priv(dev);
        local_info_t *local = iface->local;
        struct iw_encode_ext *ext = (struct iw_encode_ext *) extra;
        int i, ret = 0;
                                     struct iw_request_info *info,
                                     struct iw_point *erq, char *extra)
 {
-       struct hostap_interface *iface = dev->priv;
+       struct hostap_interface *iface = netdev_priv(dev);
        local_info_t *local = iface->local;
        struct ieee80211_crypt_data **crypt;
        void *sta_ptr;
                                 struct iw_request_info *info,
                                 struct iw_point *data, char *extra)
 {
-       struct hostap_interface *iface = dev->priv;
+       struct hostap_interface *iface = netdev_priv(dev);
        local_info_t *local = iface->local;
        int len = local->generic_elem_len - 2;
 
                                struct iw_request_info *info,
                                struct iw_point *data, char *extra)
 {
-       struct hostap_interface *iface = dev->priv;
+       struct hostap_interface *iface = netdev_priv(dev);
        local_info_t *local = iface->local;
        struct iw_mlme *mlme = (struct iw_mlme *) extra;
        u16 reason;
 
 static void __devexit orinoco_tmd_remove_one(struct pci_dev *pdev)
 {
        struct net_device *dev = pci_get_drvdata(pdev);
-       struct orinoco_private *priv = dev->priv;
+       struct orinoco_private *priv = netdev_priv(dev);
        struct orinoco_pci_card *card = priv->card;
 
        unregister_netdev(dev);
 
        int rvalue;
        enum oid_num_t n = dwrq->flags;
 
-       rvalue = mgt_get_request((islpci_private *) ndev->priv, n, 0, NULL, &r);
+       rvalue = mgt_get_request(netdev_priv(ndev), n, 0, NULL, &r);
        dwrq->length = mgt_response_to_str(n, &r, extra);
        if ((isl_oid[n].flags & OID_FLAG_TYPE) != OID_TYPE_U32)
                kfree(r.ptr);
 {
        u32 oid = uwrq[0], u = uwrq[1];
 
-       return mgt_set_request((islpci_private *) ndev->priv, oid, 0, &u);
+       return mgt_set_request(netdev_priv(ndev), oid, 0, &u);
 }
 
 static int
 {
        u32 oid = dwrq->flags;
 
-       return mgt_set_request((islpci_private *) ndev->priv, oid, 0, extra);
+       return mgt_set_request(netdev_priv(ndev), oid, 0, extra);
 }
 
 void
 
     if (!dev)
            goto fail_alloc_dev;
 
-    local = dev->priv;
+    local = netdev_priv(dev);
     local->finder = p_dev;
 
     /* The io structure describes IO port mapping. None used here */
 
     ray_release(link);
 
-    local = (ray_dev_t *)dev->priv;
+    local = netdev_priv(dev);
     del_timer(&local->timer);
 
     if (link->priv) {
     win_req_t req;
     memreq_t mem;
     struct net_device *dev = (struct net_device *)link->priv;
-    ray_dev_t *local = (ray_dev_t *)dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
 
     DEBUG(1, "ray_config(0x%p)\n", link);
 
     int i;
     UCHAR *p;
     struct ccs __iomem *pccs;
-    ray_dev_t *local = (ray_dev_t *)dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
     struct pcmcia_device *link = local->finder;
     DEBUG(1, "ray_init(0x%p)\n", dev);
     if (!(pcmcia_dev_present(link))) {
 static int dl_startup_params(struct net_device *dev)
 {
     int ccsindex;
-    ray_dev_t *local = (ray_dev_t *)dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
     struct ccs __iomem *pccs;
     struct pcmcia_device *link = local->finder;
 
 static void ray_release(struct pcmcia_device *link)
 {
     struct net_device *dev = link->priv; 
-    ray_dev_t *local = dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
     int i;
     
     DEBUG(1, "ray_release(0x%p)\n", link);
 #ifdef RAY_IMMEDIATE_INIT
     int i;
 #endif /* RAY_IMMEDIATE_INIT */
-    ray_dev_t *local = dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
     struct pcmcia_device *link = local->finder;
 
     DEBUG(1,"ray_dev_init(dev=%p)\n",dev);
 /*===========================================================================*/
 static int ray_dev_config(struct net_device *dev, struct ifmap *map)
 {
-    ray_dev_t *local = dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
     struct pcmcia_device *link = local->finder;
     /* Dummy routine to satisfy device structure */
     DEBUG(1,"ray_dev_config(dev=%p,ifmap=%p)\n",dev,map);
 /*===========================================================================*/
 static int ray_dev_start_xmit(struct sk_buff *skb, struct net_device *dev)
 {
-    ray_dev_t *local = dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
     struct pcmcia_device *link = local->finder;
     short length = skb->len;
 
 static int ray_hw_xmit(unsigned char* data, int len, struct net_device* dev, 
                 UCHAR msg_type)
 {
-    ray_dev_t *local = (ray_dev_t *)dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
     struct ccs __iomem *pccs;
     int ccsindex;
     int offset;
                        struct iw_freq *fwrq,
                        char *extra)
 {
-       ray_dev_t *local = (ray_dev_t *)dev->priv;
+       ray_dev_t *local = netdev_priv(dev);
        int err = -EINPROGRESS;         /* Call commit handler */
 
        /* Reject if card is already initialised */
                        struct iw_freq *fwrq,
                        char *extra)
 {
-       ray_dev_t *local = (ray_dev_t *)dev->priv;
+       ray_dev_t *local = netdev_priv(dev);
 
        fwrq->m = local->sparm.b5.a_hop_pattern;
        fwrq->e = 0;
                         struct iw_point *dwrq,
                         char *extra)
 {
-       ray_dev_t *local = (ray_dev_t *)dev->priv;
+       ray_dev_t *local = netdev_priv(dev);
 
        /* Reject if card is already initialised */
        if(local->card_status != CARD_AWAITING_PARAM)
                         struct iw_point *dwrq,
                         char *extra)
 {
-       ray_dev_t *local = (ray_dev_t *)dev->priv;
+       ray_dev_t *local = netdev_priv(dev);
 
        /* Get the essid that was set */
        memcpy(extra, local->sparm.b5.a_current_ess_id, IW_ESSID_MAX_SIZE);
                        struct sockaddr *awrq,
                        char *extra)
 {
-       ray_dev_t *local = (ray_dev_t *)dev->priv;
+       ray_dev_t *local = netdev_priv(dev);
 
        memcpy(awrq->sa_data, local->bss_id, ETH_ALEN);
        awrq->sa_family = ARPHRD_ETHER;
                        struct iw_param *vwrq,
                        char *extra)
 {
-       ray_dev_t *local = (ray_dev_t *)dev->priv;
+       ray_dev_t *local = netdev_priv(dev);
 
        /* Reject if card is already initialised */
        if(local->card_status != CARD_AWAITING_PARAM)
                        struct iw_param *vwrq,
                        char *extra)
 {
-       ray_dev_t *local = (ray_dev_t *)dev->priv;
+       ray_dev_t *local = netdev_priv(dev);
 
        if(local->net_default_tx_rate == 3)
                vwrq->value = 2000000;          /* Hum... */
                       struct iw_param *vwrq,
                       char *extra)
 {
-       ray_dev_t *local = (ray_dev_t *)dev->priv;
+       ray_dev_t *local = netdev_priv(dev);
        int rthr = vwrq->value;
 
        /* Reject if card is already initialised */
                       struct iw_param *vwrq,
                       char *extra)
 {
-       ray_dev_t *local = (ray_dev_t *)dev->priv;
+       ray_dev_t *local = netdev_priv(dev);
 
        vwrq->value = (local->sparm.b5.a_rts_threshold[0] << 8)
                + local->sparm.b5.a_rts_threshold[1];
                        struct iw_param *vwrq,
                        char *extra)
 {
-       ray_dev_t *local = (ray_dev_t *)dev->priv;
+       ray_dev_t *local = netdev_priv(dev);
        int fthr = vwrq->value;
 
        /* Reject if card is already initialised */
                        struct iw_param *vwrq,
                        char *extra)
 {
-       ray_dev_t *local = (ray_dev_t *)dev->priv;
+       ray_dev_t *local = netdev_priv(dev);
 
        vwrq->value = (local->sparm.b5.a_frag_threshold[0] << 8)
                + local->sparm.b5.a_frag_threshold[1];
                        __u32 *uwrq,
                        char *extra)
 {
-       ray_dev_t *local = (ray_dev_t *)dev->priv;
+       ray_dev_t *local = netdev_priv(dev);
        int err = -EINPROGRESS;         /* Call commit handler */
        char card_mode = 1;
 
                        __u32 *uwrq,
                        char *extra)
 {
-       ray_dev_t *local = (ray_dev_t *)dev->priv;
+       ray_dev_t *local = netdev_priv(dev);
 
        if(local->sparm.b5.a_network_type)
                *uwrq = IW_MODE_INFRA;
  */
 static iw_stats * ray_get_wireless_stats(struct net_device *   dev)
 {
-  ray_dev_t *  local = (ray_dev_t *) dev->priv;
+  ray_dev_t *  local = netdev_priv(dev);
   struct pcmcia_device *link = local->finder;
   struct status __iomem *p = local->sram + STATUS_BASE;
 
 /*===========================================================================*/
 static int ray_open(struct net_device *dev)
 {
-    ray_dev_t *local = (ray_dev_t *)dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
     struct pcmcia_device *link;
     link = local->finder;
     
 /*===========================================================================*/
 static int ray_dev_close(struct net_device *dev)
 {
-    ray_dev_t *local = (ray_dev_t *)dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
     struct pcmcia_device *link;
     link = local->finder;
 
 /*===========================================================================*/
 static struct net_device_stats *ray_get_stats(struct net_device *dev)
 {
-    ray_dev_t *local = (ray_dev_t *)dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
     struct pcmcia_device *link = local->finder;
     struct status __iomem *p = local->sram + STATUS_BASE;
     if (!(pcmcia_dev_present(link))) {
 /*===========================================================================*/
 static void ray_update_parm(struct net_device *dev, UCHAR objid, UCHAR *value, int len)
 {
-    ray_dev_t *local = (ray_dev_t *)dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
     struct pcmcia_device *link = local->finder;
     int ccsindex;
     int i;
     int ccsindex;
     struct ccs __iomem *pccs;
     int i = 0;
-    ray_dev_t *local = (ray_dev_t *)dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
     struct pcmcia_device *link = local->finder;
     void __iomem *p = local->sram + HOST_TO_ECF_BASE;
 
 /*===========================================================================*/
 static void set_multicast_list(struct net_device *dev)
 {
-    ray_dev_t *local = (ray_dev_t *)dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
     UCHAR promisc;
 
     DEBUG(2,"ray_cs set_multicast_list(%p)\n",dev);
 
     DEBUG(4,"ray_cs: interrupt for *dev=%p\n",dev);
 
-    local = (ray_dev_t *)dev->priv;
+    local = netdev_priv(dev);
     link = (struct pcmcia_device *)local->finder;
     if (!pcmcia_dev_present(link)) {
         DEBUG(2,"ray_cs interrupt from device not present or suspended.\n");
 {
     struct sk_buff *skb = NULL;
     struct rcs __iomem *prcslink = prcs;
-    ray_dev_t *local = dev->priv;
+    ray_dev_t *local = netdev_priv(dev);
     UCHAR *rx_ptr;
     int total_len;
     int tmp;
     dev = (struct net_device *)link->priv;
     if (!dev)
        return 0;
-    local = (ray_dev_t *)dev->priv;
+    local = netdev_priv(dev);
     if (!local)
        return 0;
 
 
                return NULL;    /* If no more memory, return */
 
 
-       strip_info = dev->priv;
+       strip_info = netdev_priv(dev);
        strip_info->dev = dev;
 
        strip_info->magic = STRIP_MAGIC;
 
 
 static void wl3501_online(struct net_device *dev)
 {
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
 
        printk(KERN_INFO "%s: Wireless LAN online. BSSID: "
               "%02X %02X %02X %02X %02X %02X\n", dev->name,
 
 static void wl3501_mgmt_join_confirm(struct net_device *dev, u16 addr)
 {
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
        struct wl3501_join_confirm sig;
 
        dprintk(3, "entry");
 static inline void wl3501_assoc_confirm_interrupt(struct net_device *dev,
                                                  u16 addr)
 {
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
        struct wl3501_assoc_confirm sig;
 
        dprintk(3, "entry");
        int morepkts;
        u16 addr;
        u8 sig_id;
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
 
        dprintk(3, "entry");
 loop:
 
 static int wl3501_close(struct net_device *dev)
 {
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
        int rc = -ENODEV;
        unsigned long flags;
        struct pcmcia_device *link;
  */
 static int wl3501_reset(struct net_device *dev)
 {
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
        int rc = -ENODEV;
 
        wl3501_block_interrupt(this);
 
 static void wl3501_tx_timeout(struct net_device *dev)
 {
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
        struct net_device_stats *stats = &this->stats;
        unsigned long flags;
        int rc;
 static int wl3501_hard_start_xmit(struct sk_buff *skb, struct net_device *dev)
 {
        int enabled, rc;
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
        unsigned long flags;
 
        spin_lock_irqsave(&this->lock, flags);
 static int wl3501_open(struct net_device *dev)
 {
        int rc = -ENODEV;
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
        unsigned long flags;
        struct pcmcia_device *link;
        link = this->p_dev;
 
 static struct net_device_stats *wl3501_get_stats(struct net_device *dev)
 {
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
 
        return &this->stats;
 }
 
 static struct iw_statistics *wl3501_get_wireless_stats(struct net_device *dev)
 {
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
        struct iw_statistics *wstats = &this->wstats;
        u32 value; /* size checked: it is u32 */
 
 static int wl3501_set_freq(struct net_device *dev, struct iw_request_info *info,
                           union iwreq_data *wrqu, char *extra)
 {
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
        int channel = wrqu->freq.m;
        int rc = -EINVAL;
 
 static int wl3501_get_freq(struct net_device *dev, struct iw_request_info *info,
                           union iwreq_data *wrqu, char *extra)
 {
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
 
        wrqu->freq.m = wl3501_chan2freq[this->chan - 1] * 100000;
        wrqu->freq.e = 1;
        if (wrqu->mode == IW_MODE_INFRA ||
            wrqu->mode == IW_MODE_ADHOC ||
            wrqu->mode == IW_MODE_AUTO) {
-               struct wl3501_card *this = dev->priv;
+               struct wl3501_card *this = netdev_priv(dev);
 
                this->net_type = wrqu->mode;
                rc = wl3501_reset(dev);
 static int wl3501_get_mode(struct net_device *dev, struct iw_request_info *info,
                           union iwreq_data *wrqu, char *extra)
 {
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
 
        wrqu->mode = this->net_type;
        return 0;
 static int wl3501_get_sens(struct net_device *dev, struct iw_request_info *info,
                           union iwreq_data *wrqu, char *extra)
 {
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
 
        wrqu->sens.value = this->rssi;
        wrqu->sens.disabled = !wrqu->sens.value;
 static int wl3501_set_wap(struct net_device *dev, struct iw_request_info *info,
                          union iwreq_data *wrqu, char *extra)
 {
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
        static const u8 bcast[ETH_ALEN] = { 255, 255, 255, 255, 255, 255 };
        int rc = -EINVAL;
 
 static int wl3501_get_wap(struct net_device *dev, struct iw_request_info *info,
                          union iwreq_data *wrqu, char *extra)
 {
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
 
        wrqu->ap_addr.sa_family = ARPHRD_ETHER;
        memcpy(wrqu->ap_addr.sa_data, this->bssid, ETH_ALEN);
 static int wl3501_get_scan(struct net_device *dev, struct iw_request_info *info,
                           union iwreq_data *wrqu, char *extra)
 {
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
        int i;
        char *current_ev = extra;
        struct iw_event iwe;
                            struct iw_request_info *info,
                            union iwreq_data *wrqu, char *extra)
 {
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
 
        if (wrqu->data.flags) {
                iw_set_mgmt_info_element(IW_MGMT_INFO_ELEMENT_SSID,
                            struct iw_request_info *info,
                            union iwreq_data *wrqu, char *extra)
 {
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
        unsigned long flags;
 
        spin_lock_irqsave(&this->lock, flags);
 static int wl3501_set_nick(struct net_device *dev, struct iw_request_info *info,
                           union iwreq_data *wrqu, char *extra)
 {
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
 
        if (wrqu->data.length > sizeof(this->nick))
                return -E2BIG;
 static int wl3501_get_nick(struct net_device *dev, struct iw_request_info *info,
                           union iwreq_data *wrqu, char *extra)
 {
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
 
        strlcpy(extra, this->nick, 32);
        wrqu->data.length = strlen(extra);
                                    union iwreq_data *wrqu, char *extra)
 {
        u16 threshold; /* size checked: it is u16 */
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
        int rc = wl3501_get_mib_value(this, WL3501_MIB_ATTR_RTS_THRESHOLD,
                                      &threshold, sizeof(threshold));
        if (!rc) {
                                     union iwreq_data *wrqu, char *extra)
 {
        u16 threshold; /* size checked: it is u16 */
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
        int rc = wl3501_get_mib_value(this, WL3501_MIB_ATTR_FRAG_THRESHOLD,
                                      &threshold, sizeof(threshold));
        if (!rc) {
                            union iwreq_data *wrqu, char *extra)
 {
        u16 txpow;
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
        int rc = wl3501_get_mib_value(this,
                                      WL3501_MIB_ATTR_CURRENT_TX_PWR_LEVEL,
                                      &txpow, sizeof(txpow));
                            union iwreq_data *wrqu, char *extra)
 {
        u8 retry; /* size checked: it is u8 */
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
        int rc = wl3501_get_mib_value(this,
                                      WL3501_MIB_ATTR_LONG_RETRY_LIMIT,
                                      &retry, sizeof(retry));
                             union iwreq_data *wrqu, char *extra)
 {
        u8 implemented, restricted, keys[100], len_keys, tocopy;
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
        int rc = wl3501_get_mib_value(this,
                                      WL3501_MIB_ATTR_PRIV_OPT_IMPLEMENTED,
                                      &implemented, sizeof(implemented));
                            union iwreq_data *wrqu, char *extra)
 {
        u8 pwr_state;
-       struct wl3501_card *this = dev->priv;
+       struct wl3501_card *this = netdev_priv(dev);
        int rc = wl3501_get_mib_value(this,
                                      WL3501_MIB_ATTR_CURRENT_PWR_STATE,
                                      &pwr_state, sizeof(pwr_state));
        dev->tx_timeout         = wl3501_tx_timeout;
        dev->watchdog_timeo     = 5 * HZ;
        dev->get_stats          = wl3501_get_stats;
-       this = dev->priv;
+       this = netdev_priv(dev);
        this->wireless_data.spy_data = &this->spy_data;
        this->p_dev = p_dev;
        dev->wireless_data      = &this->wireless_data;
 
        SET_MODULE_OWNER(dev);
 
-       this = dev->priv;
+       this = netdev_priv(dev);
        /*
         * At this point, the dev_node_t structure(s) should be initialized and
         * arranged in a linked list at link->dev_node.
 {
        struct net_device *dev = link->priv;
 
-       wl3501_pwr_mgmt(dev->priv, WL3501_SUSPEND);
+       wl3501_pwr_mgmt(netdev_priv(dev), WL3501_SUSPEND);
        if (link->open)
                netif_device_detach(dev);
 
 {
        struct net_device *dev = link->priv;
 
-       wl3501_pwr_mgmt(dev->priv, WL3501_RESUME);
+       wl3501_pwr_mgmt(netdev_priv(dev), WL3501_RESUME);
        if (link->open) {
                wl3501_reset(dev);
                netif_device_attach(dev);