Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 134911
b: refs/heads/master
c: 25d3ef5
h: refs/heads/master
i:
  134909: 5a18d5a
  134907: 91770e7
  134903: 64a13bb
  134895: 2585e52
  134879: 4fc9281
  134847: 1693a40
  134783: a3274fc
  134655: a27a407
v: v3
  • Loading branch information
Michael Buesch authored and John W. Linville committed Feb 27, 2009
1 parent b2d4728 commit f503982
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 1 deletion.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 80e775bf08f1915870fbb0c1c7a45a3fdc291721
refs/heads/master: 25d3ef59a2112d50e145500e1bc764f9e8fd4896
31 changes: 31 additions & 0 deletions trunk/drivers/net/wireless/b43/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -4182,6 +4182,7 @@ static int b43_wireless_core_init(struct b43_wldev *dev)
if ((bus->bustype == SSB_BUSTYPE_PCI) &&
(bus->pcicore.dev->id.revision <= 10))
hf |= B43_HF_PCISCW; /* PCI slow clock workaround. */
hf &= ~B43_HF_SKCFPUP;
b43_hf_write(dev, hf);

b43_set_retry_limits(dev, B43_DEFAULT_SHORT_RETRY_LIMIT,
Expand Down Expand Up @@ -4404,6 +4405,34 @@ static void b43_op_sta_notify(struct ieee80211_hw *hw,
B43_WARN_ON(!vif || wl->vif != vif);
}

static void b43_op_sw_scan_start_notifier(struct ieee80211_hw *hw)
{
struct b43_wl *wl = hw_to_b43_wl(hw);
struct b43_wldev *dev;

mutex_lock(&wl->mutex);
dev = wl->current_dev;
if (dev && (b43_status(dev) >= B43_STAT_INITIALIZED)) {
/* Disable CFP update during scan on other channels. */
b43_hf_write(dev, b43_hf_read(dev) | B43_HF_SKCFPUP);
}
mutex_unlock(&wl->mutex);
}

static void b43_op_sw_scan_complete_notifier(struct ieee80211_hw *hw)
{
struct b43_wl *wl = hw_to_b43_wl(hw);
struct b43_wldev *dev;

mutex_lock(&wl->mutex);
dev = wl->current_dev;
if (dev && (b43_status(dev) >= B43_STAT_INITIALIZED)) {
/* Re-enable CFP update. */
b43_hf_write(dev, b43_hf_read(dev) & ~B43_HF_SKCFPUP);
}
mutex_unlock(&wl->mutex);
}

static const struct ieee80211_ops b43_hw_ops = {
.tx = b43_op_tx,
.conf_tx = b43_op_conf_tx,
Expand All @@ -4422,6 +4451,8 @@ static const struct ieee80211_ops b43_hw_ops = {
.stop = b43_op_stop,
.set_tim = b43_op_beacon_set_tim,
.sta_notify = b43_op_sta_notify,
.sw_scan_start = b43_op_sw_scan_start_notifier,
.sw_scan_complete = b43_op_sw_scan_complete_notifier,
};

/* Hard-reset the chip. Do not call this directly.
Expand Down

0 comments on commit f503982

Please sign in to comment.