Lines Matching refs:priv
40 mwifiex_cmd_append_generic_ie(struct mwifiex_private *priv, u8 **buffer) in mwifiex_cmd_append_generic_ie() argument
55 if (priv->gen_ie_buf_len) { in mwifiex_cmd_append_generic_ie()
56 mwifiex_dbg(priv->adapter, INFO, in mwifiex_cmd_append_generic_ie()
58 __func__, priv->gen_ie_buf_len, *buffer); in mwifiex_cmd_append_generic_ie()
62 ie_header.len = cpu_to_le16(priv->gen_ie_buf_len); in mwifiex_cmd_append_generic_ie()
72 memcpy(*buffer, priv->gen_ie_buf, priv->gen_ie_buf_len); in mwifiex_cmd_append_generic_ie()
76 *buffer += priv->gen_ie_buf_len; in mwifiex_cmd_append_generic_ie()
77 ret_len += priv->gen_ie_buf_len; in mwifiex_cmd_append_generic_ie()
80 priv->gen_ie_buf_len = 0; in mwifiex_cmd_append_generic_ie()
101 mwifiex_cmd_append_tsf_tlv(struct mwifiex_private *priv, u8 **buffer, in mwifiex_cmd_append_tsf_tlv() argument
128 mwifiex_dbg(priv->adapter, INFO, in mwifiex_cmd_append_tsf_tlv()
146 static int mwifiex_get_common_rates(struct mwifiex_private *priv, u8 *rate1, in mwifiex_get_common_rates() argument
155 mwifiex_dbg(priv->adapter, ERROR, "failed to alloc tmp buf\n"); in mwifiex_get_common_rates()
172 mwifiex_dbg(priv->adapter, INFO, "info: Tx data rate set to %#x\n", in mwifiex_get_common_rates()
173 priv->data_rate); in mwifiex_get_common_rates()
175 if (!priv->is_data_rate_auto) { in mwifiex_get_common_rates()
177 if ((*ptr & 0x7f) == priv->data_rate) { in mwifiex_get_common_rates()
183 mwifiex_dbg(priv->adapter, ERROR, in mwifiex_get_common_rates()
186 priv->data_rate); in mwifiex_get_common_rates()
203 mwifiex_setup_rates_from_bssdesc(struct mwifiex_private *priv, in mwifiex_setup_rates_from_bssdesc() argument
213 card_rates_size = mwifiex_get_active_data_rates(priv, card_rates); in mwifiex_setup_rates_from_bssdesc()
215 if (mwifiex_get_common_rates(priv, out_rates, MWIFIEX_SUPPORTED_RATES, in mwifiex_setup_rates_from_bssdesc()
218 mwifiex_dbg(priv->adapter, ERROR, in mwifiex_setup_rates_from_bssdesc()
238 mwifiex_cmd_append_wps_ie(struct mwifiex_private *priv, u8 **buffer) in mwifiex_cmd_append_wps_ie() argument
250 if (priv->wps_ie_len) { in mwifiex_cmd_append_wps_ie()
251 mwifiex_dbg(priv->adapter, CMD, in mwifiex_cmd_append_wps_ie()
253 priv->wps_ie_len, *buffer); in mwifiex_cmd_append_wps_ie()
257 ie_header.len = cpu_to_le16(priv->wps_ie_len); in mwifiex_cmd_append_wps_ie()
262 memcpy(*buffer, priv->wps_ie, priv->wps_ie_len); in mwifiex_cmd_append_wps_ie()
263 *buffer += priv->wps_ie_len; in mwifiex_cmd_append_wps_ie()
264 retLen += priv->wps_ie_len; in mwifiex_cmd_append_wps_ie()
268 kfree(priv->wps_ie); in mwifiex_cmd_append_wps_ie()
269 priv->wps_ie_len = 0; in mwifiex_cmd_append_wps_ie()
282 mwifiex_cmd_append_wapi_ie(struct mwifiex_private *priv, u8 **buffer) in mwifiex_cmd_append_wapi_ie() argument
297 if (priv->wapi_ie_len) { in mwifiex_cmd_append_wapi_ie()
298 mwifiex_dbg(priv->adapter, CMD, in mwifiex_cmd_append_wapi_ie()
300 priv->wapi_ie_len, *buffer); in mwifiex_cmd_append_wapi_ie()
304 ie_header.len = cpu_to_le16(priv->wapi_ie_len); in mwifiex_cmd_append_wapi_ie()
314 memcpy(*buffer, priv->wapi_ie, priv->wapi_ie_len); in mwifiex_cmd_append_wapi_ie()
318 *buffer += priv->wapi_ie_len; in mwifiex_cmd_append_wapi_ie()
319 retLen += priv->wapi_ie_len; in mwifiex_cmd_append_wapi_ie()
330 static int mwifiex_append_rsn_ie_wpa_wpa2(struct mwifiex_private *priv, in mwifiex_append_rsn_ie_wpa_wpa2() argument
340 rsn_ie_tlv->header.type = cpu_to_le16((u16) priv->wpa_ie[0]); in mwifiex_append_rsn_ie_wpa_wpa2()
343 rsn_ie_tlv->header.len = cpu_to_le16((u16) priv->wpa_ie[1]); in mwifiex_append_rsn_ie_wpa_wpa2()
346 if (le16_to_cpu(rsn_ie_tlv->header.len) <= (sizeof(priv->wpa_ie) - 2)) in mwifiex_append_rsn_ie_wpa_wpa2()
347 memcpy(rsn_ie_tlv->rsn_ie, &priv->wpa_ie[2], in mwifiex_append_rsn_ie_wpa_wpa2()
387 int mwifiex_cmd_802_11_associate(struct mwifiex_private *priv, in mwifiex_cmd_802_11_associate() argument
409 priv->attempted_bss_desc = bss_desc; in mwifiex_cmd_802_11_associate()
416 assoc->listen_interval = cpu_to_le16(priv->listen_interval); in mwifiex_cmd_802_11_associate()
447 (priv, bss_desc, rates, &rates_size)) in mwifiex_cmd_802_11_associate()
451 priv->curr_bss_params.num_of_rates = rates_size; in mwifiex_cmd_802_11_associate()
452 memcpy(&priv->curr_bss_params.data_rates, rates, rates_size); in mwifiex_cmd_802_11_associate()
460 mwifiex_dbg(priv->adapter, INFO, "info: ASSOC_CMD: rates size = %d\n", in mwifiex_cmd_802_11_associate()
467 if (priv->sec_info.wep_enabled) in mwifiex_cmd_802_11_associate()
469 (u16) priv->sec_info.authentication_mode); in mwifiex_cmd_802_11_associate()
475 if (IS_SUPPORT_MULTI_BANDS(priv->adapter) && in mwifiex_cmd_802_11_associate()
476 !(ISSUPP_11NENABLED(priv->adapter->fw_cap_info) && in mwifiex_cmd_802_11_associate()
478 (priv->adapter->config_bands & BAND_GN || in mwifiex_cmd_802_11_associate()
479 priv->adapter->config_bands & BAND_AN) && in mwifiex_cmd_802_11_associate()
494 mwifiex_dbg(priv->adapter, INFO, "info: Assoc: TLV Chan = %d\n", in mwifiex_cmd_802_11_associate()
500 mwifiex_dbg(priv->adapter, INFO, "info: Assoc: TLV Band = %d\n", in mwifiex_cmd_802_11_associate()
506 if (!priv->wps.session_enable) { in mwifiex_cmd_802_11_associate()
507 if (priv->sec_info.wpa_enabled || priv->sec_info.wpa2_enabled) in mwifiex_cmd_802_11_associate()
508 rsn_ie_len = mwifiex_append_rsn_ie_wpa_wpa2(priv, &pos); in mwifiex_cmd_802_11_associate()
514 if (ISSUPP_11NENABLED(priv->adapter->fw_cap_info) && in mwifiex_cmd_802_11_associate()
516 (priv->adapter->config_bands & BAND_GN || in mwifiex_cmd_802_11_associate()
517 priv->adapter->config_bands & BAND_AN)) in mwifiex_cmd_802_11_associate()
518 mwifiex_cmd_append_11n_tlv(priv, bss_desc, &pos); in mwifiex_cmd_802_11_associate()
520 if (ISSUPP_11ACENABLED(priv->adapter->fw_cap_info) && in mwifiex_cmd_802_11_associate()
522 priv->adapter->config_bands & BAND_AAC) in mwifiex_cmd_802_11_associate()
523 mwifiex_cmd_append_11ac_tlv(priv, bss_desc, &pos); in mwifiex_cmd_802_11_associate()
526 mwifiex_cmd_append_vsie_tlv(priv, MWIFIEX_VSIE_MASK_ASSOC, &pos); in mwifiex_cmd_802_11_associate()
528 mwifiex_wmm_process_association_req(priv, &pos, &bss_desc->wmm_ie, in mwifiex_cmd_802_11_associate()
530 if (priv->sec_info.wapi_enabled && priv->wapi_ie_len) in mwifiex_cmd_802_11_associate()
531 mwifiex_cmd_append_wapi_ie(priv, &pos); in mwifiex_cmd_802_11_associate()
533 if (priv->wps.session_enable && priv->wps_ie_len) in mwifiex_cmd_802_11_associate()
534 mwifiex_cmd_append_wps_ie(priv, &pos); in mwifiex_cmd_802_11_associate()
536 mwifiex_cmd_append_generic_ie(priv, &pos); in mwifiex_cmd_802_11_associate()
538 mwifiex_cmd_append_tsf_tlv(priv, &pos, bss_desc); in mwifiex_cmd_802_11_associate()
540 mwifiex_11h_process_join(priv, &pos, bss_desc); in mwifiex_cmd_802_11_associate()
547 if (priv->adapter->config_bands == BAND_B) in mwifiex_cmd_802_11_associate()
551 mwifiex_dbg(priv->adapter, INFO, in mwifiex_cmd_802_11_associate()
638 int mwifiex_ret_802_11_associate(struct mwifiex_private *priv, in mwifiex_ret_802_11_associate() argument
641 struct mwifiex_adapter *adapter = priv->adapter; in mwifiex_ret_802_11_associate()
655 dev_err(priv->adapter->dev, in mwifiex_ret_802_11_associate()
661 priv->assoc_rsp_size = min(le16_to_cpu(resp->size) - S_DS_GEN, in mwifiex_ret_802_11_associate()
662 sizeof(priv->assoc_rsp_buf)); in mwifiex_ret_802_11_associate()
664 memcpy(priv->assoc_rsp_buf, &resp->params, priv->assoc_rsp_size); in mwifiex_ret_802_11_associate()
669 priv->adapter->dbg.num_cmd_assoc_failure++; in mwifiex_ret_802_11_associate()
670 mwifiex_dbg(priv->adapter, ERROR, in mwifiex_ret_802_11_associate()
676 mwifiex_dbg(priv->adapter, ERROR, "assoc failure: reason %s\n", in mwifiex_ret_802_11_associate()
681 mwifiex_dbg(priv->adapter, ERROR, in mwifiex_ret_802_11_associate()
685 mwifiex_dbg(priv->adapter, ERROR, in mwifiex_ret_802_11_associate()
696 priv->media_connected = true; in mwifiex_ret_802_11_associate()
698 priv->adapter->ps_state = PS_STATE_AWAKE; in mwifiex_ret_802_11_associate()
699 priv->adapter->pps_uapsd_mode = false; in mwifiex_ret_802_11_associate()
700 priv->adapter->tx_lock_flag = false; in mwifiex_ret_802_11_associate()
703 bss_desc = priv->attempted_bss_desc; in mwifiex_ret_802_11_associate()
705 mwifiex_dbg(priv->adapter, INFO, "info: ASSOC_RESP: %s\n", in mwifiex_ret_802_11_associate()
709 memcpy(&priv->curr_bss_params.bss_descriptor, in mwifiex_ret_802_11_associate()
713 priv->curr_bss_params.bss_descriptor.channel in mwifiex_ret_802_11_associate()
716 priv->curr_bss_params.band = (u8) bss_desc->bss_band; in mwifiex_ret_802_11_associate()
719 priv->curr_bss_params.wmm_enabled = true; in mwifiex_ret_802_11_associate()
721 priv->curr_bss_params.wmm_enabled = false; in mwifiex_ret_802_11_associate()
723 if ((priv->wmm_required || bss_desc->bcn_ht_cap) && in mwifiex_ret_802_11_associate()
724 priv->curr_bss_params.wmm_enabled) in mwifiex_ret_802_11_associate()
725 priv->wmm_enabled = true; in mwifiex_ret_802_11_associate()
727 priv->wmm_enabled = false; in mwifiex_ret_802_11_associate()
729 priv->curr_bss_params.wmm_uapsd_enabled = false; in mwifiex_ret_802_11_associate()
731 if (priv->wmm_enabled) in mwifiex_ret_802_11_associate()
732 priv->curr_bss_params.wmm_uapsd_enabled in mwifiex_ret_802_11_associate()
736 mwifiex_dbg(priv->adapter, INFO, in mwifiex_ret_802_11_associate()
738 priv->curr_pkt_filter); in mwifiex_ret_802_11_associate()
739 if (priv->sec_info.wpa_enabled || priv->sec_info.wpa2_enabled) in mwifiex_ret_802_11_associate()
740 priv->wpa_is_gtk_set = false; in mwifiex_ret_802_11_associate()
742 if (priv->wmm_enabled) { in mwifiex_ret_802_11_associate()
749 mwifiex_wmm_setup_queue_priorities(priv, NULL); in mwifiex_ret_802_11_associate()
750 mwifiex_wmm_setup_ac_downgrade(priv); in mwifiex_ret_802_11_associate()
754 mwifiex_dbg(priv->adapter, INFO, in mwifiex_ret_802_11_associate()
758 priv->data_rssi_last = 0; in mwifiex_ret_802_11_associate()
759 priv->data_nf_last = 0; in mwifiex_ret_802_11_associate()
760 priv->data_rssi_avg = 0; in mwifiex_ret_802_11_associate()
761 priv->data_nf_avg = 0; in mwifiex_ret_802_11_associate()
762 priv->bcn_rssi_last = 0; in mwifiex_ret_802_11_associate()
763 priv->bcn_nf_last = 0; in mwifiex_ret_802_11_associate()
764 priv->bcn_rssi_avg = 0; in mwifiex_ret_802_11_associate()
765 priv->bcn_nf_avg = 0; in mwifiex_ret_802_11_associate()
766 priv->rxpd_rate = 0; in mwifiex_ret_802_11_associate()
767 priv->rxpd_htinfo = 0; in mwifiex_ret_802_11_associate()
769 mwifiex_save_curr_bcn(priv); in mwifiex_ret_802_11_associate()
771 priv->adapter->dbg.num_cmd_assoc_success++; in mwifiex_ret_802_11_associate()
773 mwifiex_dbg(priv->adapter, INFO, "info: ASSOC_RESP: associated\n"); in mwifiex_ret_802_11_associate()
777 mwifiex_ralist_add(priv, in mwifiex_ret_802_11_associate()
778 priv->curr_bss_params.bss_descriptor.mac_address); in mwifiex_ret_802_11_associate()
780 if (!netif_carrier_ok(priv->netdev)) in mwifiex_ret_802_11_associate()
781 netif_carrier_on(priv->netdev); in mwifiex_ret_802_11_associate()
782 mwifiex_wake_up_net_dev_queue(priv->netdev, adapter); in mwifiex_ret_802_11_associate()
784 if (priv->sec_info.wpa_enabled || priv->sec_info.wpa2_enabled) in mwifiex_ret_802_11_associate()
785 priv->scan_block = true; in mwifiex_ret_802_11_associate()
787 priv->port_open = true; in mwifiex_ret_802_11_associate()
820 mwifiex_cmd_802_11_ad_hoc_start(struct mwifiex_private *priv, in mwifiex_cmd_802_11_ad_hoc_start() argument
825 struct mwifiex_adapter *adapter = priv->adapter; in mwifiex_cmd_802_11_ad_hoc_start()
845 bss_desc = &priv->curr_bss_params.bss_descriptor; in mwifiex_cmd_802_11_ad_hoc_start()
846 priv->attempted_bss_desc = bss_desc; in mwifiex_cmd_802_11_ad_hoc_start()
873 adhoc_start->beacon_period = cpu_to_le16(priv->beacon_period); in mwifiex_cmd_802_11_ad_hoc_start()
874 bss_desc->beacon_period = priv->beacon_period; in mwifiex_cmd_802_11_ad_hoc_start()
885 if (!mwifiex_get_cfp(priv, adapter->adhoc_start_band, in mwifiex_cmd_802_11_ad_hoc_start()
886 (u16) priv->adhoc_channel, 0)) { in mwifiex_cmd_802_11_ad_hoc_start()
888 cfp = mwifiex_get_cfp(priv, adapter->adhoc_start_band, in mwifiex_cmd_802_11_ad_hoc_start()
891 priv->adhoc_channel = (u8) cfp->channel; in mwifiex_cmd_802_11_ad_hoc_start()
894 if (!priv->adhoc_channel) { in mwifiex_cmd_802_11_ad_hoc_start()
902 priv->adhoc_channel); in mwifiex_cmd_802_11_ad_hoc_start()
904 priv->curr_bss_params.bss_descriptor.channel = priv->adhoc_channel; in mwifiex_cmd_802_11_ad_hoc_start()
905 priv->curr_bss_params.band = adapter->adhoc_start_band; in mwifiex_cmd_802_11_ad_hoc_start()
907 bss_desc->channel = priv->adhoc_channel; in mwifiex_cmd_802_11_ad_hoc_start()
909 priv->adhoc_channel; in mwifiex_cmd_802_11_ad_hoc_start()
923 = cpu_to_le16(priv->atim_window); in mwifiex_cmd_802_11_ad_hoc_start()
932 if (priv->sec_info.encryption_mode) { in mwifiex_cmd_802_11_ad_hoc_start()
946 mwifiex_get_active_data_rates(priv, adhoc_start->data_rate); in mwifiex_cmd_802_11_ad_hoc_start()
948 (priv->curr_pkt_filter & HostCmd_ACT_MAC_ADHOC_G_PROTECTION_ON)) { in mwifiex_cmd_802_11_ad_hoc_start()
949 if (mwifiex_send_cmd(priv, HostCmd_CMD_MAC_CONTROL, in mwifiex_cmd_802_11_ad_hoc_start()
951 &priv->curr_pkt_filter, false)) { in mwifiex_cmd_802_11_ad_hoc_start()
962 priv->curr_bss_params.num_of_rates = i; in mwifiex_cmd_802_11_ad_hoc_start()
965 memcpy(&priv->curr_bss_params.data_rates, in mwifiex_cmd_802_11_ad_hoc_start()
966 &adhoc_start->data_rate, priv->curr_bss_params.num_of_rates); in mwifiex_cmd_802_11_ad_hoc_start()
983 (u8) priv->curr_bss_params.bss_descriptor.channel; in mwifiex_cmd_802_11_ad_hoc_start()
989 = mwifiex_band_to_radio_type(priv->curr_bss_params.band); in mwifiex_cmd_802_11_ad_hoc_start()
1011 cmd_append_size += mwifiex_cmd_append_vsie_tlv(priv, in mwifiex_cmd_802_11_ad_hoc_start()
1014 if (priv->sec_info.wpa_enabled) { in mwifiex_cmd_802_11_ad_hoc_start()
1015 rsn_ie_len = mwifiex_append_rsn_ie_wpa_wpa2(priv, &pos); in mwifiex_cmd_802_11_ad_hoc_start()
1029 priv->adapter->config_bands); in mwifiex_cmd_802_11_ad_hoc_start()
1030 mwifiex_fill_cap_info(priv, radio_type, &ht_cap->ht_cap); in mwifiex_cmd_802_11_ad_hoc_start()
1053 (u8) priv->curr_bss_params.bss_descriptor.channel; in mwifiex_cmd_802_11_ad_hoc_start()
1098 mwifiex_cmd_802_11_ad_hoc_join(struct mwifiex_private *priv, in mwifiex_cmd_802_11_ad_hoc_join() argument
1118 priv-> in mwifiex_cmd_802_11_ad_hoc_join()
1121 if (mwifiex_send_cmd(priv, HostCmd_CMD_MAC_CONTROL, in mwifiex_cmd_802_11_ad_hoc_join()
1124 mwifiex_dbg(priv->adapter, ERROR, in mwifiex_cmd_802_11_ad_hoc_join()
1130 priv->attempted_bss_desc = bss_desc; in mwifiex_cmd_802_11_ad_hoc_join()
1156 mwifiex_dbg(priv->adapter, INFO, in mwifiex_cmd_802_11_ad_hoc_join()
1161 mwifiex_dbg(priv->adapter, INFO, in mwifiex_cmd_802_11_ad_hoc_join()
1178 priv->curr_bss_params.num_of_rates = rates_size; in mwifiex_cmd_802_11_ad_hoc_join()
1179 memcpy(&priv->curr_bss_params.data_rates, bss_desc->supported_rates, in mwifiex_cmd_802_11_ad_hoc_join()
1183 priv->curr_bss_params.bss_descriptor.channel = bss_desc->channel; in mwifiex_cmd_802_11_ad_hoc_join()
1184 priv->curr_bss_params.band = (u8) bss_desc->bss_band; in mwifiex_cmd_802_11_ad_hoc_join()
1186 if (priv->sec_info.wep_enabled || priv->sec_info.wpa_enabled) in mwifiex_cmd_802_11_ad_hoc_join()
1189 if (IS_SUPPORT_MULTI_BANDS(priv->adapter)) { in mwifiex_cmd_802_11_ad_hoc_join()
1200 mwifiex_dbg(priv->adapter, INFO, "info: ADHOC_J_CMD: TLV Chan=%d\n", in mwifiex_cmd_802_11_ad_hoc_join()
1206 mwifiex_dbg(priv->adapter, INFO, "info: ADHOC_J_CMD: TLV Band=%d\n", in mwifiex_cmd_802_11_ad_hoc_join()
1214 if (priv->sec_info.wpa_enabled) in mwifiex_cmd_802_11_ad_hoc_join()
1215 rsn_ie_len = mwifiex_append_rsn_ie_wpa_wpa2(priv, &pos); in mwifiex_cmd_802_11_ad_hoc_join()
1220 if (ISSUPP_11NENABLED(priv->adapter->fw_cap_info)) in mwifiex_cmd_802_11_ad_hoc_join()
1221 cmd_append_size += mwifiex_cmd_append_11n_tlv(priv, in mwifiex_cmd_802_11_ad_hoc_join()
1225 cmd_append_size += mwifiex_cmd_append_vsie_tlv(priv, in mwifiex_cmd_802_11_ad_hoc_join()
1245 int mwifiex_ret_802_11_ad_hoc(struct mwifiex_private *priv, in mwifiex_ret_802_11_ad_hoc() argument
1249 struct mwifiex_adapter *adapter = priv->adapter; in mwifiex_ret_802_11_ad_hoc()
1256 bss_desc = priv->attempted_bss_desc; in mwifiex_ret_802_11_ad_hoc()
1261 mwifiex_dbg(priv->adapter, ERROR, "ADHOC_RESP: failed\n"); in mwifiex_ret_802_11_ad_hoc()
1262 if (priv->media_connected) in mwifiex_ret_802_11_ad_hoc()
1263 mwifiex_reset_connect_state(priv, reason_code); in mwifiex_ret_802_11_ad_hoc()
1265 memset(&priv->curr_bss_params.bss_descriptor, in mwifiex_ret_802_11_ad_hoc()
1273 priv->media_connected = true; in mwifiex_ret_802_11_ad_hoc()
1276 mwifiex_dbg(priv->adapter, INFO, "info: ADHOC_S_RESP %s\n", in mwifiex_ret_802_11_ad_hoc()
1283 priv->adhoc_state = ADHOC_STARTED; in mwifiex_ret_802_11_ad_hoc()
1289 mwifiex_dbg(priv->adapter, INFO, in mwifiex_ret_802_11_ad_hoc()
1298 memcpy(&priv->curr_bss_params.bss_descriptor, in mwifiex_ret_802_11_ad_hoc()
1301 priv->adhoc_state = ADHOC_JOINED; in mwifiex_ret_802_11_ad_hoc()
1304 mwifiex_dbg(priv->adapter, INFO, "info: ADHOC_RESP: channel = %d\n", in mwifiex_ret_802_11_ad_hoc()
1305 priv->adhoc_channel); in mwifiex_ret_802_11_ad_hoc()
1306 mwifiex_dbg(priv->adapter, INFO, "info: ADHOC_RESP: BSSID = %pM\n", in mwifiex_ret_802_11_ad_hoc()
1307 priv->curr_bss_params.bss_descriptor.mac_address); in mwifiex_ret_802_11_ad_hoc()
1309 if (!netif_carrier_ok(priv->netdev)) in mwifiex_ret_802_11_ad_hoc()
1310 netif_carrier_on(priv->netdev); in mwifiex_ret_802_11_ad_hoc()
1311 mwifiex_wake_up_net_dev_queue(priv->netdev, adapter); in mwifiex_ret_802_11_ad_hoc()
1313 mwifiex_save_curr_bcn(priv); in mwifiex_ret_802_11_ad_hoc()
1335 int mwifiex_associate(struct mwifiex_private *priv, in mwifiex_associate() argument
1341 if ((GET_BSS_ROLE(priv) != MWIFIEX_BSS_ROLE_STA) || in mwifiex_associate()
1345 if (ISSUPP_11ACENABLED(priv->adapter->fw_cap_info) && in mwifiex_associate()
1347 priv->adapter->config_bands & BAND_AAC) in mwifiex_associate()
1348 mwifiex_set_11ac_ba_params(priv); in mwifiex_associate()
1350 mwifiex_set_ba_params(priv); in mwifiex_associate()
1354 priv->assoc_rsp_size = 0; in mwifiex_associate()
1356 return mwifiex_send_cmd(priv, HostCmd_CMD_802_11_ASSOCIATE, in mwifiex_associate()
1366 mwifiex_adhoc_start(struct mwifiex_private *priv, in mwifiex_adhoc_start() argument
1369 mwifiex_dbg(priv->adapter, INFO, "info: Adhoc Channel = %d\n", in mwifiex_adhoc_start()
1370 priv->adhoc_channel); in mwifiex_adhoc_start()
1371 mwifiex_dbg(priv->adapter, INFO, "info: curr_bss_params.channel = %d\n", in mwifiex_adhoc_start()
1372 priv->curr_bss_params.bss_descriptor.channel); in mwifiex_adhoc_start()
1373 mwifiex_dbg(priv->adapter, INFO, "info: curr_bss_params.band = %d\n", in mwifiex_adhoc_start()
1374 priv->curr_bss_params.band); in mwifiex_adhoc_start()
1376 if (ISSUPP_11ACENABLED(priv->adapter->fw_cap_info) && in mwifiex_adhoc_start()
1377 priv->adapter->config_bands & BAND_AAC) in mwifiex_adhoc_start()
1378 mwifiex_set_11ac_ba_params(priv); in mwifiex_adhoc_start()
1380 mwifiex_set_ba_params(priv); in mwifiex_adhoc_start()
1382 return mwifiex_send_cmd(priv, HostCmd_CMD_802_11_AD_HOC_START, in mwifiex_adhoc_start()
1392 int mwifiex_adhoc_join(struct mwifiex_private *priv, in mwifiex_adhoc_join() argument
1395 mwifiex_dbg(priv->adapter, INFO, in mwifiex_adhoc_join()
1397 priv->curr_bss_params.bss_descriptor.ssid.ssid); in mwifiex_adhoc_join()
1398 mwifiex_dbg(priv->adapter, INFO, in mwifiex_adhoc_join()
1400 priv->curr_bss_params.bss_descriptor.ssid.ssid_len); in mwifiex_adhoc_join()
1401 mwifiex_dbg(priv->adapter, INFO, "info: adhoc join: ssid =%s\n", in mwifiex_adhoc_join()
1403 mwifiex_dbg(priv->adapter, INFO, "info: adhoc join: ssid_len =%u\n", in mwifiex_adhoc_join()
1407 if (priv->curr_bss_params.bss_descriptor.ssid.ssid_len && in mwifiex_adhoc_join()
1409 &priv->curr_bss_params.bss_descriptor.ssid) && in mwifiex_adhoc_join()
1410 (priv->curr_bss_params.bss_descriptor.bss_mode == in mwifiex_adhoc_join()
1412 mwifiex_dbg(priv->adapter, INFO, in mwifiex_adhoc_join()
1418 if (ISSUPP_11ACENABLED(priv->adapter->fw_cap_info) && in mwifiex_adhoc_join()
1420 priv->adapter->config_bands & BAND_AAC) in mwifiex_adhoc_join()
1421 mwifiex_set_11ac_ba_params(priv); in mwifiex_adhoc_join()
1423 mwifiex_set_ba_params(priv); in mwifiex_adhoc_join()
1425 mwifiex_dbg(priv->adapter, INFO, in mwifiex_adhoc_join()
1427 priv->curr_bss_params.bss_descriptor.channel); in mwifiex_adhoc_join()
1428 mwifiex_dbg(priv->adapter, INFO, in mwifiex_adhoc_join()
1430 priv->curr_bss_params.band); in mwifiex_adhoc_join()
1432 return mwifiex_send_cmd(priv, HostCmd_CMD_802_11_AD_HOC_JOIN, in mwifiex_adhoc_join()
1440 static int mwifiex_deauthenticate_infra(struct mwifiex_private *priv, u8 *mac) in mwifiex_deauthenticate_infra() argument
1447 priv->curr_bss_params.bss_descriptor.mac_address, in mwifiex_deauthenticate_infra()
1452 ret = mwifiex_send_cmd(priv, HostCmd_CMD_802_11_DEAUTHENTICATE, in mwifiex_deauthenticate_infra()
1465 int mwifiex_deauthenticate(struct mwifiex_private *priv, u8 *mac) in mwifiex_deauthenticate() argument
1469 if (!priv->media_connected) in mwifiex_deauthenticate()
1472 switch (priv->bss_mode) { in mwifiex_deauthenticate()
1475 ret = mwifiex_deauthenticate_infra(priv, mac); in mwifiex_deauthenticate()
1477 cfg80211_disconnected(priv->netdev, 0, NULL, 0, in mwifiex_deauthenticate()
1481 return mwifiex_send_cmd(priv, HostCmd_CMD_802_11_AD_HOC_STOP, in mwifiex_deauthenticate()
1484 return mwifiex_send_cmd(priv, HostCmd_CMD_UAP_BSS_STOP, in mwifiex_deauthenticate()
1496 struct mwifiex_private *priv; in mwifiex_deauthenticate_all() local
1500 priv = adapter->priv[i]; in mwifiex_deauthenticate_all()
1501 if (priv) in mwifiex_deauthenticate_all()
1502 mwifiex_deauthenticate(priv, NULL); in mwifiex_deauthenticate_all()