From c0fe58c44c9c18e56e50ce231294891d386864d6 Mon Sep 17 00:00:00 2001 From: Ting-Ying Li Date: Mon, 30 Aug 2021 04:14:35 -0500 Subject: [PATCH 070/296] brcmfmac: revise SoftAP channel setting We need to update "chanspec" iovar for each SoftAP creation because firmware will update the chanspec to current bsscfg for each bss. If we do not update it then the wrong chanspec will be shown on the result of 'wl -i [interface] status' command. No need to handle channel resource reusing for mbss mode by the host driver, it should be covered by firmware. Signed-off-by: Ting-Ying Li --- .../broadcom/brcm80211/brcmfmac/cfg80211.c | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c index 6e7f362e4eea..f2348018e600 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c @@ -5330,17 +5330,17 @@ brcmf_cfg80211_start_ap(struct wiphy *wiphy, struct net_device *ndev, err); goto exit; } - if (!mbss) { - /* Firmware 10.x requires setting channel after enabling - * AP and before bringing interface up. - */ - err = brcmf_fil_iovar_int_set(ifp, "chanspec", chanspec); - if (err < 0) { - bphy_err(drvr, "Set Channel failed: chspec=%d, %d\n", - chanspec, err); - goto exit; - } + + /* Firmware 10.x requires setting channel after enabling + * AP and before bringing interface up. + */ + err = brcmf_fil_iovar_int_set(ifp, "chanspec", chanspec); + if (err < 0) { + bphy_err(drvr, "Set Channel failed: chspec=%d, %d\n", + chanspec, err); + goto exit; } + err = brcmf_fil_cmd_int_set(ifp, BRCMF_C_UP, 1); if (err < 0) { bphy_err(drvr, "BRCMF_C_UP error (%d)\n", err); -- 2.25.1