]> Pileus Git - ~andy/linux/blobdiff - drivers/net/wireless/b43legacy/main.c
b43legacy: add definitions for MAC control register
[~andy/linux] / drivers / net / wireless / b43legacy / main.c
index d2a72a2cd17823e3a053d0223b1e08c5be472044..9db949ed6519c1ae6d51ba2be197beda4e5641fa 100644 (file)
@@ -805,9 +805,8 @@ static void b43legacy_generate_noise_sample(struct b43legacy_wldev *dev)
 {
        b43legacy_jssi_write(dev, 0x7F7F7F7F);
        b43legacy_write32(dev, B43legacy_MMIO_MACCMD,
-                         b43legacy_read32(dev,
-                         B43legacy_MMIO_MACCMD)
-                         | (1 << 4));
+                         b43legacy_read32(dev, B43legacy_MMIO_MACCMD)
+                         | B43legacy_MACCMD_BGNOISE);
        B43legacy_WARN_ON(dev->noisecalc.channel_at_start !=
                            dev->phy.channel);
 }
@@ -896,18 +895,18 @@ static void handle_irq_tbtt_indication(struct b43legacy_wldev *dev)
                if (1/*FIXME: the last PSpoll frame was sent successfully */)
                        b43legacy_power_saving_ctl_bits(dev, -1, -1);
        }
-       dev->reg124_set_0x4 = 0;
        if (b43legacy_is_mode(dev->wl, IEEE80211_IF_TYPE_IBSS))
-               dev->reg124_set_0x4 = 1;
+               dev->dfq_valid = 1;
 }
 
 static void handle_irq_atim_end(struct b43legacy_wldev *dev)
 {
-       if (!dev->reg124_set_0x4) /*FIXME rename this variable*/
-               return;
-       b43legacy_write32(dev, B43legacy_MMIO_MACCMD,
-                         b43legacy_read32(dev, B43legacy_MMIO_MACCMD)
-                         | 0x4);
+       if (dev->dfq_valid) {
+               b43legacy_write32(dev, B43legacy_MMIO_MACCMD,
+                                 b43legacy_read32(dev, B43legacy_MMIO_MACCMD)
+                                 | B43legacy_MACCMD_DFQ_VALID);
+               dev->dfq_valid = 0;
+       }
 }
 
 static void handle_irq_pmq(struct b43legacy_wldev *dev)
@@ -1107,7 +1106,7 @@ static int b43legacy_refresh_cached_beacon(struct b43legacy_wldev *dev,
 
 static void b43legacy_update_templates(struct b43legacy_wldev *dev)
 {
-       u32 status;
+       u32 cmd;
 
        B43legacy_WARN_ON(!dev->cached_beacon);
 
@@ -1118,9 +1117,9 @@ static void b43legacy_update_templates(struct b43legacy_wldev *dev)
        b43legacy_write_probe_resp_template(dev, 0x268, 0x4A,
                                            &b43legacy_b_ratetable[0]);
 
-       status = b43legacy_read32(dev, B43legacy_MMIO_MACCMD);
-       status |= 0x03;
-       b43legacy_write32(dev, B43legacy_MMIO_MACCMD, status);
+       cmd = b43legacy_read32(dev, B43legacy_MMIO_MACCMD);
+       cmd |= B43legacy_MACCMD_BEACON0_VALID | B43legacy_MACCMD_BEACON1_VALID;
+       b43legacy_write32(dev, B43legacy_MMIO_MACCMD, cmd);
 }
 
 static void b43legacy_refresh_templates(struct b43legacy_wldev *dev,
@@ -2928,7 +2927,7 @@ static void setup_struct_phy_for_init(struct b43legacy_wldev *dev,
 static void setup_struct_wldev_for_init(struct b43legacy_wldev *dev)
 {
        /* Flags */
-       dev->reg124_set_0x4 = 0;
+       dev->dfq_valid = 0;
 
        /* Stats */
        memset(&dev->stats, 0, sizeof(dev->stats));