On 12/10/2019 6:38, Soeren Moch wrote: > From: Wright Feng <wright.feng@xxxxxxxxxxx> > > With RSDB mode, FMAC and firmware are able to create 2 or more AP, > so we should not set mbss in vif structure if firmware does not > support MBSS feature. > > Signed-off-by: Wright Feng <wright.feng@xxxxxxxxxxx> Reviewed-by: Chi-Hsien Lin <chi-hsien.lin@xxxxxxxxxxx> > --- > Cc: Kalle Valo <kvalo@xxxxxxxxxxxxxx> > Cc: Arend van Spriel <arend.vanspriel@xxxxxxxxxxxx> > Cc: Franky Lin <franky.lin@xxxxxxxxxxxx> > Cc: Hante Meuleman <hante.meuleman@xxxxxxxxxxxx> > Cc: Chi-Hsien Lin <chi-hsien.lin@xxxxxxxxxxx> > Cc: Wright Feng <wright.feng@xxxxxxxxxxx> > Cc: linux-wireless@xxxxxxxxxxxxxxx > Cc: brcm80211-dev-list.pdl@xxxxxxxxxxxx > Cc: brcm80211-dev-list@xxxxxxxxxxx > Cc: netdev@xxxxxxxxxxxxxxx > Cc: linux-kernel@xxxxxxxxxxxxxxx > --- > drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c > index 9d9dc9195e9e..6eb3064c3721 100644 > --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c > +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c > @@ -5363,6 +5363,7 @@ struct brcmf_cfg80211_vif *brcmf_alloc_vif(struct brcmf_cfg80211_info *cfg, > struct brcmf_cfg80211_vif *vif_walk; > struct brcmf_cfg80211_vif *vif; > bool mbss; > + struct brcmf_if *ifp = brcmf_get_ifp(cfg->pub, 0); > > brcmf_dbg(TRACE, "allocating virtual interface (size=%zu)\n", > sizeof(*vif)); > @@ -5375,7 +5376,8 @@ struct brcmf_cfg80211_vif *brcmf_alloc_vif(struct brcmf_cfg80211_info *cfg, > > brcmf_init_prof(&vif->profile); > > - if (type == NL80211_IFTYPE_AP) { > + if (type == NL80211_IFTYPE_AP && > + brcmf_feat_is_enabled(ifp, BRCMF_FEAT_MBSS)) { > mbss = false; > list_for_each_entry(vif_walk, &cfg->vif_list, list) { > if (vif_walk->wdev.iftype == NL80211_IFTYPE_AP) { > -- > 2.17.1 > > . >