diff options
author | Felix Fietkau <nbd@openwrt.org> | 2013-04-28 12:37:09 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2013-04-28 12:37:09 +0000 |
commit | d520c048d8eda9083b3fffb4e4e0a82a8a8b0c6b (patch) | |
tree | 55111555c00d21d4857262bd9ca3ee0bc2bcf222 /package/mac80211/patches/862-brcmsmac-remove-brcms_bss_cfg-BSS.patch | |
parent | acd03cf8d8c3a047108b7983944b0c8d0228f812 (diff) | |
download | upstream-d520c048d8eda9083b3fffb4e4e0a82a8a8b0c6b.tar.gz upstream-d520c048d8eda9083b3fffb4e4e0a82a8a8b0c6b.tar.bz2 upstream-d520c048d8eda9083b3fffb4e4e0a82a8a8b0c6b.zip |
mac80211: update to 2013-02-22 from trunk + backports
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/branches/attitude_adjustment@36470 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/mac80211/patches/862-brcmsmac-remove-brcms_bss_cfg-BSS.patch')
-rw-r--r-- | package/mac80211/patches/862-brcmsmac-remove-brcms_bss_cfg-BSS.patch | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/package/mac80211/patches/862-brcmsmac-remove-brcms_bss_cfg-BSS.patch b/package/mac80211/patches/862-brcmsmac-remove-brcms_bss_cfg-BSS.patch new file mode 100644 index 0000000000..1fafd63a28 --- /dev/null +++ b/package/mac80211/patches/862-brcmsmac-remove-brcms_bss_cfg-BSS.patch @@ -0,0 +1,79 @@ +--- a/drivers/net/wireless/brcm80211/brcmsmac/main.c ++++ b/drivers/net/wireless/brcm80211/brcmsmac/main.c +@@ -1071,7 +1071,7 @@ brcms_b_txstatus(struct brcms_hardware * + + static void brcms_c_tbtt(struct brcms_c_info *wlc) + { +- if (!wlc->bsscfg->BSS) ++ if (wlc->bsscfg->type == BRCMS_TYPE_ADHOC) + /* + * DirFrmQ is now valid...defer setting until end + * of ATIM window +@@ -3061,16 +3061,8 @@ static bool brcms_c_ps_allowed(struct br + if (wlc->filter_flags & FIF_PROMISC_IN_BSS) + return false; + +- if (cfg->associated) { +- /* +- * disallow PS when one of the following +- * bsscfg specific conditions meets +- */ +- if (!cfg->BSS) +- return false; +- ++ if (cfg->associated) + return false; +- } + + return true; + } +@@ -5080,8 +5072,9 @@ int brcms_c_up(struct brcms_c_info *wlc) + struct brcms_bss_cfg *bsscfg = wlc->bsscfg; + mboolset(wlc->pub->radio_disabled, + WL_RADIO_HW_DISABLE); +- +- if (bsscfg->enable && bsscfg->BSS) ++ if (bsscfg->enable && ++ (bsscfg->type == BRCMS_TYPE_STATION || ++ bsscfg->type == BRCMS_TYPE_ADHOC)) + brcms_err(wlc->hw->d11core, + "wl%d: up: rfdisable -> " + "bsscfg_disable()\n", +@@ -7390,7 +7383,8 @@ void brcms_c_update_beacon(struct brcms_ + { + struct brcms_bss_cfg *bsscfg = wlc->bsscfg; + +- if (bsscfg->up && !bsscfg->BSS) ++ if (bsscfg->up && (bsscfg->type == BRCMS_TYPE_AP || ++ bsscfg->type == BRCMS_TYPE_ADHOC)) + /* Clear the soft intmask */ + wlc->defmacintmask &= ~MI_BCNTPL; + } +@@ -7465,7 +7459,8 @@ void brcms_c_update_probe_resp(struct br + struct brcms_bss_cfg *bsscfg = wlc->bsscfg; + + /* update AP or IBSS probe responses */ +- if (bsscfg->up && !bsscfg->BSS) ++ if (bsscfg->up && (bsscfg->type == BRCMS_TYPE_AP || ++ bsscfg->type == BRCMS_TYPE_ADHOC)) + brcms_c_bss_update_probe_resp(wlc, bsscfg, suspend); + } + +--- a/drivers/net/wireless/brcm80211/brcmsmac/main.h ++++ b/drivers/net/wireless/brcm80211/brcmsmac/main.h +@@ -590,7 +590,6 @@ enum brcms_bss_type { + * up: is this configuration up operational + * enable: is this configuration enabled + * associated: is BSS in ASSOCIATED state +- * BSS: infraustructure or adhoc + * SSID_len: the length of SSID + * SSID: SSID string + * +@@ -610,7 +609,6 @@ struct brcms_bss_cfg { + bool up; + bool enable; + bool associated; +- bool BSS; + u8 SSID_len; + u8 SSID[IEEE80211_MAX_SSID_LEN]; + u8 BSSID[ETH_ALEN]; |