Lines Matching defs:arg

241 	struct wmi_vdev_install_key_arg arg = {
254 arg.key_cipher = ar->wmi_key_cipher[WMI_CIPHER_AES_CCM];
258 arg.key_cipher = ar->wmi_key_cipher[WMI_CIPHER_TKIP];
259 arg.key_txmic_len = 8;
260 arg.key_rxmic_len = 8;
264 arg.key_cipher = ar->wmi_key_cipher[WMI_CIPHER_WEP];
267 arg.key_cipher = ar->wmi_key_cipher[WMI_CIPHER_AES_CCM];
271 arg.key_cipher = ar->wmi_key_cipher[WMI_CIPHER_AES_GCM];
289 arg.key_cipher = ar->wmi_key_cipher[WMI_CIPHER_NONE];
290 arg.key_data = NULL;
293 return ath10k_wmi_vdev_install_key(arvif->ar, &arg);
940 struct wmi_tdls_peer_update_cmd_arg arg = {};
946 arg.vdev_id = vdev_id;
947 arg.peer_state = state;
948 ether_addr_copy(arg.addr, sta->addr);
957 ret = ath10k_wmi_tdls_peer_update(ar, &arg, &cap, &chan_arg);
960 arg.addr, vdev_id, ret);
1034 struct wmi_vdev_start_request_arg arg = {};
1047 arg.vdev_id = vdev_id;
1048 arg.channel.freq = channel->center_freq;
1049 arg.channel.band_center_freq1 = chandef->center_freq1;
1050 arg.channel.band_center_freq2 = chandef->center_freq2;
1055 arg.channel.mode = chan_to_phymode(chandef);
1056 arg.channel.chan_radar =
1059 arg.channel.min_power = 0;
1060 arg.channel.max_power = channel->max_power * 2;
1061 arg.channel.max_reg_power = channel->max_reg_power * 2;
1062 arg.channel.max_antenna_gain = channel->max_antenna_gain;
1067 ret = ath10k_wmi_vdev_start(ar, &arg);
1488 struct wmi_vdev_start_request_arg arg = {};
1496 arg.vdev_id = arvif->vdev_id;
1497 arg.dtim_period = arvif->dtim_period;
1498 arg.bcn_intval = arvif->beacon_interval;
1500 arg.channel.freq = chandef->chan->center_freq;
1501 arg.channel.band_center_freq1 = chandef->center_freq1;
1502 arg.channel.band_center_freq2 = chandef->center_freq2;
1503 arg.channel.mode = chan_to_phymode(chandef);
1505 arg.channel.min_power = 0;
1506 arg.channel.max_power = chandef->chan->max_power * 2;
1507 arg.channel.max_reg_power = chandef->chan->max_reg_power * 2;
1508 arg.channel.max_antenna_gain = chandef->chan->max_antenna_gain;
1511 arg.ssid = arvif->u.ap.ssid;
1512 arg.ssid_len = arvif->u.ap.ssid_len;
1513 arg.hidden_ssid = arvif->u.ap.hidden_ssid;
1516 arg.channel.chan_radar =
1519 arg.ssid = arvif->vif->cfg.ssid;
1520 arg.ssid_len = arvif->vif->cfg.ssid_len;
1525 arg.vdev_id, arg.channel.freq,
1526 ath10k_wmi_phymode_str(arg.channel.mode));
1529 ret = ath10k_wmi_vdev_restart(ar, &arg);
1531 ret = ath10k_wmi_vdev_start(ar, &arg);
1535 arg.vdev_id, ret);
1543 arg.vdev_id, restart, ret);
1994 struct wmi_sta_keepalive_arg arg = {};
2008 arg.vdev_id = arvif->vdev_id;
2009 arg.enabled = 1;
2010 arg.method = WMI_STA_KEEPALIVE_METHOD_NULL_FRAME;
2011 arg.interval = WMI_STA_KEEPALIVE_INTERVAL_DISABLE;
2013 ret = ath10k_wmi_sta_keepalive(ar, &arg);
2164 struct wmi_peer_assoc_complete_arg *arg)
2176 ether_addr_copy(arg->addr, sta->addr);
2177 arg->vdev_id = arvif->vdev_id;
2178 arg->peer_aid = aid;
2179 arg->peer_flags |= arvif->ar->wmi.peer_flags->auth;
2180 arg->peer_listen_intval = ath10k_peer_assoc_h_listen_intval(ar, vif);
2181 arg->peer_num_spatial_streams = 1;
2182 arg->peer_caps = vif->bss_conf.assoc_capability;
2188 struct wmi_peer_assoc_complete_arg *arg)
2224 arg->peer_flags |= ar->wmi.peer_flags->need_ptk_4_way;
2229 arg->peer_flags |= ar->wmi.peer_flags->need_gtk_2_way;
2235 arg->peer_flags |= ar->wmi.peer_flags->pmf;
2242 struct wmi_peer_assoc_complete_arg *arg)
2245 struct wmi_rate_set_arg *rateset = &arg->peer_legacy_rates;
2304 struct wmi_peer_assoc_complete_arg *arg)
2332 arg->peer_flags |= ar->wmi.peer_flags->ht;
2333 arg->peer_max_mpdu = (1 << (IEEE80211_HT_MAX_AMPDU_FACTOR +
2336 arg->peer_mpdu_density =
2339 arg->peer_ht_caps = ht_cap->cap;
2340 arg->peer_rate_caps |= WMI_RC_HT_FLAG;
2343 arg->peer_flags |= ar->wmi.peer_flags->ldbc;
2346 arg->peer_flags |= ar->wmi.peer_flags->bw40;
2347 arg->peer_rate_caps |= WMI_RC_CW40_FLAG;
2352 arg->peer_rate_caps |= WMI_RC_SGI_FLAG;
2355 arg->peer_rate_caps |= WMI_RC_SGI_FLAG;
2359 arg->peer_rate_caps |= WMI_RC_TX_STBC_FLAG;
2360 arg->peer_flags |= ar->wmi.peer_flags->stbc;
2367 arg->peer_rate_caps |= stbc;
2368 arg->peer_flags |= ar->wmi.peer_flags->stbc;
2372 arg->peer_rate_caps |= WMI_RC_TS_FLAG;
2374 arg->peer_rate_caps |= WMI_RC_DS_FLAG;
2380 arg->peer_ht_rates.rates[n++] = i;
2393 arg->peer_ht_rates.num_rates = 8;
2394 for (i = 0; i < arg->peer_ht_rates.num_rates; i++)
2395 arg->peer_ht_rates.rates[i] = i;
2397 arg->peer_ht_rates.num_rates = n;
2398 arg->peer_num_spatial_streams = min(sta->deflink.rx_nss,
2403 arg->addr,
2404 arg->peer_ht_rates.num_rates,
2405 arg->peer_num_spatial_streams);
2554 struct wmi_peer_assoc_complete_arg *arg)
2578 arg->peer_flags |= ar->wmi.peer_flags->vht;
2581 arg->peer_flags |= ar->wmi.peer_flags->vht_2g;
2583 arg->peer_vht_caps = vht_cap->cap;
2591 * arg->peer_max_mpdu at this point contains HT max_mpdu so keep
2594 arg->peer_max_mpdu = max(arg->peer_max_mpdu,
2599 arg->peer_flags |= ar->wmi.peer_flags->bw80;
2602 arg->peer_flags |= ar->wmi.peer_flags->bw160;
2615 arg->peer_num_spatial_streams = min(sta->deflink.rx_nss, max_nss);
2616 arg->peer_vht_rates.rx_max_rate =
2618 arg->peer_vht_rates.rx_mcs_set =
2620 arg->peer_vht_rates.tx_max_rate =
2622 arg->peer_vht_rates.tx_mcs_set = ath10k_peer_assoc_h_vht_limit(
2628 if (arg->peer_phymode == MODE_11AC_VHT160 ||
2629 arg->peer_phymode == MODE_11AC_VHT80_80) {
2633 max_rate = arg->peer_vht_rates.rx_max_rate;
2637 rx_nss = arg->peer_num_spatial_streams;
2639 rx_nss = min(arg->peer_num_spatial_streams, rx_nss);
2644 arg->peer_bw_rxnss_override =
2648 if (arg->peer_phymode == MODE_11AC_VHT80_80) {
2649 arg->peer_bw_rxnss_override |=
2655 sta->addr, arg->peer_max_mpdu,
2656 arg->peer_flags, arg->peer_bw_rxnss_override);
2662 struct wmi_peer_assoc_complete_arg *arg)
2669 arg->peer_flags |= arvif->ar->wmi.peer_flags->qos;
2672 arg->peer_flags |= arvif->ar->wmi.peer_flags->apsd;
2673 arg->peer_rate_caps |= WMI_RC_UAPSD_FLAG;
2678 arg->peer_flags |= arvif->ar->wmi.peer_flags->qos;
2682 arg->peer_flags |= arvif->ar->wmi.peer_flags->qos;
2689 sta->addr, !!(arg->peer_flags &
2731 struct wmi_peer_assoc_complete_arg *arg)
2793 arg->peer_phymode = phymode;
2800 struct wmi_peer_assoc_complete_arg *arg)
2804 memset(arg, 0, sizeof(*arg));
2806 ath10k_peer_assoc_h_basic(ar, vif, sta, arg);
2807 ath10k_peer_assoc_h_crypto(ar, vif, sta, arg);
2808 ath10k_peer_assoc_h_rates(ar, vif, sta, arg);
2809 ath10k_peer_assoc_h_ht(ar, vif, sta, arg);
2810 ath10k_peer_assoc_h_phymode(ar, vif, sta, arg);
2811 ath10k_peer_assoc_h_vht(ar, vif, sta, arg);
2812 ath10k_peer_assoc_h_qos(ar, vif, sta, arg);
3202 struct wmi_per_peer_per_tid_cfg_arg arg = {};
3212 arg.tid = i;
3213 arg.vdev_id = arvif->vdev_id;
3214 arg.retry_count = arvif->retry_long[i];
3215 arg.aggr_control = arvif->ampdu[i];
3216 arg.rate_ctrl = arvif->rate_ctrl[i];
3217 arg.rcode_flags = arvif->rate_code[i];
3220 arg.ext_tid_cfg_bitmap =
3223 arg.ext_tid_cfg_bitmap = 0;
3225 arg.rtscts_ctrl = arvif->rtscts[i];
3229 arg.ack_policy = arvif->noack[i];
3230 arg.rate_ctrl = WMI_TID_CONFIG_RATE_CONTROL_DEFAULT_LOWEST_RATE;
3231 arg.aggr_control = WMI_TID_CONFIG_AGGR_CONTROL_DISABLE;
3246 ether_addr_copy(arg.peer_macaddr.addr, sta->addr);
3248 ret = ath10k_wmi_set_per_peer_per_tid_cfg(ar, &arg);
3255 memset(&arg, 0, sizeof(arg));
3371 struct wmi_scan_chan_list_arg arg = {0};
3390 arg.n_channels++;
3394 len = sizeof(struct wmi_channel_arg) * arg.n_channels;
3395 arg.channels = kzalloc(len, GFP_KERNEL);
3396 if (!arg.channels)
3399 ch = arg.channels;
3456 ch - arg.channels, arg.n_channels,
3464 ret = ath10k_wmi_scan_chan_list(ar, &arg);
3465 kfree(arg.channels);
3687 struct ath10k_mac_tx_pause *arg = data;
3689 if (arvif->vdev_id != arg->vdev_id)
3692 ath10k_mac_vif_handle_tx_pause(arvif, arg->pause_id, arg->action);
3699 struct ath10k_mac_tx_pause arg = {
3709 &arg);
4537 struct wmi_stop_scan_arg arg = {
4546 ret = ath10k_wmi_stop_scan(ar, &arg);
4622 const struct wmi_start_scan_arg *arg)
4628 ret = ath10k_wmi_start_scan(ar, arg);
6370 struct wmi_start_scan_arg arg;
6403 memset(&arg, 0, sizeof(arg));
6404 ath10k_wmi_start_scan_init(ar, &arg);
6405 arg.vdev_id = arvif->vdev_id;
6406 arg.scan_id = ATH10K_SCAN_ID;
6409 arg.ie_len = req->ie_len;
6410 memcpy(arg.ie, req->ie, arg.ie_len);
6414 arg.n_ssids = req->n_ssids;
6415 for (i = 0; i < arg.n_ssids; i++) {
6416 arg.ssids[i].len = req->ssids[i].ssid_len;
6417 arg.ssids[i].ssid = req->ssids[i].ssid;
6420 arg.scan_ctrl_flags |= WMI_SCAN_FLAG_PASSIVE;
6424 arg.scan_ctrl_flags |= WMI_SCAN_ADD_SPOOFED_MAC_IN_PROBE_REQ;
6425 ether_addr_copy(arg.mac_addr.addr, req->mac_addr);
6426 ether_addr_copy(arg.mac_mask.addr, req->mac_addr_mask);
6430 arg.n_channels = req->n_channels;
6431 for (i = 0; i < arg.n_channels; i++)
6432 arg.channels[i] = req->channels[i]->center_freq;
6437 arg.dwell_time_active = req->duration;
6438 arg.dwell_time_passive = req->duration;
6439 arg.burst_duration_ms = req->duration;
6441 scan_timeout = min_t(u32, arg.max_rest_time *
6442 (arg.n_channels - 1) + (req->duration +
6444 arg.n_channels, arg.max_scan_time);
6446 scan_timeout = arg.max_scan_time;
6452 ret = ath10k_start_scan(ar, &arg);
7059 struct wmi_per_peer_per_tid_cfg_arg *arg)
7072 if ((arsta->retry_long[arg->tid] > 0 ||
7073 arsta->rate_code[arg->tid] > 0 ||
7074 arsta->ampdu[arg->tid] ==
7076 arg->ack_policy == WMI_PEER_TID_CONFIG_NOACK) {
7078 arg->ack_policy = 0;
7079 arg->aggr_control = 0;
7080 arg->rate_ctrl = 0;
7081 arg->rcode_flags = 0;
7086 if (arsta->noack[arg->tid] == WMI_PEER_TID_CONFIG_NOACK ||
7087 arvif->noack[arg->tid] == WMI_PEER_TID_CONFIG_NOACK) {
7088 arg->aggr_control = 0;
7095 if (arsta->noack[arg->tid] == WMI_PEER_TID_CONFIG_NOACK ||
7096 arvif->noack[arg->tid] == WMI_PEER_TID_CONFIG_NOACK) {
7097 arg->rate_ctrl = 0;
7098 arg->rcode_flags = 0;
7102 ether_addr_copy(arg->peer_macaddr.addr, sta->addr);
7104 ret = ath10k_wmi_set_per_peer_per_tid_cfg(ar, arg);
7110 arsta->noack[arg->tid] = arg->ack_policy;
7111 arg->ack_policy = 0;
7112 arg->aggr_control = 0;
7113 arg->rate_ctrl = 0;
7114 arg->rcode_flags = 0;
7118 arsta->retry_long[arg->tid] = arg->retry_count;
7119 arg->retry_count = 0;
7123 arsta->ampdu[arg->tid] = arg->aggr_control;
7124 arg->aggr_control = 0;
7129 arsta->rate_ctrl[arg->tid] = arg->rate_ctrl;
7130 arg->rate_ctrl = 0;
7131 arg->rcode_flags = 0;
7135 arsta->rtscts[arg->tid] = arg->rtscts_ctrl;
7136 arg->ext_tid_cfg_bitmap = 0;
7140 if ((arvif->retry_long[arg->tid] ||
7141 arvif->rate_code[arg->tid] ||
7142 arvif->ampdu[arg->tid] ==
7144 arg->ack_policy == WMI_PEER_TID_CONFIG_NOACK) {
7147 arvif->noack[arg->tid] = arg->ack_policy;
7148 arvif->ampdu[arg->tid] = arg->aggr_control;
7149 arvif->rate_ctrl[arg->tid] = arg->rate_ctrl;
7154 if (arvif->noack[arg->tid] == WMI_PEER_TID_CONFIG_NOACK)
7157 arvif->retry_long[arg->tid] = arg->retry_count;
7161 if (arvif->noack[arg->tid] == WMI_PEER_TID_CONFIG_NOACK)
7164 arvif->ampdu[arg->tid] = arg->aggr_control;
7169 if (arvif->noack[arg->tid] == WMI_PEER_TID_CONFIG_NOACK) {
7173 arvif->rate_ctrl[arg->tid] = arg->rate_ctrl;
7174 arvif->rate_code[arg->tid] = arg->rcode_flags;
7179 arvif->rtscts[arg->tid] = arg->rtscts_ctrl;
7180 arg->ext_tid_cfg_bitmap = 0;
7184 arvif->tid_conf_changed[arg->tid] |= changed;
7195 struct wmi_per_peer_per_tid_cfg_arg *arg)
7209 arg->tid = i;
7213 arg->ack_policy = WMI_PEER_TID_CONFIG_NOACK;
7214 arg->rate_ctrl =
7216 arg->aggr_control =
7219 arg->ack_policy =
7221 arg->rate_ctrl =
7223 arg->aggr_control =
7229 arg->retry_count = tid_conf->retry_long;
7233 arg->aggr_control = WMI_TID_CONFIG_AGGR_CONTROL_ENABLE;
7235 arg->aggr_control = WMI_TID_CONFIG_AGGR_CONTROL_DISABLE;
7241 &arg->rcode_flags,
7242 &arg->rate_ctrl,
7248 arg->rcode_flags = 0;
7249 arg->rate_ctrl = 0;
7255 arg->rtscts_ctrl = tid_conf->rtscts;
7257 arg->ext_tid_cfg_bitmap = WMI_EXT_TID_RTS_CTS_CONFIG;
7260 ret = ath10k_mac_set_tid_config(ar, sta, vif, changed, arg);
7275 struct wmi_per_peer_per_tid_cfg_arg arg;
7278 arg.vdev_id = arvif->vdev_id;
7285 arg.tid = i;
7286 arg.ack_policy = WMI_PEER_TID_CONFIG_ACK;
7287 arg.retry_count = ATH10K_MAX_RETRY_COUNT;
7288 arg.rate_ctrl = WMI_TID_CONFIG_RATE_CONTROL_AUTO;
7289 arg.aggr_control = WMI_TID_CONFIG_AGGR_CONTROL_ENABLE;
7290 arg.rtscts_ctrl = WMI_TID_CONFIG_RTSCTS_CONTROL_ENABLE;
7291 arg.ext_tid_cfg_bitmap = WMI_EXT_TID_RTS_CTS_CONFIG;
7293 ether_addr_copy(arg.peer_macaddr.addr, sta->addr);
7295 ret = ath10k_wmi_set_per_peer_per_tid_cfg(ar, &arg);
7323 struct wmi_per_peer_per_tid_cfg_arg arg = {};
7346 ether_addr_copy(arg.peer_macaddr.addr, sta->addr);
7354 arg.ack_policy = 0;
7357 arg.ack_policy = arvif->noack[i];
7358 arg.aggr_control = arvif->ampdu[i];
7359 arg.rate_ctrl = arvif->rate_ctrl[i];
7367 arg.retry_count = 0;
7369 arg.retry_count = arvif->retry_long[i];
7378 arg.aggr_control = 0;
7380 arg.aggr_control = arvif->ampdu[i];
7393 arg.rate_ctrl = 0;
7394 arg.rcode_flags = 0;
7401 arg.rate_ctrl = 0;
7402 arg.rcode_flags = 0;
7404 arg.rate_ctrl = arvif->rate_ctrl[i];
7405 arg.rcode_flags = arvif->rate_code[i];
7412 arg.rtscts_ctrl = 0;
7413 arg.ext_tid_cfg_bitmap = 0;
7415 arg.rtscts_ctrl = arvif->rtscts[i] - 1;
7416 arg.ext_tid_cfg_bitmap =
7422 arg.tid = i;
7425 ret = ath10k_wmi_set_per_peer_per_tid_cfg(ar, &arg);
7431 arg.ack_policy = 0;
7432 arg.retry_count = 0;
7433 arg.aggr_control = 0;
7434 arg.rate_ctrl = 0;
7435 arg.rcode_flags = 0;
7719 struct wmi_sta_uapsd_auto_trig_arg arg = {};
7802 arg.wmm_ac = acc;
7803 arg.user_priority = prio;
7804 arg.service_interval = 0;
7805 arg.suspend_interval = WMI_STA_UAPSD_MAX_INTERVAL_MSEC;
7806 arg.delay_interval = WMI_STA_UAPSD_MAX_INTERVAL_MSEC;
7809 arvif->bssid, &arg, 1);
7900 struct wmi_start_scan_arg arg;
7937 memset(&arg, 0, sizeof(arg));
7938 ath10k_wmi_start_scan_init(ar, &arg);
7939 arg.vdev_id = arvif->vdev_id;
7940 arg.scan_id = ATH10K_SCAN_ID;
7941 arg.n_channels = 1;
7942 arg.channels[0] = chan->center_freq;
7943 arg.dwell_time_active = scan_time_msec;
7944 arg.dwell_time_passive = scan_time_msec;
7945 arg.max_scan_time = scan_time_msec;
7946 arg.scan_ctrl_flags |= WMI_SCAN_FLAG_PASSIVE;
7947 arg.scan_ctrl_flags |= WMI_SCAN_FILTER_PROBE_REQ;
7948 arg.burst_duration_ms = duration;
7950 ret = ath10k_start_scan(ar, &arg);
8847 struct ath10k_mac_change_chanctx_arg *arg = data;
8849 if (rcu_access_pointer(vif->bss_conf.chanctx_conf) != arg->ctx)
8852 arg->n_vifs++;
8859 struct ath10k_mac_change_chanctx_arg *arg = data;
8863 if (ctx != arg->ctx)
8866 if (WARN_ON(arg->next_vif == arg->n_vifs))
8869 arg->vifs[arg->next_vif].vif = vif;
8870 arg->vifs[arg->next_vif].old_ctx = ctx;
8871 arg->vifs[arg->next_vif].new_ctx = ctx;
8872 arg->next_vif++;
8881 struct ath10k_mac_change_chanctx_arg arg = { .ctx = ctx };
8900 &arg);
8901 if (arg.n_vifs == 0)
8904 arg.vifs = kcalloc(arg.n_vifs, sizeof(arg.vifs[0]),
8906 if (!arg.vifs)
8913 &arg);
8914 ath10k_mac_update_vif_chan(ar, arg.vifs, arg.n_vifs);
8915 kfree(arg.vifs);
9358 struct wmi_per_peer_per_tid_cfg_arg arg = {};
9362 arg.vdev_id = arvif->vdev_id;
9370 &arg);