linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git] / drivers / net / wireless / hostap / hostap_hw.c
index d500012..b1f142d 100644 (file)
@@ -30,6 +30,7 @@
  */
 
 
+#include <linux/config.h>
 
 #include <asm/delay.h>
 #include <asm/uaccess.h>
@@ -927,16 +928,16 @@ static int hfa384x_set_rid(struct net_device *dev, u16 rid, void *buf, int len)
 
        res = hfa384x_cmd(dev, HFA384X_CMDCODE_ACCESS_WRITE, rid, NULL, NULL);
        up(&local->rid_bap_sem);
-
        if (res) {
                printk(KERN_DEBUG "%s: hfa384x_set_rid: CMDCODE_ACCESS_WRITE "
                       "failed (res=%d, rid=%04x, len=%d)\n",
                       dev->name, res, rid, len);
-
-               if (res == -ETIMEDOUT)
-                       prism2_hw_reset(dev);
+               return res;
        }
 
+       if (res == -ETIMEDOUT)
+               prism2_hw_reset(dev);
+
        return res;
 }
 
@@ -1042,9 +1043,6 @@ static int prism2_reset_port(struct net_device *dev)
                       dev->name, local->fragm_threshold);
        }
 
-       /* Some firmwares lose antenna selection settings on reset */
-       (void) hostap_set_antsel(local);
-
        return res;
 }
 
@@ -3098,14 +3096,6 @@ static void prism2_clear_set_tim_queue(local_info_t *local)
 }
 
 
-/*
- * HostAP uses two layers of net devices, where the inner
- * layer gets called all the time from the outer layer.
- * This is a natural nesting, which needs a split lock type.
- */
-static struct lock_class_key hostap_netdev_xmit_lock_key;
-
-
 static struct net_device *
 prism2_init_local_data(struct prism2_helper_functions *funcs, int card_idx,
                       struct device *sdev)
@@ -3270,8 +3260,6 @@ while (0)
        SET_NETDEV_DEV(dev, sdev);
        if (ret >= 0)
                ret = register_netdevice(dev);
-
-       lockdep_set_class(&dev->_xmit_lock, &hostap_netdev_xmit_lock_key);
        rtnl_unlock();
        if (ret < 0) {
                printk(KERN_WARNING "%s: register netdevice failed!\n",