mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2025-04-21 12:27:27 +03:00
madwifi: improve autochannel, nuke some dead code, fix scanlist building from channel mode
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@15702 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
@@ -124,7 +124,7 @@
|
||||
void
|
||||
ieee80211_scan_attach(struct ieee80211com *ic)
|
||||
{
|
||||
@@ -1155,7 +1272,7 @@ ieee80211_scan_dfs_action(struct ieee802
|
||||
@@ -1168,7 +1285,7 @@ ieee80211_scan_dfs_action(struct ieee802
|
||||
IEEE80211_RADAR_CHANCHANGE_TBTT_COUNT;
|
||||
ic->ic_flags |= IEEE80211_F_CHANSWITCH;
|
||||
} else {
|
||||
@@ -133,7 +133,7 @@
|
||||
IEEE80211_DPRINTF(vap, IEEE80211_MSG_DOTH,
|
||||
"%s: directly switching to channel "
|
||||
"%3d (%4d MHz)\n", __func__,
|
||||
@@ -1166,6 +1283,9 @@ ieee80211_scan_dfs_action(struct ieee802
|
||||
@@ -1179,6 +1296,9 @@ ieee80211_scan_dfs_action(struct ieee802
|
||||
* change the channel here. */
|
||||
change_channel(ic, new_channel);
|
||||
ic->ic_bsschan = new_channel;
|
||||
@@ -307,7 +307,7 @@
|
||||
}
|
||||
|
||||
|
||||
@@ -605,6 +613,7 @@ ap_end(struct ieee80211_scan_state *ss,
|
||||
@@ -575,6 +583,7 @@ ap_end(struct ieee80211_scan_state *ss,
|
||||
struct ap_state *as = ss->ss_priv;
|
||||
struct ieee80211_channel *bestchan = NULL;
|
||||
struct ieee80211com *ic = NULL;
|
||||
@@ -315,10 +315,10 @@
|
||||
int res = 1;
|
||||
|
||||
SCAN_AP_LOCK_IRQ(as);
|
||||
@@ -613,8 +622,11 @@ ap_end(struct ieee80211_scan_state *ss,
|
||||
("wrong opmode %u", vap->iv_opmode));
|
||||
@@ -586,8 +595,11 @@ ap_end(struct ieee80211_scan_state *ss,
|
||||
|
||||
ic = vap->iv_ic;
|
||||
/* record stats for the channel that was scanned last */
|
||||
ic->ic_set_channel(ic);
|
||||
+ spin_lock_irqsave(&channel_lock, sflags);
|
||||
+ ieee80211_scan_set_bss_channel(ic, NULL);
|
||||
bestchan = pick_channel(ss, vap, flags);
|
||||
@@ -327,7 +327,7 @@
|
||||
if (ss->ss_last > 0) {
|
||||
/* no suitable channel, should not happen */
|
||||
printk(KERN_ERR "%s: %s: no suitable channel! "
|
||||
@@ -633,6 +645,7 @@ ap_end(struct ieee80211_scan_state *ss,
|
||||
@@ -606,6 +618,7 @@ ap_end(struct ieee80211_scan_state *ss,
|
||||
bestchan->ic_freq, bestchan->ic_flags &
|
||||
~IEEE80211_CHAN_TURBO)) == NULL) {
|
||||
/* should never happen ?? */
|
||||
@@ -335,7 +335,7 @@
|
||||
SCAN_AP_UNLOCK_IRQ_EARLY(as);
|
||||
return 0;
|
||||
}
|
||||
@@ -645,6 +658,9 @@ ap_end(struct ieee80211_scan_state *ss,
|
||||
@@ -618,6 +631,9 @@ ap_end(struct ieee80211_scan_state *ss,
|
||||
as->as_action = action;
|
||||
as->as_selbss = se;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user