]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/net/wireless/hostap/hostap_hw.c
Merge branch 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
[linux-2.6-omap-h63xx.git] / drivers / net / wireless / hostap / hostap_hw.c
index c592641e914e695d99aa1e408acae2501ca03496..936f52e3d95c4040a18515e2f949027a95442638 100644 (file)
@@ -1075,7 +1075,7 @@ static int prism2_setup_rids(struct net_device *dev)
 {
        struct hostap_interface *iface;
        local_info_t *local;
-       u16 tmp;
+       __le16 tmp;
        int ret = 0;
 
        iface = netdev_priv(dev);
@@ -1084,11 +1084,11 @@ static int prism2_setup_rids(struct net_device *dev)
        hostap_set_word(dev, HFA384X_RID_TICKTIME, 2000);
 
        if (!local->fw_ap) {
-               tmp = hostap_get_porttype(local);
-               ret = hostap_set_word(dev, HFA384X_RID_CNFPORTTYPE, tmp);
+               u16 tmp1 = hostap_get_porttype(local);
+               ret = hostap_set_word(dev, HFA384X_RID_CNFPORTTYPE, tmp1);
                if (ret) {
                        printk("%s: Port type setting to %d failed\n",
-                              dev->name, tmp);
+                              dev->name, tmp1);
                        goto fail;
                }
        }
@@ -1117,7 +1117,7 @@ static int prism2_setup_rids(struct net_device *dev)
                ret = -EINVAL;
                goto fail;
        }
-       local->channel_mask = __le16_to_cpu(tmp);
+       local->channel_mask = le16_to_cpu(tmp);
 
        if (local->channel < 1 || local->channel > 14 ||
            !(local->channel_mask & (1 << (local->channel - 1)))) {
@@ -1852,7 +1852,7 @@ static int prism2_tx_80211(struct sk_buff *skb, struct net_device *dev)
        tx_control = local->tx_control;
        if (meta->tx_cb_idx) {
                tx_control |= HFA384X_TX_CTRL_TX_OK;
-               txdesc.sw_support = cpu_to_le16(meta->tx_cb_idx);
+               txdesc.sw_support = cpu_to_le32(meta->tx_cb_idx);
        }
        txdesc.tx_control = cpu_to_le16(tx_control);
        txdesc.tx_rate = meta->rate;
@@ -2190,7 +2190,7 @@ static void hostap_tx_callback(local_info_t *local,
                return;
        }
 
-       sw_support = le16_to_cpu(txdesc->sw_support);
+       sw_support = le32_to_cpu(txdesc->sw_support);
 
        spin_lock(&local->lock);
        cb = local->tx_callback;
@@ -2448,18 +2448,16 @@ static void prism2_info(local_info_t *local)
                goto out;
        }
 
-       le16_to_cpus(&info.len);
-       le16_to_cpus(&info.type);
-       left = (info.len - 1) * 2;
+       left = (le16_to_cpu(info.len) - 1) * 2;
 
-       if (info.len & 0x8000 || info.len == 0 || left > 2060) {
+       if (info.len & cpu_to_le16(0x8000) || info.len == 0 || left > 2060) {
                /* data register seems to give 0x8000 in some error cases even
                 * though busy bit is not set in offset register;
                 * in addition, length must be at least 1 due to type field */
                spin_unlock(&local->baplock);
                printk(KERN_DEBUG "%s: Received info frame with invalid "
-                      "length 0x%04x (type 0x%04x)\n", dev->name, info.len,
-                      info.type);
+                      "length 0x%04x (type 0x%04x)\n", dev->name,
+                      le16_to_cpu(info.len), le16_to_cpu(info.type));
                goto out;
        }
 
@@ -2476,8 +2474,8 @@ static void prism2_info(local_info_t *local)
        {
                spin_unlock(&local->baplock);
                printk(KERN_WARNING "%s: Info frame read failed (fid=0x%04x, "
-                      "len=0x%04x, type=0x%04x\n",
-                      dev->name, fid, info.len, info.type);
+                      "len=0x%04x, type=0x%04x\n", dev->name, fid,
+                      le16_to_cpu(info.len), le16_to_cpu(info.type));
                dev_kfree_skb(skb);
                goto out;
        }
@@ -2624,7 +2622,7 @@ static void prism2_check_magic(local_info_t *local)
 /* Called only from hardware IRQ */
 static irqreturn_t prism2_interrupt(int irq, void *dev_id)
 {
-       struct net_device *dev = (struct net_device *) dev_id;
+       struct net_device *dev = dev_id;
        struct hostap_interface *iface;
        local_info_t *local;
        int events = 0;
@@ -2837,7 +2835,7 @@ static void hostap_passive_scan(unsigned long data)
 {
        local_info_t *local = (local_info_t *) data;
        struct net_device *dev = local->dev;
-       u16 channel;
+       u16 chan;
 
        if (local->passive_scan_interval <= 0)
                return;
@@ -2874,11 +2872,11 @@ static void hostap_passive_scan(unsigned long data)
 
                printk(KERN_DEBUG "%s: passive scan channel %d\n",
                       dev->name, local->passive_scan_channel);
-               channel = local->passive_scan_channel;
+               chan = local->passive_scan_channel;
                local->passive_scan_state = PASSIVE_SCAN_WAIT;
                local->passive_scan_timer.expires = jiffies + HZ / 10;
        } else {
-               channel = local->channel;
+               chan = local->channel;
                local->passive_scan_state = PASSIVE_SCAN_LISTEN;
                local->passive_scan_timer.expires = jiffies +
                        local->passive_scan_interval * HZ;
@@ -2886,9 +2884,9 @@ static void hostap_passive_scan(unsigned long data)
 
        if (hfa384x_cmd_callback(dev, HFA384X_CMDCODE_TEST |
                                 (HFA384X_TEST_CHANGE_CHANNEL << 8),
-                                channel, NULL, 0))
+                                chan, NULL, 0))
                printk(KERN_ERR "%s: passive scan channel set %d "
-                      "failed\n", dev->name, channel);
+                      "failed\n", dev->name, chan);
 
        add_timer(&local->passive_scan_timer);
 }
@@ -3278,11 +3276,6 @@ while (0)
        }
        printk(KERN_INFO "%s: Registered netdevice %s\n", dev_info, dev->name);
 
-#ifndef PRISM2_NO_PROCFS_DEBUG
-       create_proc_read_entry("registers", 0, local->proc,
-                              prism2_registers_proc_read, local);
-#endif /* PRISM2_NO_PROCFS_DEBUG */
-
        hostap_init_data(local);
        return dev;
 
@@ -3309,6 +3302,10 @@ static int hostap_hw_ready(struct net_device *dev)
                        netif_carrier_off(local->ddev);
                }
                hostap_init_proc(local);
+#ifndef PRISM2_NO_PROCFS_DEBUG
+               create_proc_read_entry("registers", 0, local->proc,
+                                      prism2_registers_proc_read, local);
+#endif /* PRISM2_NO_PROCFS_DEBUG */
                hostap_init_ap_proc(local);
                return 0;
        }