From 60ba17b69f9bc3c752555b64e8d6aff9eb263d56 Mon Sep 17 00:00:00 2001 From: hauke Date: Sun, 24 Feb 2013 01:11:20 +0000 Subject: mac80211: brcmsmac: add ap mode support This does not work very well. I did not got this running in 5GHz mode and it was not very fast. git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35763 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- ...-brcmsmac-remove-brcms_bss_cfg-associated.patch | 74 ++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 package/mac80211/patches/863-brcmsmac-remove-brcms_bss_cfg-associated.patch (limited to 'package/mac80211/patches/863-brcmsmac-remove-brcms_bss_cfg-associated.patch') diff --git a/package/mac80211/patches/863-brcmsmac-remove-brcms_bss_cfg-associated.patch b/package/mac80211/patches/863-brcmsmac-remove-brcms_bss_cfg-associated.patch new file mode 100644 index 000000000..7f84f00e2 --- /dev/null +++ b/package/mac80211/patches/863-brcmsmac-remove-brcms_bss_cfg-associated.patch @@ -0,0 +1,74 @@ +--- a/drivers/net/wireless/brcm80211/brcmsmac/main.c ++++ b/drivers/net/wireless/brcm80211/brcmsmac/main.c +@@ -3051,8 +3051,6 @@ static void brcms_b_antsel_set(struct br + */ + static bool brcms_c_ps_allowed(struct brcms_c_info *wlc) + { +- struct brcms_bss_cfg *cfg = wlc->bsscfg; +- + /* disallow PS when one of the following global conditions meets */ + if (!wlc->pub->associated) + return false; +@@ -3061,9 +3059,6 @@ static bool brcms_c_ps_allowed(struct br + if (wlc->filter_flags & FIF_PROMISC_IN_BSS) + return false; + +- if (cfg->associated) +- return false; +- + return true; + } + +@@ -3821,7 +3816,7 @@ static void brcms_c_set_home_chanspec(st + if (wlc->home_chanspec != chanspec) { + wlc->home_chanspec = chanspec; + +- if (wlc->bsscfg->associated) ++ if (wlc->pub->associated) + wlc->bsscfg->current_bss->chanspec = chanspec; + } + } +@@ -5435,7 +5430,7 @@ static void brcms_c_ofdm_rateset_war(str + u8 r; + bool war = false; + +- if (wlc->bsscfg->associated) ++ if (wlc->pub->associated) + r = wlc->bsscfg->current_bss->rateset.rates[0]; + else + r = wlc->default_bss->rateset.rates[0]; +@@ -5529,7 +5524,7 @@ int brcms_c_set_rateset(struct brcms_c_i + /* merge rateset coming in with the current mcsset */ + if (wlc->pub->_n_enab & SUPPORT_11N) { + struct brcms_bss_info *mcsset_bss; +- if (wlc->bsscfg->associated) ++ if (wlc->pub->associated) + mcsset_bss = wlc->bsscfg->current_bss; + else + mcsset_bss = wlc->default_bss; +@@ -7498,7 +7493,6 @@ void brcms_c_scan_stop(struct brcms_c_in + void brcms_c_associate_upd(struct brcms_c_info *wlc, bool state) + { + wlc->pub->associated = state; +- wlc->bsscfg->associated = state; + } + + /* +--- a/drivers/net/wireless/brcm80211/brcmsmac/main.h ++++ b/drivers/net/wireless/brcm80211/brcmsmac/main.h +@@ -589,7 +589,6 @@ enum brcms_bss_type { + * type: interface type + * up: is this configuration up operational + * enable: is this configuration enabled +- * associated: is BSS in ASSOCIATED state + * SSID_len: the length of SSID + * SSID: SSID string + * +@@ -608,7 +607,6 @@ struct brcms_bss_cfg { + enum brcms_bss_type type; + bool up; + bool enable; +- bool associated; + u8 SSID_len; + u8 SSID[IEEE80211_MAX_SSID_LEN]; + u8 BSSID[ETH_ALEN]; -- cgit v1.2.3