brcmfmac: update beacon IE when bss up and clear when stopped
PATCH 1/1 brcmfmac: update beacon IE when bss up and clear when stopped
Firmware doesn't update beacon vendor IEs when bss is down, so move brcmf_config_ap_mgmt_ie after BSS up. And host driver should clear IEs when AP stopped so that the IEs in host side will be synced with in firmware side.
Signed-off-by Wright Feng <[email protected]>
--- drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c +3 -2
@@ -4578,8 +4578,6 @@ brcmf_cfg80211_start_ap(struct wiphy *wiphy, struct net_device *ndev,brcmf_configure_opensecurity (ifp); } -brcmf_config_ap_mgmt_ie (ifp->vif, &settings->beacon); -/* Parameters shared by all radio interfaces */ if (!mbss) {if ((supports_11d) && (is_11d != ifp->vif->is_11d)) {
@@ -4708,6 +4706,7 @@ brcmf_cfg80211_start_ap(struct wiphy *wiphy, struct net_device *ndev,WARN_ON (1 ); } +brcmf_config_ap_mgmt_ie (ifp->vif, &settings->beacon);set_bit (BRCMF_VIF_STATUS_AP_CREATED , &ifp->vif->sme_state);brcmf_net_setcarrier (ifp, true);
@@ -4764,6 +4763,8 @@ static int brcmf_cfg80211_stop_ap(struct wiphy *wiphy, struct net_device *ndev) err =brcmf_fil_cmd_int_set (ifp,BRCMF_C_UP ,1 );if (err <0 )brcmf_err ("BRCMF_C_UP error %d\n" , err); + +brcmf_vif_clear_mgmt_ies (ifp->vif); }else { bss_enable.bsscfgidx =cpu_to_le32 (ifp->bsscfgidx); bss_enable.enable =cpu_to_le32 (0 );
Signature · 1 line
2.1.0
Quoted 3 lines · Wright Feng
Firmware doesn't update beacon vendor IEs when bss is down, so move
brcmf_config_ap_mgmt_ieafter BSS up. And host driver should clear IEs when AP stopped so that the IEs in host side will be synced with in firmware side.Signed-off-by Wright Feng <[email protected]>
Please word wrap the commit log, see Documentation/SubmittingPatches for more info.
Signature · 1 line
Kalle Valo