Skip to content

Commit a0f0795

Browse files
Hante Meulemanlinvjw
authored andcommitted
brcmfmac: Update AP mode for GO creation.
With this update it is possible to create an P2P go. Handle the p2p go role in creation and the update beacon from cfg80211. Also store primary bss in global struct. Needed to map cfg device back to primary device. Reviewed-by: Arend Van Spriel <arend@broadcom.com> Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Signed-off-by: Hante Meuleman <meuleman@broadcom.com> Signed-off-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
1 parent 89286dc commit a0f0795

File tree

4 files changed

+183
-86
lines changed

4 files changed

+183
-86
lines changed

drivers/net/wireless/brcm80211/brcmfmac/fwil_types.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,4 +39,9 @@ struct brcmf_fil_chan_info_le {
3939
__le32 scan_channel;
4040
};
4141

42+
struct brcmf_fil_bss_enable_le {
43+
__le32 bsscfg_idx;
44+
__le32 enable;
45+
};
46+
4247
#endif /* FWIL_TYPES_H_ */

drivers/net/wireless/brcm80211/brcmfmac/p2p.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -691,15 +691,17 @@ void brcmf_p2p_cancel_remain_on_channel(struct brcmf_if *ifp)
691691
*
692692
* @cfg: driver private data for cfg80211 interface.
693693
*/
694-
void brcmf_p2p_attach(struct brcmf_cfg80211_info *cfg)
694+
void brcmf_p2p_attach(struct brcmf_cfg80211_info *cfg,
695+
struct brcmf_cfg80211_vif *vif)
695696
{
696697
struct brcmf_p2p_info *p2p;
697698

698699
p2p = &cfg->p2p;
699700

700701
p2p->cfg = cfg;
701-
brcmf_p2p_set_firmware(p2p);
702+
p2p->bss_idx[P2PAPI_BSSCFG_PRIMARY].vif = vif;
702703
brcmf_p2p_generate_bss_mac(p2p);
704+
brcmf_p2p_set_firmware(p2p);
703705
}
704706

705707
/**

drivers/net/wireless/brcm80211/brcmfmac/p2p.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,8 @@ struct brcmf_p2p_info {
102102
struct ieee80211_channel remain_on_channel;
103103
};
104104

105-
void brcmf_p2p_attach(struct brcmf_cfg80211_info *cfg);
105+
void brcmf_p2p_attach(struct brcmf_cfg80211_info *cfg,
106+
struct brcmf_cfg80211_vif *vif);
106107
void brcmf_p2p_detach(struct brcmf_p2p_info *p2p);
107108
struct wireless_dev *brcmf_p2p_add_vif(struct wiphy *wiphy, const char *name,
108109
enum nl80211_iftype type, u32 *flags,

0 commit comments

Comments
 (0)