Lines Matching refs:p2p

466 static void brcmf_p2p_generate_bss_mac(struct brcmf_p2p_info *p2p, u8 *dev_addr)  in brcmf_p2p_generate_bss_mac()  argument
468 struct brcmf_if *pri_ifp = p2p->bss_idx[P2PAPI_BSSCFG_PRIMARY].vif->ifp; in brcmf_p2p_generate_bss_mac()
479 memcpy(p2p->dev_addr, dev_addr, ETH_ALEN); in brcmf_p2p_generate_bss_mac()
481 p2p->dev_addr[0] |= 0x02; in brcmf_p2p_generate_bss_mac()
487 memcpy(p2p->int_addr, p2p->dev_addr, ETH_ALEN); in brcmf_p2p_generate_bss_mac()
488 p2p->int_addr[0] |= 0x02; in brcmf_p2p_generate_bss_mac()
489 p2p->int_addr[4] ^= 0x80; in brcmf_p2p_generate_bss_mac()
547 static s32 brcmf_p2p_deinit_discovery(struct brcmf_p2p_info *p2p) in brcmf_p2p_deinit_discovery() argument
554 vif = p2p->bss_idx[P2PAPI_BSSCFG_DEVICE].vif; in brcmf_p2p_deinit_discovery()
558 vif = p2p->bss_idx[P2PAPI_BSSCFG_PRIMARY].vif; in brcmf_p2p_deinit_discovery()
571 static int brcmf_p2p_enable_discovery(struct brcmf_p2p_info *p2p) in brcmf_p2p_enable_discovery() argument
577 vif = p2p->bss_idx[P2PAPI_BSSCFG_DEVICE].vif; in brcmf_p2p_enable_discovery()
584 if (test_bit(BRCMF_P2P_STATUS_ENABLED, &p2p->status)) { in brcmf_p2p_enable_discovery()
590 vif = p2p->bss_idx[P2PAPI_BSSCFG_PRIMARY].vif; in brcmf_p2p_enable_discovery()
596 vif = p2p->bss_idx[P2PAPI_BSSCFG_DEVICE].vif; in brcmf_p2p_enable_discovery()
615 set_bit(BRCMF_P2P_STATUS_ENABLED, &p2p->status); in brcmf_p2p_enable_discovery()
630 static s32 brcmf_p2p_escan(struct brcmf_p2p_info *p2p, u32 num_chans, in brcmf_p2p_escan() argument
651 vif = p2p->bss_idx[bss_type].vif; in brcmf_p2p_escan()
695 if (p2p->cfg->active_scan) in brcmf_p2p_escan()
714 else if (brcmf_get_vif_state_any(p2p->cfg, BRCMF_VIF_STATUS_CONNECTED)) in brcmf_p2p_escan()
749 set_bit(BRCMF_SCAN_STATUS_BUSY, &p2p->cfg->scan_status); in brcmf_p2p_escan()
771 struct brcmf_p2p_info *p2p = &cfg->p2p; in brcmf_p2p_run_escan() local
793 vif = p2p->bss_idx[P2PAPI_BSSCFG_CONNECTION].vif; in brcmf_p2p_run_escan()
822 chanspecs[i] = channel_to_chanspec(&p2p->cfg->d11inf, in brcmf_p2p_run_escan()
828 err = brcmf_p2p_escan(p2p, num_nodfs, chanspecs, search_state, in brcmf_p2p_run_escan()
890 struct brcmf_p2p_info *p2p = &cfg->p2p; in brcmf_p2p_scan_prep() local
900 p2p->afx_hdl.my_listen_chan = err; in brcmf_p2p_scan_prep()
902 clear_bit(BRCMF_P2P_STATUS_GO_NEG_PHASE, &p2p->status); in brcmf_p2p_scan_prep()
905 err = brcmf_p2p_enable_discovery(p2p); in brcmf_p2p_scan_prep()
909 vif = p2p->bss_idx[P2PAPI_BSSCFG_DEVICE].vif; in brcmf_p2p_scan_prep()
929 brcmf_p2p_discover_listen(struct brcmf_p2p_info *p2p, u16 channel, u32 duration) in brcmf_p2p_discover_listen() argument
935 vif = p2p->bss_idx[P2PAPI_BSSCFG_DEVICE].vif; in brcmf_p2p_discover_listen()
942 if (test_bit(BRCMF_P2P_STATUS_DISCOVER_LISTEN, &p2p->status)) { in brcmf_p2p_discover_listen()
950 p2p->cfg->d11inf.encchspec(&ch); in brcmf_p2p_discover_listen()
954 set_bit(BRCMF_P2P_STATUS_DISCOVER_LISTEN, &p2p->status); in brcmf_p2p_discover_listen()
955 p2p->remain_on_channel_cookie++; in brcmf_p2p_discover_listen()
975 struct brcmf_p2p_info *p2p = &cfg->p2p; in brcmf_p2p_remain_on_channel() local
983 err = brcmf_p2p_enable_discovery(p2p); in brcmf_p2p_remain_on_channel()
986 err = brcmf_p2p_discover_listen(p2p, channel_nr, duration); in brcmf_p2p_remain_on_channel()
990 memcpy(&p2p->remain_on_channel, channel, sizeof(*channel)); in brcmf_p2p_remain_on_channel()
991 *cookie = p2p->remain_on_channel_cookie; in brcmf_p2p_remain_on_channel()
1012 struct brcmf_p2p_info *p2p = &cfg->p2p; in brcmf_p2p_notify_listen_complete() local
1016 &p2p->status)) { in brcmf_p2p_notify_listen_complete()
1018 &p2p->status)) { in brcmf_p2p_notify_listen_complete()
1020 &p2p->status); in brcmf_p2p_notify_listen_complete()
1022 complete(&p2p->wait_next_af); in brcmf_p2p_notify_listen_complete()
1026 p2p->remain_on_channel_cookie, in brcmf_p2p_notify_listen_complete()
1027 &p2p->remain_on_channel, in brcmf_p2p_notify_listen_complete()
1058 static s32 brcmf_p2p_act_frm_search(struct brcmf_p2p_info *p2p, u16 channel) in brcmf_p2p_act_frm_search() argument
1082 p2p->cfg->d11inf.encchspec(&ch); in brcmf_p2p_act_frm_search()
1088 p2p->cfg->d11inf.encchspec(&ch); in brcmf_p2p_act_frm_search()
1091 p2p->cfg->d11inf.encchspec(&ch); in brcmf_p2p_act_frm_search()
1094 p2p->cfg->d11inf.encchspec(&ch); in brcmf_p2p_act_frm_search()
1097 err = brcmf_p2p_escan(p2p, channel_cnt, default_chan_list, in brcmf_p2p_act_frm_search()
1115 struct brcmf_p2p_info *p2p = container_of(afx_hdl, in brcmf_p2p_afx_handler() local
1125 err = brcmf_p2p_discover_listen(p2p, afx_hdl->my_listen_chan, in brcmf_p2p_afx_handler()
1128 err = brcmf_p2p_act_frm_search(p2p, afx_hdl->peer_listen_chan); in brcmf_p2p_afx_handler()
1133 &p2p->status)) in brcmf_p2p_afx_handler()
1145 static s32 brcmf_p2p_af_searching_channel(struct brcmf_p2p_info *p2p) in brcmf_p2p_af_searching_channel() argument
1147 struct afx_hdl *afx_hdl = &p2p->afx_hdl; in brcmf_p2p_af_searching_channel()
1154 pri_vif = p2p->bss_idx[P2PAPI_BSSCFG_PRIMARY].vif; in brcmf_p2p_af_searching_channel()
1157 set_bit(BRCMF_P2P_STATUS_FINDING_COMMON_CHANNEL, &p2p->status); in brcmf_p2p_af_searching_channel()
1176 &p2p->status))) in brcmf_p2p_af_searching_channel()
1190 &p2p->status))) in brcmf_p2p_af_searching_channel()
1206 clear_bit(BRCMF_P2P_STATUS_FINDING_COMMON_CHANNEL, &p2p->status); in brcmf_p2p_af_searching_channel()
1223 struct brcmf_p2p_info *p2p = &cfg->p2p; in brcmf_p2p_scan_finding_common_channel() local
1224 struct afx_hdl *afx_hdl = &p2p->afx_hdl; in brcmf_p2p_scan_finding_common_channel()
1230 if (!test_bit(BRCMF_P2P_STATUS_FINDING_COMMON_CHANNEL, &p2p->status)) in brcmf_p2p_scan_finding_common_channel()
1273 struct brcmf_p2p_info *p2p = &cfg->p2p; in brcmf_p2p_stop_wait_next_action_frame() local
1276 if (test_bit(BRCMF_P2P_STATUS_SENDING_ACT_FRAME, &p2p->status) && in brcmf_p2p_stop_wait_next_action_frame()
1277 (test_bit(BRCMF_P2P_STATUS_ACTION_TX_COMPLETED, &p2p->status) || in brcmf_p2p_stop_wait_next_action_frame()
1278 test_bit(BRCMF_P2P_STATUS_ACTION_TX_NOACK, &p2p->status))) { in brcmf_p2p_stop_wait_next_action_frame()
1283 if (p2p->af_sent_channel) in brcmf_p2p_stop_wait_next_action_frame()
1286 &p2p->status)) { in brcmf_p2p_stop_wait_next_action_frame()
1302 brcmf_p2p_gon_req_collision(struct brcmf_p2p_info *p2p, u8 *mac) in brcmf_p2p_gon_req_collision() argument
1304 struct brcmf_cfg80211_info *cfg = p2p->cfg; in brcmf_p2p_gon_req_collision()
1309 if (!test_bit(BRCMF_P2P_STATUS_WAITING_NEXT_ACT_FRAME, &p2p->status) || in brcmf_p2p_gon_req_collision()
1310 !p2p->gon_req_action) in brcmf_p2p_gon_req_collision()
1319 ifp = p2p->bss_idx[P2PAPI_BSSCFG_DEVICE].vif->ifp; in brcmf_p2p_gon_req_collision()
1322 p2p->block_gon_req_tx = true; in brcmf_p2p_gon_req_collision()
1327 &p2p->status)) in brcmf_p2p_gon_req_collision()
1328 complete(&p2p->afx_hdl.act_frm_scan); in brcmf_p2p_gon_req_collision()
1330 &p2p->status)) in brcmf_p2p_gon_req_collision()
1355 struct brcmf_p2p_info *p2p = &cfg->p2p; in brcmf_p2p_notify_action_frame_rx() local
1356 struct afx_hdl *afx_hdl = &p2p->afx_hdl; in brcmf_p2p_notify_action_frame_rx()
1384 (brcmf_p2p_gon_req_collision(p2p, (u8 *)e->addr))) { in brcmf_p2p_notify_action_frame_rx()
1386 &p2p->status) && in brcmf_p2p_notify_action_frame_rx()
1401 clear_bit(BRCMF_P2P_STATUS_GO_NEG_PHASE, &p2p->status); in brcmf_p2p_notify_action_frame_rx()
1408 if (test_bit(BRCMF_P2P_STATUS_WAITING_NEXT_ACT_FRAME, &p2p->status) && in brcmf_p2p_notify_action_frame_rx()
1409 (p2p->next_af_subtype == action)) { in brcmf_p2p_notify_action_frame_rx()
1412 &p2p->status); in brcmf_p2p_notify_action_frame_rx()
1457 struct brcmf_p2p_info *p2p = &cfg->p2p; in brcmf_p2p_notify_action_tx_complete() local
1464 if (!test_bit(BRCMF_P2P_STATUS_SENDING_ACT_FRAME, &p2p->status)) in brcmf_p2p_notify_action_tx_complete()
1470 &p2p->status); in brcmf_p2p_notify_action_tx_complete()
1472 set_bit(BRCMF_P2P_STATUS_ACTION_TX_NOACK, &p2p->status); in brcmf_p2p_notify_action_tx_complete()
1480 complete(&p2p->send_af_done); in brcmf_p2p_notify_action_tx_complete()
1498 static s32 brcmf_p2p_tx_action_frame(struct brcmf_p2p_info *p2p, in brcmf_p2p_tx_action_frame() argument
1507 reinit_completion(&p2p->send_af_done); in brcmf_p2p_tx_action_frame()
1508 clear_bit(BRCMF_P2P_STATUS_ACTION_TX_COMPLETED, &p2p->status); in brcmf_p2p_tx_action_frame()
1509 clear_bit(BRCMF_P2P_STATUS_ACTION_TX_NOACK, &p2p->status); in brcmf_p2p_tx_action_frame()
1511 vif = p2p->bss_idx[P2PAPI_BSSCFG_DEVICE].vif; in brcmf_p2p_tx_action_frame()
1519 p2p->af_sent_channel = le32_to_cpu(af_params->channel); in brcmf_p2p_tx_action_frame()
1520 p2p->af_tx_sent_jiffies = jiffies; in brcmf_p2p_tx_action_frame()
1522 timeout = wait_for_completion_timeout(&p2p->send_af_done, in brcmf_p2p_tx_action_frame()
1525 if (test_bit(BRCMF_P2P_STATUS_ACTION_TX_COMPLETED, &p2p->status)) { in brcmf_p2p_tx_action_frame()
1532 clear_bit(BRCMF_P2P_STATUS_ACTION_TX_COMPLETED, &p2p->status); in brcmf_p2p_tx_action_frame()
1533 clear_bit(BRCMF_P2P_STATUS_ACTION_TX_NOACK, &p2p->status); in brcmf_p2p_tx_action_frame()
1553 struct brcmf_p2p_info *p2p = &cfg->p2p; in brcmf_p2p_pub_af_tx() local
1567 set_bit(BRCMF_P2P_STATUS_GO_NEG_PHASE, &p2p->status); in brcmf_p2p_pub_af_tx()
1570 p2p->next_af_subtype = act_frm->subtype + 1; in brcmf_p2p_pub_af_tx()
1571 p2p->gon_req_action = true; in brcmf_p2p_pub_af_tx()
1576 p2p->next_af_subtype = act_frm->subtype + 1; in brcmf_p2p_pub_af_tx()
1583 clear_bit(BRCMF_P2P_STATUS_GO_NEG_PHASE, &p2p->status); in brcmf_p2p_pub_af_tx()
1592 p2p->next_af_subtype = act_frm->subtype + 1; in brcmf_p2p_pub_af_tx()
1603 p2p->next_af_subtype = act_frm->subtype + 1; in brcmf_p2p_pub_af_tx()
1620 p2p->next_af_subtype = act_frm->subtype + 1; in brcmf_p2p_pub_af_tx()
1626 p2p->next_af_subtype = P2P_PAF_GON_REQ; in brcmf_p2p_pub_af_tx()
1650 struct brcmf_p2p_info *p2p = &cfg->p2p; in brcmf_p2p_send_action_frame() local
1654 struct afx_hdl *afx_hdl = &p2p->afx_hdl; in brcmf_p2p_send_action_frame()
1677 p2p->next_af_subtype = P2P_PAF_SUBTYPE_INVALID; in brcmf_p2p_send_action_frame()
1678 p2p->gon_req_action = false; in brcmf_p2p_send_action_frame()
1702 p2p->next_af_subtype = action + 1; in brcmf_p2p_send_action_frame()
1729 &p2p->bss_idx[P2PAPI_BSSCFG_PRIMARY].vif->sme_state)) in brcmf_p2p_send_action_frame()
1743 if (p2p->next_af_subtype != P2P_PAF_SUBTYPE_INVALID) { in brcmf_p2p_send_action_frame()
1745 set_bit(BRCMF_P2P_STATUS_WAITING_NEXT_ACT_FRAME, &p2p->status); in brcmf_p2p_send_action_frame()
1748 p2p->af_sent_channel = 0; in brcmf_p2p_send_action_frame()
1749 set_bit(BRCMF_P2P_STATUS_SENDING_ACT_FRAME, &p2p->status); in brcmf_p2p_send_action_frame()
1753 p2p->bss_idx[P2PAPI_BSSCFG_DEVICE].vif->saved_ie.probe_req_ie_len) { in brcmf_p2p_send_action_frame()
1754 afx_hdl = &p2p->afx_hdl; in brcmf_p2p_send_action_frame()
1757 if (brcmf_p2p_af_searching_channel(p2p) == in brcmf_p2p_send_action_frame()
1775 while (!p2p->block_gon_req_tx && in brcmf_p2p_send_action_frame()
1777 ack = !brcmf_p2p_tx_action_frame(p2p, af_params); in brcmf_p2p_send_action_frame()
1782 clear_bit(BRCMF_P2P_STATUS_GO_NEG_PHASE, &p2p->status); in brcmf_p2p_send_action_frame()
1786 clear_bit(BRCMF_P2P_STATUS_SENDING_ACT_FRAME, &p2p->status); in brcmf_p2p_send_action_frame()
1793 if (ack && config_af_params.extra_listen && !p2p->block_gon_req_tx && in brcmf_p2p_send_action_frame()
1794 test_bit(BRCMF_P2P_STATUS_WAITING_NEXT_ACT_FRAME, &p2p->status) && in brcmf_p2p_send_action_frame()
1795 p2p->af_sent_channel == afx_hdl->my_listen_chan) { in brcmf_p2p_send_action_frame()
1796 delta_ms = jiffies_to_msecs(jiffies - p2p->af_tx_sent_jiffies); in brcmf_p2p_send_action_frame()
1804 &p2p->status); in brcmf_p2p_send_action_frame()
1809 if (!brcmf_p2p_discover_listen(p2p, in brcmf_p2p_send_action_frame()
1810 p2p->af_sent_channel, in brcmf_p2p_send_action_frame()
1816 wait_for_completion_timeout(&p2p->wait_next_af, in brcmf_p2p_send_action_frame()
1820 &p2p->status); in brcmf_p2p_send_action_frame()
1824 if (p2p->block_gon_req_tx) { in brcmf_p2p_send_action_frame()
1828 p2p->block_gon_req_tx = false; in brcmf_p2p_send_action_frame()
1832 clear_bit(BRCMF_P2P_STATUS_WAITING_NEXT_ACT_FRAME, &p2p->status); in brcmf_p2p_send_action_frame()
1852 struct brcmf_p2p_info *p2p = &cfg->p2p; in brcmf_p2p_notify_rx_mgmt_p2p_probereq() local
1853 struct afx_hdl *afx_hdl = &p2p->afx_hdl; in brcmf_p2p_notify_rx_mgmt_p2p_probereq()
1869 if (test_bit(BRCMF_P2P_STATUS_FINDING_COMMON_CHANNEL, &p2p->status) && in brcmf_p2p_notify_rx_mgmt_p2p_probereq()
1883 if (test_bit(BRCMF_P2P_STATUS_GO_NEG_PHASE, &p2p->status)) { in brcmf_p2p_notify_rx_mgmt_p2p_probereq()
1920 struct brcmf_p2p_info *p2p; in brcmf_p2p_attach() local
1925 p2p = &cfg->p2p; in brcmf_p2p_attach()
1926 p2p->cfg = cfg; in brcmf_p2p_attach()
1933 p2p->bss_idx[P2PAPI_BSSCFG_PRIMARY].vif = pri_ifp->vif; in brcmf_p2p_attach()
1950 p2p->bss_idx[P2PAPI_BSSCFG_DEVICE].vif = p2p_vif; in brcmf_p2p_attach()
1952 brcmf_p2p_generate_bss_mac(p2p, NULL); in brcmf_p2p_attach()
1953 memcpy(p2p_ifp->mac_addr, p2p->dev_addr, ETH_ALEN); in brcmf_p2p_attach()
1954 brcmf_p2p_set_firmware(pri_ifp, p2p->dev_addr); in brcmf_p2p_attach()
1978 init_completion(&p2p->send_af_done); in brcmf_p2p_attach()
1979 INIT_WORK(&p2p->afx_hdl.afx_work, brcmf_p2p_afx_handler); in brcmf_p2p_attach()
1980 init_completion(&p2p->afx_hdl.act_frm_scan); in brcmf_p2p_attach()
1981 init_completion(&p2p->wait_next_af); in brcmf_p2p_attach()
1993 void brcmf_p2p_detach(struct brcmf_p2p_info *p2p) in brcmf_p2p_detach() argument
1997 vif = p2p->bss_idx[P2PAPI_BSSCFG_DEVICE].vif; in brcmf_p2p_detach()
2000 brcmf_p2p_deinit_discovery(p2p); in brcmf_p2p_detach()
2003 p2p->bss_idx[P2PAPI_BSSCFG_DEVICE].vif = NULL; in brcmf_p2p_detach()
2006 memset(p2p, 0, sizeof(*p2p)); in brcmf_p2p_detach()
2015 static void brcmf_p2p_get_current_chanspec(struct brcmf_p2p_info *p2p, in brcmf_p2p_get_current_chanspec() argument
2024 ifp = p2p->bss_idx[P2PAPI_BSSCFG_PRIMARY].vif->ifp; in brcmf_p2p_get_current_chanspec()
2044 p2p->cfg->d11inf.encchspec(&ch); in brcmf_p2p_get_current_chanspec()
2057 struct brcmf_p2p_info *p2p = &cfg->p2p; in brcmf_p2p_ifchange() local
2065 vif = p2p->bss_idx[P2PAPI_BSSCFG_PRIMARY].vif; in brcmf_p2p_ifchange()
2071 vif = p2p->bss_idx[P2PAPI_BSSCFG_CONNECTION].vif; in brcmf_p2p_ifchange()
2081 brcmf_p2p_get_current_chanspec(p2p, &chanspec); in brcmf_p2p_ifchange()
2085 memcpy(if_request.addr, p2p->int_addr, sizeof(if_request.addr)); in brcmf_p2p_ifchange()
2109 static int brcmf_p2p_request_p2p_if(struct brcmf_p2p_info *p2p, in brcmf_p2p_request_p2p_if() argument
2118 brcmf_p2p_get_current_chanspec(p2p, &chanspec); in brcmf_p2p_request_p2p_if()
2160 static struct wireless_dev *brcmf_p2p_create_p2pdev(struct brcmf_p2p_info *p2p, in brcmf_p2p_create_p2pdev() argument
2170 if (p2p->bss_idx[P2PAPI_BSSCFG_DEVICE].vif) in brcmf_p2p_create_p2pdev()
2173 p2p_vif = brcmf_alloc_vif(p2p->cfg, NL80211_IFTYPE_P2P_DEVICE, in brcmf_p2p_create_p2pdev()
2180 pri_ifp = p2p->bss_idx[P2PAPI_BSSCFG_PRIMARY].vif->ifp; in brcmf_p2p_create_p2pdev()
2181 brcmf_p2p_generate_bss_mac(p2p, addr); in brcmf_p2p_create_p2pdev()
2182 brcmf_p2p_set_firmware(pri_ifp, p2p->dev_addr); in brcmf_p2p_create_p2pdev()
2184 brcmf_cfg80211_arm_vif_event(p2p->cfg, p2p_vif); in brcmf_p2p_create_p2pdev()
2190 brcmf_cfg80211_arm_vif_event(p2p->cfg, NULL); in brcmf_p2p_create_p2pdev()
2195 err = brcmf_cfg80211_wait_vif_event_timeout(p2p->cfg, BRCMF_E_IF_ADD, in brcmf_p2p_create_p2pdev()
2197 brcmf_cfg80211_arm_vif_event(p2p->cfg, NULL); in brcmf_p2p_create_p2pdev()
2206 p2p->bss_idx[P2PAPI_BSSCFG_DEVICE].vif = p2p_vif; in brcmf_p2p_create_p2pdev()
2207 memcpy(p2p_ifp->mac_addr, p2p->dev_addr, ETH_ALEN); in brcmf_p2p_create_p2pdev()
2208 memcpy(&p2p_vif->wdev.address, p2p->dev_addr, sizeof(p2p->dev_addr)); in brcmf_p2p_create_p2pdev()
2219 init_completion(&p2p->send_af_done); in brcmf_p2p_create_p2pdev()
2220 INIT_WORK(&p2p->afx_hdl.afx_work, brcmf_p2p_afx_handler); in brcmf_p2p_create_p2pdev()
2221 init_completion(&p2p->afx_hdl.act_frm_scan); in brcmf_p2p_create_p2pdev()
2222 init_completion(&p2p->wait_next_af); in brcmf_p2p_create_p2pdev()
2236 static void brcmf_p2p_delete_p2pdev(struct brcmf_p2p_info *p2p, in brcmf_p2p_delete_p2pdev() argument
2240 p2p->bss_idx[P2PAPI_BSSCFG_DEVICE].vif = NULL; in brcmf_p2p_delete_p2pdev()
2278 return brcmf_p2p_create_p2pdev(&cfg->p2p, wiphy, in brcmf_p2p_add_vif()
2289 err = brcmf_p2p_request_p2p_if(&cfg->p2p, ifp, cfg->p2p.int_addr, in brcmf_p2p_add_vif()
2322 cfg->p2p.bss_idx[P2PAPI_BSSCFG_CONNECTION].vif = vif; in brcmf_p2p_add_vif()
2346 struct brcmf_p2p_info *p2p = &cfg->p2p; in brcmf_p2p_del_vif() local
2367 brcmf_p2p_delete_p2pdev(p2p, vif); in brcmf_p2p_del_vif()
2373 clear_bit(BRCMF_P2P_STATUS_GO_NEG_PHASE, &p2p->status); in brcmf_p2p_del_vif()
2394 p2p->bss_idx[P2PAPI_BSSCFG_CONNECTION].vif = NULL; in brcmf_p2p_del_vif()
2402 struct brcmf_p2p_info *p2p = &cfg->p2p; in brcmf_p2p_start_device() local
2408 err = brcmf_p2p_enable_discovery(p2p); in brcmf_p2p_start_device()
2418 struct brcmf_p2p_info *p2p = &cfg->p2p; in brcmf_p2p_stop_device() local
2423 (void)brcmf_p2p_deinit_discovery(p2p); in brcmf_p2p_stop_device()