Lines Matching refs:arg
1699 const struct wmi_channel_arg *arg) in ath10k_wmi_put_wmi_channel() argument
1706 if (arg->passive) in ath10k_wmi_put_wmi_channel()
1708 if (arg->allow_ibss) in ath10k_wmi_put_wmi_channel()
1710 if (arg->allow_ht) in ath10k_wmi_put_wmi_channel()
1712 if (arg->allow_vht) in ath10k_wmi_put_wmi_channel()
1714 if (arg->ht40plus) in ath10k_wmi_put_wmi_channel()
1716 if (arg->chan_radar) in ath10k_wmi_put_wmi_channel()
1720 ch->mhz = __cpu_to_le32(arg->freq); in ath10k_wmi_put_wmi_channel()
1721 ch->band_center_freq1 = __cpu_to_le32(arg->band_center_freq1); in ath10k_wmi_put_wmi_channel()
1722 if (arg->mode == MODE_11AC_VHT80_80) { in ath10k_wmi_put_wmi_channel()
1723 ch->band_center_freq2 = __cpu_to_le32(arg->band_center_freq2); in ath10k_wmi_put_wmi_channel()
1725 arg->band_center_freq2 - 10); in ath10k_wmi_put_wmi_channel()
1728 if (arg->mode == MODE_11AC_VHT160) { in ath10k_wmi_put_wmi_channel()
1732 if (arg->freq > arg->band_center_freq1) { in ath10k_wmi_put_wmi_channel()
1733 band_center_freq1 = arg->band_center_freq1 + 40; in ath10k_wmi_put_wmi_channel()
1734 band_center_freq2 = arg->band_center_freq1 - 40; in ath10k_wmi_put_wmi_channel()
1736 band_center_freq1 = arg->band_center_freq1 - 40; in ath10k_wmi_put_wmi_channel()
1737 band_center_freq2 = arg->band_center_freq1 + 40; in ath10k_wmi_put_wmi_channel()
1746 ch->band_center_freq2 = __cpu_to_le32(arg->band_center_freq1); in ath10k_wmi_put_wmi_channel()
1752 ch->min_power = arg->min_power; in ath10k_wmi_put_wmi_channel()
1753 ch->max_power = arg->max_power; in ath10k_wmi_put_wmi_channel()
1754 ch->reg_power = arg->max_reg_power; in ath10k_wmi_put_wmi_channel()
1755 ch->antenna_max = arg->max_antenna_gain; in ath10k_wmi_put_wmi_channel()
1756 ch->max_tx_power = arg->max_power; in ath10k_wmi_put_wmi_channel()
1759 ch->mode = arg->mode; in ath10k_wmi_put_wmi_channel()
2170 struct wmi_scan_ev_arg *arg) in ath10k_wmi_op_pull_scan_ev() argument
2178 arg->event_type = ev->event_type; in ath10k_wmi_op_pull_scan_ev()
2179 arg->reason = ev->reason; in ath10k_wmi_op_pull_scan_ev()
2180 arg->channel_freq = ev->channel_freq; in ath10k_wmi_op_pull_scan_ev()
2181 arg->scan_req_id = ev->scan_req_id; in ath10k_wmi_op_pull_scan_ev()
2182 arg->scan_id = ev->scan_id; in ath10k_wmi_op_pull_scan_ev()
2183 arg->vdev_id = ev->vdev_id; in ath10k_wmi_op_pull_scan_ev()
2190 struct wmi_scan_ev_arg arg = {}; in ath10k_wmi_event_scan() local
2199 ret = ath10k_wmi_pull_scan(ar, skb, &arg); in ath10k_wmi_event_scan()
2205 event_type = __le32_to_cpu(arg.event_type); in ath10k_wmi_event_scan()
2206 reason = __le32_to_cpu(arg.reason); in ath10k_wmi_event_scan()
2207 freq = __le32_to_cpu(arg.channel_freq); in ath10k_wmi_event_scan()
2208 req_id = __le32_to_cpu(arg.scan_req_id); in ath10k_wmi_event_scan()
2209 scan_id = __le32_to_cpu(arg.scan_id); in ath10k_wmi_event_scan()
2210 vdev_id = __le32_to_cpu(arg.vdev_id); in ath10k_wmi_event_scan()
2284 struct wmi_mgmt_rx_ev_arg *arg) in ath10k_wmi_op_pull_mgmt_rx_ev() argument
2309 arg->channel = ev_hdr->channel; in ath10k_wmi_op_pull_mgmt_rx_ev()
2310 arg->buf_len = ev_hdr->buf_len; in ath10k_wmi_op_pull_mgmt_rx_ev()
2311 arg->status = ev_hdr->status; in ath10k_wmi_op_pull_mgmt_rx_ev()
2312 arg->snr = ev_hdr->snr; in ath10k_wmi_op_pull_mgmt_rx_ev()
2313 arg->phy_mode = ev_hdr->phy_mode; in ath10k_wmi_op_pull_mgmt_rx_ev()
2314 arg->rate = ev_hdr->rate; in ath10k_wmi_op_pull_mgmt_rx_ev()
2316 msdu_len = __le32_to_cpu(arg->buf_len); in ath10k_wmi_op_pull_mgmt_rx_ev()
2320 if (le32_to_cpu(arg->status) & WMI_RX_STATUS_EXT_INFO) { in ath10k_wmi_op_pull_mgmt_rx_ev()
2321 len = ALIGN(le32_to_cpu(arg->buf_len), 4); in ath10k_wmi_op_pull_mgmt_rx_ev()
2323 memcpy(&arg->ext_info, ext_info, in ath10k_wmi_op_pull_mgmt_rx_ev()
2336 struct wmi_mgmt_rx_ev_arg *arg) in ath10k_wmi_10_4_op_pull_mgmt_rx_ev() argument
2353 arg->channel = ev_hdr->channel; in ath10k_wmi_10_4_op_pull_mgmt_rx_ev()
2354 arg->buf_len = ev_hdr->buf_len; in ath10k_wmi_10_4_op_pull_mgmt_rx_ev()
2355 arg->status = ev_hdr->status; in ath10k_wmi_10_4_op_pull_mgmt_rx_ev()
2356 arg->snr = ev_hdr->snr; in ath10k_wmi_10_4_op_pull_mgmt_rx_ev()
2357 arg->phy_mode = ev_hdr->phy_mode; in ath10k_wmi_10_4_op_pull_mgmt_rx_ev()
2358 arg->rate = ev_hdr->rate; in ath10k_wmi_10_4_op_pull_mgmt_rx_ev()
2360 msdu_len = __le32_to_cpu(arg->buf_len); in ath10k_wmi_10_4_op_pull_mgmt_rx_ev()
2364 if (le32_to_cpu(arg->status) & WMI_RX_STATUS_EXT_INFO) { in ath10k_wmi_10_4_op_pull_mgmt_rx_ev()
2365 len = ALIGN(le32_to_cpu(arg->buf_len), 4); in ath10k_wmi_10_4_op_pull_mgmt_rx_ev()
2367 memcpy(&arg->ext_info, ext_info, in ath10k_wmi_10_4_op_pull_mgmt_rx_ev()
2445 struct wmi_tlv_mgmt_tx_compl_ev_arg arg; in ath10k_wmi_event_mgmt_tx_compl() local
2449 ret = ath10k_wmi_pull_mgmt_tx_compl(ar, skb, &arg); in ath10k_wmi_event_mgmt_tx_compl()
2456 param.desc_id = __le32_to_cpu(arg.desc_id); in ath10k_wmi_event_mgmt_tx_compl()
2457 param.status = __le32_to_cpu(arg.status); in ath10k_wmi_event_mgmt_tx_compl()
2460 param.ack_rssi = __le32_to_cpu(arg.ack_rssi); in ath10k_wmi_event_mgmt_tx_compl()
2471 struct wmi_tlv_mgmt_tx_bundle_compl_ev_arg arg; in ath10k_wmi_event_mgmt_tx_bundle_compl() local
2476 ret = ath10k_wmi_pull_mgmt_tx_bundle_compl(ar, skb, &arg); in ath10k_wmi_event_mgmt_tx_bundle_compl()
2482 num_reports = __le32_to_cpu(arg.num_reports); in ath10k_wmi_event_mgmt_tx_bundle_compl()
2486 param.desc_id = __le32_to_cpu(arg.desc_ids[i]); in ath10k_wmi_event_mgmt_tx_bundle_compl()
2487 param.status = __le32_to_cpu(arg.desc_ids[i]); in ath10k_wmi_event_mgmt_tx_bundle_compl()
2490 param.ack_rssi = __le32_to_cpu(arg.ack_rssi[i]); in ath10k_wmi_event_mgmt_tx_bundle_compl()
2501 struct wmi_mgmt_rx_ev_arg arg = {}; in ath10k_wmi_event_mgmt_rx() local
2513 ret = ath10k_wmi_pull_mgmt_rx(ar, skb, &arg); in ath10k_wmi_event_mgmt_rx()
2520 channel = __le32_to_cpu(arg.channel); in ath10k_wmi_event_mgmt_rx()
2521 rx_status = __le32_to_cpu(arg.status); in ath10k_wmi_event_mgmt_rx()
2522 snr = __le32_to_cpu(arg.snr); in ath10k_wmi_event_mgmt_rx()
2523 phy_mode = __le32_to_cpu(arg.phy_mode); in ath10k_wmi_event_mgmt_rx()
2524 rate = __le32_to_cpu(arg.rate); in ath10k_wmi_event_mgmt_rx()
2543 __le64_to_cpu(arg.ext_info.rx_mac_timestamp); in ath10k_wmi_event_mgmt_rx()
2571 BUILD_BUG_ON(ARRAY_SIZE(status->chain_signal) != ARRAY_SIZE(arg.rssi)); in ath10k_wmi_event_mgmt_rx()
2575 rssi = __le32_to_cpu(arg.rssi[i]); in ath10k_wmi_event_mgmt_rx()
2576 ath10k_dbg(ar, ATH10K_DBG_MGMT, "mgmt rssi[%d]:%d\n", i, arg.rssi[i]); in ath10k_wmi_event_mgmt_rx()
2652 struct wmi_ch_info_ev_arg *arg) in ath10k_wmi_op_pull_ch_info_ev() argument
2660 arg->err_code = ev->err_code; in ath10k_wmi_op_pull_ch_info_ev()
2661 arg->freq = ev->freq; in ath10k_wmi_op_pull_ch_info_ev()
2662 arg->cmd_flags = ev->cmd_flags; in ath10k_wmi_op_pull_ch_info_ev()
2663 arg->noise_floor = ev->noise_floor; in ath10k_wmi_op_pull_ch_info_ev()
2664 arg->rx_clear_count = ev->rx_clear_count; in ath10k_wmi_op_pull_ch_info_ev()
2665 arg->cycle_count = ev->cycle_count; in ath10k_wmi_op_pull_ch_info_ev()
2672 struct wmi_ch_info_ev_arg *arg) in ath10k_wmi_10_4_op_pull_ch_info_ev() argument
2680 arg->err_code = ev->err_code; in ath10k_wmi_10_4_op_pull_ch_info_ev()
2681 arg->freq = ev->freq; in ath10k_wmi_10_4_op_pull_ch_info_ev()
2682 arg->cmd_flags = ev->cmd_flags; in ath10k_wmi_10_4_op_pull_ch_info_ev()
2683 arg->noise_floor = ev->noise_floor; in ath10k_wmi_10_4_op_pull_ch_info_ev()
2684 arg->rx_clear_count = ev->rx_clear_count; in ath10k_wmi_10_4_op_pull_ch_info_ev()
2685 arg->cycle_count = ev->cycle_count; in ath10k_wmi_10_4_op_pull_ch_info_ev()
2686 arg->chan_tx_pwr_range = ev->chan_tx_pwr_range; in ath10k_wmi_10_4_op_pull_ch_info_ev()
2687 arg->chan_tx_pwr_tp = ev->chan_tx_pwr_tp; in ath10k_wmi_10_4_op_pull_ch_info_ev()
2688 arg->rx_frame_count = ev->rx_frame_count; in ath10k_wmi_10_4_op_pull_ch_info_ev()
2774 struct wmi_ch_info_ev_arg arg = {}; in ath10k_wmi_event_chan_info() local
2777 ret = ath10k_wmi_pull_ch_info(ar, skb, &arg); in ath10k_wmi_event_chan_info()
2783 ch_info_param.err_code = __le32_to_cpu(arg.err_code); in ath10k_wmi_event_chan_info()
2784 ch_info_param.freq = __le32_to_cpu(arg.freq); in ath10k_wmi_event_chan_info()
2785 ch_info_param.cmd_flags = __le32_to_cpu(arg.cmd_flags); in ath10k_wmi_event_chan_info()
2786 ch_info_param.noise_floor = __le32_to_cpu(arg.noise_floor); in ath10k_wmi_event_chan_info()
2787 ch_info_param.rx_clear_count = __le32_to_cpu(arg.rx_clear_count); in ath10k_wmi_event_chan_info()
2788 ch_info_param.cycle_count = __le32_to_cpu(arg.cycle_count); in ath10k_wmi_event_chan_info()
2789 ch_info_param.mac_clk_mhz = __le32_to_cpu(arg.mac_clk_mhz); in ath10k_wmi_event_chan_info()
2821 struct wmi_echo_ev_arg arg = {}; in ath10k_wmi_event_echo() local
2824 ret = ath10k_wmi_pull_echo_ev(ar, skb, &arg); in ath10k_wmi_event_echo()
2832 le32_to_cpu(arg.value)); in ath10k_wmi_event_echo()
2834 if (le32_to_cpu(arg.value) == ATH10K_WMI_BARRIER_ECHO_ID) in ath10k_wmi_event_echo()
3422 struct wmi_vdev_start_ev_arg *arg) in ath10k_wmi_op_pull_vdev_start_ev() argument
3430 arg->vdev_id = ev->vdev_id; in ath10k_wmi_op_pull_vdev_start_ev()
3431 arg->req_id = ev->req_id; in ath10k_wmi_op_pull_vdev_start_ev()
3432 arg->resp_type = ev->resp_type; in ath10k_wmi_op_pull_vdev_start_ev()
3433 arg->status = ev->status; in ath10k_wmi_op_pull_vdev_start_ev()
3440 struct wmi_vdev_start_ev_arg arg = {}; in ath10k_wmi_event_vdev_start_resp() local
3448 ret = ath10k_wmi_pull_vdev_start(ar, skb, &arg); in ath10k_wmi_event_vdev_start_resp()
3455 status = __le32_to_cpu(arg.status); in ath10k_wmi_event_vdev_start_resp()
3478 struct wmi_peer_kick_ev_arg *arg) in ath10k_wmi_op_pull_peer_kick_ev() argument
3486 arg->mac_addr = ev->peer_macaddr.addr; in ath10k_wmi_op_pull_peer_kick_ev()
3493 struct wmi_peer_kick_ev_arg arg = {}; in ath10k_wmi_event_peer_sta_kickout() local
3497 ret = ath10k_wmi_pull_peer_kick(ar, skb, &arg); in ath10k_wmi_event_peer_sta_kickout()
3505 arg.mac_addr); in ath10k_wmi_event_peer_sta_kickout()
3509 sta = ieee80211_find_sta_by_ifaddr(ar->hw, arg.mac_addr, NULL); in ath10k_wmi_event_peer_sta_kickout()
3512 arg.mac_addr); in ath10k_wmi_event_peer_sta_kickout()
3663 struct wmi_swba_ev_arg *arg) in ath10k_wmi_op_pull_swba_ev() argument
3673 arg->vdev_map = ev->vdev_map; in ath10k_wmi_op_pull_swba_ev()
3682 if (WARN_ON_ONCE(i == ARRAY_SIZE(arg->tim_info))) in ath10k_wmi_op_pull_swba_ev()
3691 arg->tim_info[i].tim_len = ev->bcn_info[i].tim_info.tim_len; in ath10k_wmi_op_pull_swba_ev()
3692 arg->tim_info[i].tim_mcast = ev->bcn_info[i].tim_info.tim_mcast; in ath10k_wmi_op_pull_swba_ev()
3693 arg->tim_info[i].tim_bitmap = in ath10k_wmi_op_pull_swba_ev()
3695 arg->tim_info[i].tim_changed = in ath10k_wmi_op_pull_swba_ev()
3697 arg->tim_info[i].tim_num_ps_pending = in ath10k_wmi_op_pull_swba_ev()
3700 arg->noa_info[i] = &ev->bcn_info[i].p2p_noa_info; in ath10k_wmi_op_pull_swba_ev()
3709 struct wmi_swba_ev_arg *arg) in ath10k_wmi_10_2_4_op_pull_swba_ev() argument
3719 arg->vdev_map = ev->vdev_map; in ath10k_wmi_10_2_4_op_pull_swba_ev()
3728 if (WARN_ON_ONCE(i == ARRAY_SIZE(arg->tim_info))) in ath10k_wmi_10_2_4_op_pull_swba_ev()
3737 arg->tim_info[i].tim_len = ev->bcn_info[i].tim_info.tim_len; in ath10k_wmi_10_2_4_op_pull_swba_ev()
3738 arg->tim_info[i].tim_mcast = ev->bcn_info[i].tim_info.tim_mcast; in ath10k_wmi_10_2_4_op_pull_swba_ev()
3739 arg->tim_info[i].tim_bitmap = in ath10k_wmi_10_2_4_op_pull_swba_ev()
3741 arg->tim_info[i].tim_changed = in ath10k_wmi_10_2_4_op_pull_swba_ev()
3743 arg->tim_info[i].tim_num_ps_pending = in ath10k_wmi_10_2_4_op_pull_swba_ev()
3753 struct wmi_swba_ev_arg *arg) in ath10k_wmi_10_4_op_pull_swba_ev() argument
3763 arg->vdev_map = ev->vdev_map; in ath10k_wmi_10_4_op_pull_swba_ev()
3772 if (WARN_ON_ONCE(i == ARRAY_SIZE(arg->tim_info))) in ath10k_wmi_10_4_op_pull_swba_ev()
3785 arg->tim_info[i].tim_len = __cpu_to_le32(tim_len); in ath10k_wmi_10_4_op_pull_swba_ev()
3787 arg->tim_info[i].tim_len = 0; in ath10k_wmi_10_4_op_pull_swba_ev()
3790 arg->tim_info[i].tim_mcast = ev->bcn_info[i].tim_info.tim_mcast; in ath10k_wmi_10_4_op_pull_swba_ev()
3791 arg->tim_info[i].tim_bitmap = in ath10k_wmi_10_4_op_pull_swba_ev()
3793 arg->tim_info[i].tim_changed = in ath10k_wmi_10_4_op_pull_swba_ev()
3795 arg->tim_info[i].tim_num_ps_pending = in ath10k_wmi_10_4_op_pull_swba_ev()
3815 struct wmi_swba_ev_arg arg = {}; in ath10k_wmi_event_host_swba() local
3825 ret = ath10k_wmi_pull_swba(ar, skb, &arg); in ath10k_wmi_event_host_swba()
3831 map = __le32_to_cpu(arg.vdev_map); in ath10k_wmi_event_host_swba()
3847 tim_info = &arg.tim_info[i]; in ath10k_wmi_event_host_swba()
3848 noa_info = arg.noa_info[i]; in ath10k_wmi_event_host_swba()
4300 struct wmi_phyerr_hdr_arg *arg) in ath10k_wmi_op_pull_phyerr_ev_hdr() argument
4307 arg->num_phyerrs = __le32_to_cpu(ev->num_phyerrs); in ath10k_wmi_op_pull_phyerr_ev_hdr()
4308 arg->tsf_l32 = __le32_to_cpu(ev->tsf_l32); in ath10k_wmi_op_pull_phyerr_ev_hdr()
4309 arg->tsf_u32 = __le32_to_cpu(ev->tsf_u32); in ath10k_wmi_op_pull_phyerr_ev_hdr()
4310 arg->buf_len = skb->len - sizeof(*ev); in ath10k_wmi_op_pull_phyerr_ev_hdr()
4311 arg->phyerrs = ev->phyerrs; in ath10k_wmi_op_pull_phyerr_ev_hdr()
4318 struct wmi_phyerr_hdr_arg *arg) in ath10k_wmi_10_4_op_pull_phyerr_ev_hdr() argument
4326 arg->num_phyerrs = 1; in ath10k_wmi_10_4_op_pull_phyerr_ev_hdr()
4328 arg->tsf_l32 = __le32_to_cpu(ev->tsf_l32); in ath10k_wmi_10_4_op_pull_phyerr_ev_hdr()
4329 arg->tsf_u32 = __le32_to_cpu(ev->tsf_u32); in ath10k_wmi_10_4_op_pull_phyerr_ev_hdr()
4330 arg->buf_len = skb->len; in ath10k_wmi_10_4_op_pull_phyerr_ev_hdr()
4331 arg->phyerrs = skb->data; in ath10k_wmi_10_4_op_pull_phyerr_ev_hdr()
4339 struct wmi_phyerr_ev_arg *arg) in ath10k_wmi_op_pull_phyerr_ev() argument
4350 arg->tsf_timestamp = __le32_to_cpu(phyerr->tsf_timestamp); in ath10k_wmi_op_pull_phyerr_ev()
4351 arg->freq1 = __le16_to_cpu(phyerr->freq1); in ath10k_wmi_op_pull_phyerr_ev()
4352 arg->freq2 = __le16_to_cpu(phyerr->freq2); in ath10k_wmi_op_pull_phyerr_ev()
4353 arg->rssi_combined = phyerr->rssi_combined; in ath10k_wmi_op_pull_phyerr_ev()
4354 arg->chan_width_mhz = phyerr->chan_width_mhz; in ath10k_wmi_op_pull_phyerr_ev()
4355 arg->buf_len = __le32_to_cpu(phyerr->buf_len); in ath10k_wmi_op_pull_phyerr_ev()
4356 arg->buf = phyerr->buf; in ath10k_wmi_op_pull_phyerr_ev()
4357 arg->hdr_len = sizeof(*phyerr); in ath10k_wmi_op_pull_phyerr_ev()
4360 arg->nf_chains[i] = __le16_to_cpu(phyerr->nf_chains[i]); in ath10k_wmi_op_pull_phyerr_ev()
4364 arg->phy_err_code = PHY_ERROR_SPECTRAL_SCAN; in ath10k_wmi_op_pull_phyerr_ev()
4367 arg->phy_err_code = PHY_ERROR_FALSE_RADAR_EXT; in ath10k_wmi_op_pull_phyerr_ev()
4370 arg->phy_err_code = PHY_ERROR_RADAR; in ath10k_wmi_op_pull_phyerr_ev()
4373 arg->phy_err_code = PHY_ERROR_UNKNOWN; in ath10k_wmi_op_pull_phyerr_ev()
4383 struct wmi_phyerr_ev_arg *arg) in ath10k_wmi_10_4_op_pull_phyerr_ev() argument
4395 arg->tsf_timestamp = __le32_to_cpu(phyerr->tsf_timestamp); in ath10k_wmi_10_4_op_pull_phyerr_ev()
4396 arg->freq1 = __le16_to_cpu(phyerr->freq1); in ath10k_wmi_10_4_op_pull_phyerr_ev()
4397 arg->freq2 = __le16_to_cpu(phyerr->freq2); in ath10k_wmi_10_4_op_pull_phyerr_ev()
4398 arg->rssi_combined = phyerr->rssi_combined; in ath10k_wmi_10_4_op_pull_phyerr_ev()
4399 arg->chan_width_mhz = phyerr->chan_width_mhz; in ath10k_wmi_10_4_op_pull_phyerr_ev()
4400 arg->buf_len = __le32_to_cpu(phyerr->buf_len); in ath10k_wmi_10_4_op_pull_phyerr_ev()
4401 arg->buf = phyerr->buf; in ath10k_wmi_10_4_op_pull_phyerr_ev()
4402 arg->hdr_len = sizeof(*phyerr); in ath10k_wmi_10_4_op_pull_phyerr_ev()
4405 arg->nf_chains[i] = __le16_to_cpu(phyerr->nf_chains[i]); in ath10k_wmi_10_4_op_pull_phyerr_ev()
4410 arg->phy_err_code = PHY_ERROR_SPECTRAL_SCAN; in ath10k_wmi_10_4_op_pull_phyerr_ev()
4412 arg->phy_err_code = PHY_ERROR_RADAR; in ath10k_wmi_10_4_op_pull_phyerr_ev()
4414 arg->phy_err_code = PHY_ERROR_UNKNOWN; in ath10k_wmi_10_4_op_pull_phyerr_ev()
4490 struct wmi_dfs_status_ev_arg *arg) in ath10k_wmi_10_4_op_pull_dfs_status_ev() argument
4497 arg->status = ev->status; in ath10k_wmi_10_4_op_pull_dfs_status_ev()
4531 struct wmi_roam_ev_arg arg = {}; in ath10k_wmi_event_roam() local
4537 ret = ath10k_wmi_pull_roam_ev(ar, skb, &arg); in ath10k_wmi_event_roam()
4543 vdev_id = __le32_to_cpu(arg.vdev_id); in ath10k_wmi_event_roam()
4544 reason = __le32_to_cpu(arg.reason); in ath10k_wmi_event_roam()
4545 rssi = __le32_to_cpu(arg.rssi); in ath10k_wmi_event_roam()
5419 struct wmi_svc_rdy_ev_arg *arg) in ath10k_wmi_main_op_pull_svc_rdy_ev() argument
5429 arg->min_tx_power = ev->hw_min_tx_power; in ath10k_wmi_main_op_pull_svc_rdy_ev()
5430 arg->max_tx_power = ev->hw_max_tx_power; in ath10k_wmi_main_op_pull_svc_rdy_ev()
5431 arg->ht_cap = ev->ht_cap_info; in ath10k_wmi_main_op_pull_svc_rdy_ev()
5432 arg->vht_cap = ev->vht_cap_info; in ath10k_wmi_main_op_pull_svc_rdy_ev()
5433 arg->vht_supp_mcs = ev->vht_supp_mcs; in ath10k_wmi_main_op_pull_svc_rdy_ev()
5434 arg->sw_ver0 = ev->sw_version; in ath10k_wmi_main_op_pull_svc_rdy_ev()
5435 arg->sw_ver1 = ev->sw_version_1; in ath10k_wmi_main_op_pull_svc_rdy_ev()
5436 arg->phy_capab = ev->phy_capability; in ath10k_wmi_main_op_pull_svc_rdy_ev()
5437 arg->num_rf_chains = ev->num_rf_chains; in ath10k_wmi_main_op_pull_svc_rdy_ev()
5438 arg->eeprom_rd = ev->hal_reg_capabilities.eeprom_rd; in ath10k_wmi_main_op_pull_svc_rdy_ev()
5439 arg->low_2ghz_chan = ev->hal_reg_capabilities.low_2ghz_chan; in ath10k_wmi_main_op_pull_svc_rdy_ev()
5440 arg->high_2ghz_chan = ev->hal_reg_capabilities.high_2ghz_chan; in ath10k_wmi_main_op_pull_svc_rdy_ev()
5441 arg->low_5ghz_chan = ev->hal_reg_capabilities.low_5ghz_chan; in ath10k_wmi_main_op_pull_svc_rdy_ev()
5442 arg->high_5ghz_chan = ev->hal_reg_capabilities.high_5ghz_chan; in ath10k_wmi_main_op_pull_svc_rdy_ev()
5443 arg->num_mem_reqs = ev->num_mem_reqs; in ath10k_wmi_main_op_pull_svc_rdy_ev()
5444 arg->service_map = ev->wmi_service_bitmap; in ath10k_wmi_main_op_pull_svc_rdy_ev()
5445 arg->service_map_len = sizeof(ev->wmi_service_bitmap); in ath10k_wmi_main_op_pull_svc_rdy_ev()
5447 n = min_t(size_t, __le32_to_cpu(arg->num_mem_reqs), in ath10k_wmi_main_op_pull_svc_rdy_ev()
5448 ARRAY_SIZE(arg->mem_reqs)); in ath10k_wmi_main_op_pull_svc_rdy_ev()
5450 arg->mem_reqs[i] = &ev->mem_reqs[i]; in ath10k_wmi_main_op_pull_svc_rdy_ev()
5453 __le32_to_cpu(arg->num_mem_reqs) * sizeof(arg->mem_reqs[0])) in ath10k_wmi_main_op_pull_svc_rdy_ev()
5461 struct wmi_svc_rdy_ev_arg *arg) in ath10k_wmi_10x_op_pull_svc_rdy_ev() argument
5471 arg->min_tx_power = ev->hw_min_tx_power; in ath10k_wmi_10x_op_pull_svc_rdy_ev()
5472 arg->max_tx_power = ev->hw_max_tx_power; in ath10k_wmi_10x_op_pull_svc_rdy_ev()
5473 arg->ht_cap = ev->ht_cap_info; in ath10k_wmi_10x_op_pull_svc_rdy_ev()
5474 arg->vht_cap = ev->vht_cap_info; in ath10k_wmi_10x_op_pull_svc_rdy_ev()
5475 arg->vht_supp_mcs = ev->vht_supp_mcs; in ath10k_wmi_10x_op_pull_svc_rdy_ev()
5476 arg->sw_ver0 = ev->sw_version; in ath10k_wmi_10x_op_pull_svc_rdy_ev()
5477 arg->phy_capab = ev->phy_capability; in ath10k_wmi_10x_op_pull_svc_rdy_ev()
5478 arg->num_rf_chains = ev->num_rf_chains; in ath10k_wmi_10x_op_pull_svc_rdy_ev()
5479 arg->eeprom_rd = ev->hal_reg_capabilities.eeprom_rd; in ath10k_wmi_10x_op_pull_svc_rdy_ev()
5480 arg->low_2ghz_chan = ev->hal_reg_capabilities.low_2ghz_chan; in ath10k_wmi_10x_op_pull_svc_rdy_ev()
5481 arg->high_2ghz_chan = ev->hal_reg_capabilities.high_2ghz_chan; in ath10k_wmi_10x_op_pull_svc_rdy_ev()
5482 arg->low_5ghz_chan = ev->hal_reg_capabilities.low_5ghz_chan; in ath10k_wmi_10x_op_pull_svc_rdy_ev()
5483 arg->high_5ghz_chan = ev->hal_reg_capabilities.high_5ghz_chan; in ath10k_wmi_10x_op_pull_svc_rdy_ev()
5484 arg->num_mem_reqs = ev->num_mem_reqs; in ath10k_wmi_10x_op_pull_svc_rdy_ev()
5485 arg->service_map = ev->wmi_service_bitmap; in ath10k_wmi_10x_op_pull_svc_rdy_ev()
5486 arg->service_map_len = sizeof(ev->wmi_service_bitmap); in ath10k_wmi_10x_op_pull_svc_rdy_ev()
5494 n = min_t(size_t, __le32_to_cpu(arg->num_mem_reqs), in ath10k_wmi_10x_op_pull_svc_rdy_ev()
5495 ARRAY_SIZE(arg->mem_reqs)); in ath10k_wmi_10x_op_pull_svc_rdy_ev()
5497 arg->mem_reqs[i] = &ev->mem_reqs[i]; in ath10k_wmi_10x_op_pull_svc_rdy_ev()
5500 __le32_to_cpu(arg->num_mem_reqs) * sizeof(arg->mem_reqs[0])) in ath10k_wmi_10x_op_pull_svc_rdy_ev()
5510 struct wmi_svc_rdy_ev_arg arg = {}; in ath10k_wmi_event_service_ready_work() local
5520 ret = ath10k_wmi_pull_svc_rdy(ar, skb, &arg); in ath10k_wmi_event_service_ready_work()
5526 ath10k_wmi_map_svc(ar, arg.service_map, ar->wmi.svc_map, in ath10k_wmi_event_service_ready_work()
5527 arg.service_map_len); in ath10k_wmi_event_service_ready_work()
5529 ar->hw_min_tx_power = __le32_to_cpu(arg.min_tx_power); in ath10k_wmi_event_service_ready_work()
5530 ar->hw_max_tx_power = __le32_to_cpu(arg.max_tx_power); in ath10k_wmi_event_service_ready_work()
5531 ar->ht_cap_info = __le32_to_cpu(arg.ht_cap); in ath10k_wmi_event_service_ready_work()
5532 ar->vht_cap_info = __le32_to_cpu(arg.vht_cap); in ath10k_wmi_event_service_ready_work()
5533 ar->vht_supp_mcs = __le32_to_cpu(arg.vht_supp_mcs); in ath10k_wmi_event_service_ready_work()
5535 (__le32_to_cpu(arg.sw_ver0) & 0xff000000) >> 24; in ath10k_wmi_event_service_ready_work()
5536 ar->fw_version_minor = (__le32_to_cpu(arg.sw_ver0) & 0x00ffffff); in ath10k_wmi_event_service_ready_work()
5538 (__le32_to_cpu(arg.sw_ver1) & 0xffff0000) >> 16; in ath10k_wmi_event_service_ready_work()
5539 ar->fw_version_build = (__le32_to_cpu(arg.sw_ver1) & 0x0000ffff); in ath10k_wmi_event_service_ready_work()
5540 ar->phy_capability = __le32_to_cpu(arg.phy_capab); in ath10k_wmi_event_service_ready_work()
5541 ar->num_rf_chains = __le32_to_cpu(arg.num_rf_chains); in ath10k_wmi_event_service_ready_work()
5542 ar->hw_eeprom_rd = __le32_to_cpu(arg.eeprom_rd); in ath10k_wmi_event_service_ready_work()
5543 ar->low_2ghz_chan = __le32_to_cpu(arg.low_2ghz_chan); in ath10k_wmi_event_service_ready_work()
5544 ar->high_2ghz_chan = __le32_to_cpu(arg.high_2ghz_chan); in ath10k_wmi_event_service_ready_work()
5545 ar->low_5ghz_chan = __le32_to_cpu(arg.low_5ghz_chan); in ath10k_wmi_event_service_ready_work()
5546 ar->high_5ghz_chan = __le32_to_cpu(arg.high_5ghz_chan); in ath10k_wmi_event_service_ready_work()
5547 ar->sys_cap_info = __le32_to_cpu(arg.sys_cap_info); in ath10k_wmi_event_service_ready_work()
5550 arg.service_map, arg.service_map_len); in ath10k_wmi_event_service_ready_work()
5575 num_mem_reqs = __le32_to_cpu(arg.num_mem_reqs); in ath10k_wmi_event_service_ready_work()
5601 allocated = ath10k_wmi_is_host_mem_allocated(ar, arg.mem_reqs, in ath10k_wmi_event_service_ready_work()
5614 req_id = __le32_to_cpu(arg.mem_reqs[i]->req_id); in ath10k_wmi_event_service_ready_work()
5615 num_units = __le32_to_cpu(arg.mem_reqs[i]->num_units); in ath10k_wmi_event_service_ready_work()
5616 unit_size = __le32_to_cpu(arg.mem_reqs[i]->unit_size); in ath10k_wmi_event_service_ready_work()
5617 num_unit_info = __le32_to_cpu(arg.mem_reqs[i]->num_unit_info); in ath10k_wmi_event_service_ready_work()
5638 __le32_to_cpu(arg.mem_reqs[i]->num_units), in ath10k_wmi_event_service_ready_work()
5652 __le32_to_cpu(arg.min_tx_power), in ath10k_wmi_event_service_ready_work()
5653 __le32_to_cpu(arg.max_tx_power), in ath10k_wmi_event_service_ready_work()
5654 __le32_to_cpu(arg.ht_cap), in ath10k_wmi_event_service_ready_work()
5655 __le32_to_cpu(arg.vht_cap), in ath10k_wmi_event_service_ready_work()
5656 __le32_to_cpu(arg.vht_supp_mcs), in ath10k_wmi_event_service_ready_work()
5657 __le32_to_cpu(arg.sw_ver0), in ath10k_wmi_event_service_ready_work()
5658 __le32_to_cpu(arg.sw_ver1), in ath10k_wmi_event_service_ready_work()
5659 __le32_to_cpu(arg.fw_build), in ath10k_wmi_event_service_ready_work()
5660 __le32_to_cpu(arg.phy_capab), in ath10k_wmi_event_service_ready_work()
5661 __le32_to_cpu(arg.num_rf_chains), in ath10k_wmi_event_service_ready_work()
5662 __le32_to_cpu(arg.eeprom_rd), in ath10k_wmi_event_service_ready_work()
5663 __le32_to_cpu(arg.low_2ghz_chan), in ath10k_wmi_event_service_ready_work()
5664 __le32_to_cpu(arg.high_2ghz_chan), in ath10k_wmi_event_service_ready_work()
5665 __le32_to_cpu(arg.low_5ghz_chan), in ath10k_wmi_event_service_ready_work()
5666 __le32_to_cpu(arg.high_5ghz_chan), in ath10k_wmi_event_service_ready_work()
5667 __le32_to_cpu(arg.num_mem_reqs)); in ath10k_wmi_event_service_ready_work()
5681 struct wmi_rdy_ev_arg *arg) in ath10k_wmi_op_pull_rdy_ev() argument
5689 arg->sw_version = ev->sw_version; in ath10k_wmi_op_pull_rdy_ev()
5690 arg->abi_version = ev->abi_version; in ath10k_wmi_op_pull_rdy_ev()
5691 arg->status = ev->status; in ath10k_wmi_op_pull_rdy_ev()
5692 arg->mac_addr = ev->mac_addr.addr; in ath10k_wmi_op_pull_rdy_ev()
5698 struct wmi_roam_ev_arg *arg) in ath10k_wmi_op_pull_roam_ev() argument
5706 arg->vdev_id = ev->vdev_id; in ath10k_wmi_op_pull_roam_ev()
5707 arg->reason = ev->reason; in ath10k_wmi_op_pull_roam_ev()
5714 struct wmi_echo_ev_arg *arg) in ath10k_wmi_op_pull_echo_ev() argument
5718 arg->value = ev->value; in ath10k_wmi_op_pull_echo_ev()
5725 struct wmi_rdy_ev_arg arg = {}; in ath10k_wmi_event_ready() local
5728 ret = ath10k_wmi_pull_rdy(ar, skb, &arg); in ath10k_wmi_event_ready()
5736 __le32_to_cpu(arg.sw_version), in ath10k_wmi_event_ready()
5737 __le32_to_cpu(arg.abi_version), in ath10k_wmi_event_ready()
5738 arg.mac_addr, in ath10k_wmi_event_ready()
5739 __le32_to_cpu(arg.status)); in ath10k_wmi_event_ready()
5742 ether_addr_copy(ar->mac_addr, arg.mac_addr); in ath10k_wmi_event_ready()
5750 struct wmi_svc_avail_ev_arg arg = {}; in ath10k_wmi_event_service_available() local
5752 ret = ath10k_wmi_pull_svc_avail(ar, skb, &arg); in ath10k_wmi_event_service_available()
5762 if (arg.service_map_ext_valid) in ath10k_wmi_event_service_available()
5763 ath10k_wmi_map_svc_ext(ar, arg.service_map_ext, ar->wmi.svc_map, in ath10k_wmi_event_service_available()
5764 __le32_to_cpu(arg.service_map_ext_len)); in ath10k_wmi_event_service_available()
6857 int ath10k_wmi_start_scan_verify(const struct wmi_start_scan_arg *arg) in ath10k_wmi_start_scan_verify() argument
6859 if (arg->ie_len > WLAN_SCAN_PARAMS_MAX_IE_LEN) in ath10k_wmi_start_scan_verify()
6861 if (arg->n_channels > ARRAY_SIZE(arg->channels)) in ath10k_wmi_start_scan_verify()
6863 if (arg->n_ssids > WLAN_SCAN_PARAMS_MAX_SSID) in ath10k_wmi_start_scan_verify()
6865 if (arg->n_bssids > WLAN_SCAN_PARAMS_MAX_BSSID) in ath10k_wmi_start_scan_verify()
6872 ath10k_wmi_start_scan_tlvs_len(const struct wmi_start_scan_arg *arg) in ath10k_wmi_start_scan_tlvs_len() argument
6876 if (arg->ie_len) { in ath10k_wmi_start_scan_tlvs_len()
6878 len += roundup(arg->ie_len, 4); in ath10k_wmi_start_scan_tlvs_len()
6881 if (arg->n_channels) { in ath10k_wmi_start_scan_tlvs_len()
6883 len += sizeof(__le32) * arg->n_channels; in ath10k_wmi_start_scan_tlvs_len()
6886 if (arg->n_ssids) { in ath10k_wmi_start_scan_tlvs_len()
6888 len += sizeof(struct wmi_ssid) * arg->n_ssids; in ath10k_wmi_start_scan_tlvs_len()
6891 if (arg->n_bssids) { in ath10k_wmi_start_scan_tlvs_len()
6893 len += sizeof(struct wmi_mac_addr) * arg->n_bssids; in ath10k_wmi_start_scan_tlvs_len()
6900 const struct wmi_start_scan_arg *arg) in ath10k_wmi_put_start_scan_common() argument
6906 scan_id |= arg->scan_id; in ath10k_wmi_put_start_scan_common()
6909 scan_req_id |= arg->scan_req_id; in ath10k_wmi_put_start_scan_common()
6913 cmn->vdev_id = __cpu_to_le32(arg->vdev_id); in ath10k_wmi_put_start_scan_common()
6914 cmn->scan_priority = __cpu_to_le32(arg->scan_priority); in ath10k_wmi_put_start_scan_common()
6915 cmn->notify_scan_events = __cpu_to_le32(arg->notify_scan_events); in ath10k_wmi_put_start_scan_common()
6916 cmn->dwell_time_active = __cpu_to_le32(arg->dwell_time_active); in ath10k_wmi_put_start_scan_common()
6917 cmn->dwell_time_passive = __cpu_to_le32(arg->dwell_time_passive); in ath10k_wmi_put_start_scan_common()
6918 cmn->min_rest_time = __cpu_to_le32(arg->min_rest_time); in ath10k_wmi_put_start_scan_common()
6919 cmn->max_rest_time = __cpu_to_le32(arg->max_rest_time); in ath10k_wmi_put_start_scan_common()
6920 cmn->repeat_probe_time = __cpu_to_le32(arg->repeat_probe_time); in ath10k_wmi_put_start_scan_common()
6921 cmn->probe_spacing_time = __cpu_to_le32(arg->probe_spacing_time); in ath10k_wmi_put_start_scan_common()
6922 cmn->idle_time = __cpu_to_le32(arg->idle_time); in ath10k_wmi_put_start_scan_common()
6923 cmn->max_scan_time = __cpu_to_le32(arg->max_scan_time); in ath10k_wmi_put_start_scan_common()
6924 cmn->probe_delay = __cpu_to_le32(arg->probe_delay); in ath10k_wmi_put_start_scan_common()
6925 cmn->scan_ctrl_flags = __cpu_to_le32(arg->scan_ctrl_flags); in ath10k_wmi_put_start_scan_common()
6930 const struct wmi_start_scan_arg *arg) in ath10k_wmi_put_start_scan_tlvs() argument
6939 if (arg->n_channels) { in ath10k_wmi_put_start_scan_tlvs()
6942 channels->num_chan = __cpu_to_le32(arg->n_channels); in ath10k_wmi_put_start_scan_tlvs()
6944 for (i = 0; i < arg->n_channels; i++) in ath10k_wmi_put_start_scan_tlvs()
6946 __cpu_to_le16(arg->channels[i]); in ath10k_wmi_put_start_scan_tlvs()
6949 ptr += sizeof(__le32) * arg->n_channels; in ath10k_wmi_put_start_scan_tlvs()
6952 if (arg->n_ssids) { in ath10k_wmi_put_start_scan_tlvs()
6955 ssids->num_ssids = __cpu_to_le32(arg->n_ssids); in ath10k_wmi_put_start_scan_tlvs()
6957 for (i = 0; i < arg->n_ssids; i++) { in ath10k_wmi_put_start_scan_tlvs()
6959 __cpu_to_le32(arg->ssids[i].len); in ath10k_wmi_put_start_scan_tlvs()
6961 arg->ssids[i].ssid, in ath10k_wmi_put_start_scan_tlvs()
6962 arg->ssids[i].len); in ath10k_wmi_put_start_scan_tlvs()
6966 ptr += sizeof(struct wmi_ssid) * arg->n_ssids; in ath10k_wmi_put_start_scan_tlvs()
6969 if (arg->n_bssids) { in ath10k_wmi_put_start_scan_tlvs()
6972 bssids->num_bssid = __cpu_to_le32(arg->n_bssids); in ath10k_wmi_put_start_scan_tlvs()
6974 for (i = 0; i < arg->n_bssids; i++) in ath10k_wmi_put_start_scan_tlvs()
6976 arg->bssids[i].bssid); in ath10k_wmi_put_start_scan_tlvs()
6979 ptr += sizeof(struct wmi_mac_addr) * arg->n_bssids; in ath10k_wmi_put_start_scan_tlvs()
6982 if (arg->ie_len) { in ath10k_wmi_put_start_scan_tlvs()
6985 ie->ie_len = __cpu_to_le32(arg->ie_len); in ath10k_wmi_put_start_scan_tlvs()
6986 memcpy(ie->ie_data, arg->ie, arg->ie_len); in ath10k_wmi_put_start_scan_tlvs()
6989 ptr += roundup(arg->ie_len, 4); in ath10k_wmi_put_start_scan_tlvs()
6995 const struct wmi_start_scan_arg *arg) in ath10k_wmi_op_gen_start_scan() argument
7002 ret = ath10k_wmi_start_scan_verify(arg); in ath10k_wmi_op_gen_start_scan()
7006 len = sizeof(*cmd) + ath10k_wmi_start_scan_tlvs_len(arg); in ath10k_wmi_op_gen_start_scan()
7013 ath10k_wmi_put_start_scan_common(&cmd->common, arg); in ath10k_wmi_op_gen_start_scan()
7014 ath10k_wmi_put_start_scan_tlvs(&cmd->tlvs, arg); in ath10k_wmi_op_gen_start_scan()
7024 const struct wmi_start_scan_arg *arg) in ath10k_wmi_10x_op_gen_start_scan() argument
7031 ret = ath10k_wmi_start_scan_verify(arg); in ath10k_wmi_10x_op_gen_start_scan()
7035 len = sizeof(*cmd) + ath10k_wmi_start_scan_tlvs_len(arg); in ath10k_wmi_10x_op_gen_start_scan()
7042 ath10k_wmi_put_start_scan_common(&cmd->common, arg); in ath10k_wmi_10x_op_gen_start_scan()
7043 ath10k_wmi_put_start_scan_tlvs(&cmd->tlvs, arg); in ath10k_wmi_10x_op_gen_start_scan()
7050 struct wmi_start_scan_arg *arg) in ath10k_wmi_start_scan_init() argument
7053 arg->scan_req_id = 1; in ath10k_wmi_start_scan_init()
7054 arg->scan_priority = WMI_SCAN_PRIORITY_LOW; in ath10k_wmi_start_scan_init()
7055 arg->dwell_time_active = 50; in ath10k_wmi_start_scan_init()
7056 arg->dwell_time_passive = 150; in ath10k_wmi_start_scan_init()
7057 arg->min_rest_time = 50; in ath10k_wmi_start_scan_init()
7058 arg->max_rest_time = 500; in ath10k_wmi_start_scan_init()
7059 arg->repeat_probe_time = 0; in ath10k_wmi_start_scan_init()
7060 arg->probe_spacing_time = 0; in ath10k_wmi_start_scan_init()
7061 arg->idle_time = 0; in ath10k_wmi_start_scan_init()
7062 arg->max_scan_time = 20000; in ath10k_wmi_start_scan_init()
7063 arg->probe_delay = 5; in ath10k_wmi_start_scan_init()
7064 arg->notify_scan_events = WMI_SCAN_EVENT_STARTED in ath10k_wmi_start_scan_init()
7070 arg->scan_ctrl_flags |= WMI_SCAN_CHAN_STAT_EVENT; in ath10k_wmi_start_scan_init()
7071 arg->n_bssids = 1; in ath10k_wmi_start_scan_init()
7072 arg->bssids[0].bssid = "\xFF\xFF\xFF\xFF\xFF\xFF"; in ath10k_wmi_start_scan_init()
7077 const struct wmi_stop_scan_arg *arg) in ath10k_wmi_op_gen_stop_scan() argument
7084 if (arg->req_id > 0xFFF) in ath10k_wmi_op_gen_stop_scan()
7086 if (arg->req_type == WMI_SCAN_STOP_ONE && arg->u.scan_id > 0xFFF) in ath10k_wmi_op_gen_stop_scan()
7093 scan_id = arg->u.scan_id; in ath10k_wmi_op_gen_stop_scan()
7096 req_id = arg->req_id; in ath10k_wmi_op_gen_stop_scan()
7100 cmd->req_type = __cpu_to_le32(arg->req_type); in ath10k_wmi_op_gen_stop_scan()
7101 cmd->vdev_id = __cpu_to_le32(arg->u.vdev_id); in ath10k_wmi_op_gen_stop_scan()
7107 arg->req_id, arg->req_type, arg->u.scan_id); in ath10k_wmi_op_gen_stop_scan()
7156 const struct wmi_vdev_start_request_arg *arg, in ath10k_wmi_op_gen_vdev_start() argument
7164 if (WARN_ON(arg->hidden_ssid && !arg->ssid)) in ath10k_wmi_op_gen_vdev_start()
7166 if (WARN_ON(arg->ssid_len > sizeof(cmd->ssid.ssid))) in ath10k_wmi_op_gen_vdev_start()
7178 if (arg->hidden_ssid) in ath10k_wmi_op_gen_vdev_start()
7180 if (arg->pmf_enabled) in ath10k_wmi_op_gen_vdev_start()
7184 cmd->vdev_id = __cpu_to_le32(arg->vdev_id); in ath10k_wmi_op_gen_vdev_start()
7185 cmd->disable_hw_ack = __cpu_to_le32(arg->disable_hw_ack); in ath10k_wmi_op_gen_vdev_start()
7186 cmd->beacon_interval = __cpu_to_le32(arg->bcn_intval); in ath10k_wmi_op_gen_vdev_start()
7187 cmd->dtim_period = __cpu_to_le32(arg->dtim_period); in ath10k_wmi_op_gen_vdev_start()
7189 cmd->bcn_tx_rate = __cpu_to_le32(arg->bcn_tx_rate); in ath10k_wmi_op_gen_vdev_start()
7190 cmd->bcn_tx_power = __cpu_to_le32(arg->bcn_tx_power); in ath10k_wmi_op_gen_vdev_start()
7192 if (arg->ssid) { in ath10k_wmi_op_gen_vdev_start()
7193 cmd->ssid.ssid_len = __cpu_to_le32(arg->ssid_len); in ath10k_wmi_op_gen_vdev_start()
7194 memcpy(cmd->ssid.ssid, arg->ssid, arg->ssid_len); in ath10k_wmi_op_gen_vdev_start()
7197 ath10k_wmi_put_wmi_channel(ar, &cmd->chan, &arg->channel); in ath10k_wmi_op_gen_vdev_start()
7201 cmdname, arg->vdev_id, in ath10k_wmi_op_gen_vdev_start()
7202 flags, arg->channel.freq, arg->channel.mode, in ath10k_wmi_op_gen_vdev_start()
7203 cmd->chan.flags, arg->channel.max_power); in ath10k_wmi_op_gen_vdev_start()
7296 const struct wmi_vdev_install_key_arg *arg) in ath10k_wmi_op_gen_vdev_install_key() argument
7301 if (arg->key_cipher == WMI_CIPHER_NONE && arg->key_data != NULL) in ath10k_wmi_op_gen_vdev_install_key()
7303 if (arg->key_cipher != WMI_CIPHER_NONE && arg->key_data == NULL) in ath10k_wmi_op_gen_vdev_install_key()
7306 skb = ath10k_wmi_alloc_skb(ar, sizeof(*cmd) + arg->key_len); in ath10k_wmi_op_gen_vdev_install_key()
7311 cmd->vdev_id = __cpu_to_le32(arg->vdev_id); in ath10k_wmi_op_gen_vdev_install_key()
7312 cmd->key_idx = __cpu_to_le32(arg->key_idx); in ath10k_wmi_op_gen_vdev_install_key()
7313 cmd->key_flags = __cpu_to_le32(arg->key_flags); in ath10k_wmi_op_gen_vdev_install_key()
7314 cmd->key_cipher = __cpu_to_le32(arg->key_cipher); in ath10k_wmi_op_gen_vdev_install_key()
7315 cmd->key_len = __cpu_to_le32(arg->key_len); in ath10k_wmi_op_gen_vdev_install_key()
7316 cmd->key_txmic_len = __cpu_to_le32(arg->key_txmic_len); in ath10k_wmi_op_gen_vdev_install_key()
7317 cmd->key_rxmic_len = __cpu_to_le32(arg->key_rxmic_len); in ath10k_wmi_op_gen_vdev_install_key()
7319 if (arg->macaddr) in ath10k_wmi_op_gen_vdev_install_key()
7320 ether_addr_copy(cmd->peer_macaddr.addr, arg->macaddr); in ath10k_wmi_op_gen_vdev_install_key()
7321 if (arg->key_data) in ath10k_wmi_op_gen_vdev_install_key()
7322 memcpy(cmd->key_data, arg->key_data, arg->key_len); in ath10k_wmi_op_gen_vdev_install_key()
7326 arg->key_idx, arg->key_cipher, arg->key_len); in ath10k_wmi_op_gen_vdev_install_key()
7332 const struct wmi_vdev_spectral_conf_arg *arg) in ath10k_wmi_op_gen_vdev_spectral_conf() argument
7342 cmd->vdev_id = __cpu_to_le32(arg->vdev_id); in ath10k_wmi_op_gen_vdev_spectral_conf()
7343 cmd->scan_count = __cpu_to_le32(arg->scan_count); in ath10k_wmi_op_gen_vdev_spectral_conf()
7344 cmd->scan_period = __cpu_to_le32(arg->scan_period); in ath10k_wmi_op_gen_vdev_spectral_conf()
7345 cmd->scan_priority = __cpu_to_le32(arg->scan_priority); in ath10k_wmi_op_gen_vdev_spectral_conf()
7346 cmd->scan_fft_size = __cpu_to_le32(arg->scan_fft_size); in ath10k_wmi_op_gen_vdev_spectral_conf()
7347 cmd->scan_gc_ena = __cpu_to_le32(arg->scan_gc_ena); in ath10k_wmi_op_gen_vdev_spectral_conf()
7348 cmd->scan_restart_ena = __cpu_to_le32(arg->scan_restart_ena); in ath10k_wmi_op_gen_vdev_spectral_conf()
7349 cmd->scan_noise_floor_ref = __cpu_to_le32(arg->scan_noise_floor_ref); in ath10k_wmi_op_gen_vdev_spectral_conf()
7350 cmd->scan_init_delay = __cpu_to_le32(arg->scan_init_delay); in ath10k_wmi_op_gen_vdev_spectral_conf()
7351 cmd->scan_nb_tone_thr = __cpu_to_le32(arg->scan_nb_tone_thr); in ath10k_wmi_op_gen_vdev_spectral_conf()
7352 cmd->scan_str_bin_thr = __cpu_to_le32(arg->scan_str_bin_thr); in ath10k_wmi_op_gen_vdev_spectral_conf()
7353 cmd->scan_wb_rpt_mode = __cpu_to_le32(arg->scan_wb_rpt_mode); in ath10k_wmi_op_gen_vdev_spectral_conf()
7354 cmd->scan_rssi_rpt_mode = __cpu_to_le32(arg->scan_rssi_rpt_mode); in ath10k_wmi_op_gen_vdev_spectral_conf()
7355 cmd->scan_rssi_thr = __cpu_to_le32(arg->scan_rssi_thr); in ath10k_wmi_op_gen_vdev_spectral_conf()
7356 cmd->scan_pwr_format = __cpu_to_le32(arg->scan_pwr_format); in ath10k_wmi_op_gen_vdev_spectral_conf()
7357 cmd->scan_rpt_mode = __cpu_to_le32(arg->scan_rpt_mode); in ath10k_wmi_op_gen_vdev_spectral_conf()
7358 cmd->scan_bin_scale = __cpu_to_le32(arg->scan_bin_scale); in ath10k_wmi_op_gen_vdev_spectral_conf()
7359 cmd->scan_dbm_adj = __cpu_to_le32(arg->scan_dbm_adj); in ath10k_wmi_op_gen_vdev_spectral_conf()
7360 cmd->scan_chn_mask = __cpu_to_le32(arg->scan_chn_mask); in ath10k_wmi_op_gen_vdev_spectral_conf()
7547 const struct wmi_scan_chan_list_arg *arg) in ath10k_wmi_op_gen_scan_chan_list() argument
7555 skb = ath10k_wmi_alloc_skb(ar, struct_size(cmd, chan_info, arg->n_channels)); in ath10k_wmi_op_gen_scan_chan_list()
7560 cmd->num_scan_chans = __cpu_to_le32(arg->n_channels); in ath10k_wmi_op_gen_scan_chan_list()
7562 for (i = 0; i < arg->n_channels; i++) { in ath10k_wmi_op_gen_scan_chan_list()
7563 ch = &arg->channels[i]; in ath10k_wmi_op_gen_scan_chan_list()
7574 const struct wmi_peer_assoc_complete_arg *arg) in ath10k_wmi_peer_assoc_fill() argument
7578 cmd->vdev_id = __cpu_to_le32(arg->vdev_id); in ath10k_wmi_peer_assoc_fill()
7579 cmd->peer_new_assoc = __cpu_to_le32(arg->peer_reassoc ? 0 : 1); in ath10k_wmi_peer_assoc_fill()
7580 cmd->peer_associd = __cpu_to_le32(arg->peer_aid); in ath10k_wmi_peer_assoc_fill()
7581 cmd->peer_flags = __cpu_to_le32(arg->peer_flags); in ath10k_wmi_peer_assoc_fill()
7582 cmd->peer_caps = __cpu_to_le32(arg->peer_caps); in ath10k_wmi_peer_assoc_fill()
7583 cmd->peer_listen_intval = __cpu_to_le32(arg->peer_listen_intval); in ath10k_wmi_peer_assoc_fill()
7584 cmd->peer_ht_caps = __cpu_to_le32(arg->peer_ht_caps); in ath10k_wmi_peer_assoc_fill()
7585 cmd->peer_max_mpdu = __cpu_to_le32(arg->peer_max_mpdu); in ath10k_wmi_peer_assoc_fill()
7586 cmd->peer_mpdu_density = __cpu_to_le32(arg->peer_mpdu_density); in ath10k_wmi_peer_assoc_fill()
7587 cmd->peer_rate_caps = __cpu_to_le32(arg->peer_rate_caps); in ath10k_wmi_peer_assoc_fill()
7588 cmd->peer_nss = __cpu_to_le32(arg->peer_num_spatial_streams); in ath10k_wmi_peer_assoc_fill()
7589 cmd->peer_vht_caps = __cpu_to_le32(arg->peer_vht_caps); in ath10k_wmi_peer_assoc_fill()
7590 cmd->peer_phymode = __cpu_to_le32(arg->peer_phymode); in ath10k_wmi_peer_assoc_fill()
7592 ether_addr_copy(cmd->peer_macaddr.addr, arg->addr); in ath10k_wmi_peer_assoc_fill()
7595 __cpu_to_le32(arg->peer_legacy_rates.num_rates); in ath10k_wmi_peer_assoc_fill()
7596 memcpy(cmd->peer_legacy_rates.rates, arg->peer_legacy_rates.rates, in ath10k_wmi_peer_assoc_fill()
7597 arg->peer_legacy_rates.num_rates); in ath10k_wmi_peer_assoc_fill()
7600 __cpu_to_le32(arg->peer_ht_rates.num_rates); in ath10k_wmi_peer_assoc_fill()
7601 memcpy(cmd->peer_ht_rates.rates, arg->peer_ht_rates.rates, in ath10k_wmi_peer_assoc_fill()
7602 arg->peer_ht_rates.num_rates); in ath10k_wmi_peer_assoc_fill()
7605 __cpu_to_le32(arg->peer_vht_rates.rx_max_rate); in ath10k_wmi_peer_assoc_fill()
7607 __cpu_to_le32(arg->peer_vht_rates.rx_mcs_set); in ath10k_wmi_peer_assoc_fill()
7609 __cpu_to_le32(arg->peer_vht_rates.tx_max_rate); in ath10k_wmi_peer_assoc_fill()
7611 __cpu_to_le32(arg->peer_vht_rates.tx_mcs_set); in ath10k_wmi_peer_assoc_fill()
7616 const struct wmi_peer_assoc_complete_arg *arg) in ath10k_wmi_peer_assoc_fill_main() argument
7620 ath10k_wmi_peer_assoc_fill(ar, buf, arg); in ath10k_wmi_peer_assoc_fill_main()
7626 const struct wmi_peer_assoc_complete_arg *arg) in ath10k_wmi_peer_assoc_fill_10_1() argument
7628 ath10k_wmi_peer_assoc_fill(ar, buf, arg); in ath10k_wmi_peer_assoc_fill_10_1()
7633 const struct wmi_peer_assoc_complete_arg *arg) in ath10k_wmi_peer_assoc_fill_10_2() argument
7646 ath10k_wmi_peer_assoc_fill(ar, buf, arg); in ath10k_wmi_peer_assoc_fill_10_2()
7652 const struct wmi_peer_assoc_complete_arg *arg) in ath10k_wmi_peer_assoc_fill_10_4() argument
7656 ath10k_wmi_peer_assoc_fill_10_2(ar, buf, arg); in ath10k_wmi_peer_assoc_fill_10_4()
7658 __cpu_to_le32(arg->peer_bw_rxnss_override); in ath10k_wmi_peer_assoc_fill_10_4()
7662 ath10k_wmi_peer_assoc_check_arg(const struct wmi_peer_assoc_complete_arg *arg) in ath10k_wmi_peer_assoc_check_arg() argument
7664 if (arg->peer_mpdu_density > 16) in ath10k_wmi_peer_assoc_check_arg()
7666 if (arg->peer_legacy_rates.num_rates > MAX_SUPPORTED_RATES) in ath10k_wmi_peer_assoc_check_arg()
7668 if (arg->peer_ht_rates.num_rates > MAX_SUPPORTED_RATES) in ath10k_wmi_peer_assoc_check_arg()
7676 const struct wmi_peer_assoc_complete_arg *arg) in ath10k_wmi_op_gen_peer_assoc() argument
7682 ret = ath10k_wmi_peer_assoc_check_arg(arg); in ath10k_wmi_op_gen_peer_assoc()
7690 ath10k_wmi_peer_assoc_fill_main(ar, skb->data, arg); in ath10k_wmi_op_gen_peer_assoc()
7694 arg->vdev_id, arg->addr, in ath10k_wmi_op_gen_peer_assoc()
7695 arg->peer_reassoc ? "reassociate" : "new"); in ath10k_wmi_op_gen_peer_assoc()
7701 const struct wmi_peer_assoc_complete_arg *arg) in ath10k_wmi_10_1_op_gen_peer_assoc() argument
7707 ret = ath10k_wmi_peer_assoc_check_arg(arg); in ath10k_wmi_10_1_op_gen_peer_assoc()
7715 ath10k_wmi_peer_assoc_fill_10_1(ar, skb->data, arg); in ath10k_wmi_10_1_op_gen_peer_assoc()
7719 arg->vdev_id, arg->addr, in ath10k_wmi_10_1_op_gen_peer_assoc()
7720 arg->peer_reassoc ? "reassociate" : "new"); in ath10k_wmi_10_1_op_gen_peer_assoc()
7726 const struct wmi_peer_assoc_complete_arg *arg) in ath10k_wmi_10_2_op_gen_peer_assoc() argument
7732 ret = ath10k_wmi_peer_assoc_check_arg(arg); in ath10k_wmi_10_2_op_gen_peer_assoc()
7740 ath10k_wmi_peer_assoc_fill_10_2(ar, skb->data, arg); in ath10k_wmi_10_2_op_gen_peer_assoc()
7744 arg->vdev_id, arg->addr, in ath10k_wmi_10_2_op_gen_peer_assoc()
7745 arg->peer_reassoc ? "reassociate" : "new"); in ath10k_wmi_10_2_op_gen_peer_assoc()
7751 const struct wmi_peer_assoc_complete_arg *arg) in ath10k_wmi_10_4_op_gen_peer_assoc() argument
7757 ret = ath10k_wmi_peer_assoc_check_arg(arg); in ath10k_wmi_10_4_op_gen_peer_assoc()
7765 ath10k_wmi_peer_assoc_fill_10_4(ar, skb->data, arg); in ath10k_wmi_10_4_op_gen_peer_assoc()
7769 arg->vdev_id, arg->addr, in ath10k_wmi_10_4_op_gen_peer_assoc()
7770 arg->peer_reassoc ? "reassociate" : "new"); in ath10k_wmi_10_4_op_gen_peer_assoc()
7844 const struct wmi_wmm_params_arg *arg) in ath10k_wmi_set_wmm_param() argument
7846 params->cwmin = __cpu_to_le32(arg->cwmin); in ath10k_wmi_set_wmm_param()
7847 params->cwmax = __cpu_to_le32(arg->cwmax); in ath10k_wmi_set_wmm_param()
7848 params->aifs = __cpu_to_le32(arg->aifs); in ath10k_wmi_set_wmm_param()
7849 params->txop = __cpu_to_le32(arg->txop); in ath10k_wmi_set_wmm_param()
7850 params->acm = __cpu_to_le32(arg->acm); in ath10k_wmi_set_wmm_param()
7851 params->no_ack = __cpu_to_le32(arg->no_ack); in ath10k_wmi_set_wmm_param()
7856 const struct wmi_wmm_params_all_arg *arg) in ath10k_wmi_op_gen_pdev_set_wmm() argument
7866 ath10k_wmi_set_wmm_param(&cmd->ac_be, &arg->ac_be); in ath10k_wmi_op_gen_pdev_set_wmm()
7867 ath10k_wmi_set_wmm_param(&cmd->ac_bk, &arg->ac_bk); in ath10k_wmi_op_gen_pdev_set_wmm()
7868 ath10k_wmi_set_wmm_param(&cmd->ac_vi, &arg->ac_vi); in ath10k_wmi_op_gen_pdev_set_wmm()
7869 ath10k_wmi_set_wmm_param(&cmd->ac_vo, &arg->ac_vo); in ath10k_wmi_op_gen_pdev_set_wmm()
8921 const struct wmi_tdls_peer_update_cmd_arg *arg, in ath10k_wmi_10_4_gen_tdls_peer_update() argument
8945 cmd->vdev_id = __cpu_to_le32(arg->vdev_id); in ath10k_wmi_10_4_gen_tdls_peer_update()
8946 ether_addr_copy(cmd->peer_macaddr.addr, arg->addr); in ath10k_wmi_10_4_gen_tdls_peer_update()
8947 cmd->peer_state = __cpu_to_le32(arg->peer_state); in ath10k_wmi_10_4_gen_tdls_peer_update()
8975 arg->vdev_id, arg->peer_state, cap->peer_chan_len); in ath10k_wmi_10_4_gen_tdls_peer_update()
8981 const struct ath10k_radar_found_info *arg) in ath10k_wmi_10_4_gen_radar_found() argument
8991 cmd->pri_min = __cpu_to_le32(arg->pri_min); in ath10k_wmi_10_4_gen_radar_found()
8992 cmd->pri_max = __cpu_to_le32(arg->pri_max); in ath10k_wmi_10_4_gen_radar_found()
8993 cmd->width_min = __cpu_to_le32(arg->width_min); in ath10k_wmi_10_4_gen_radar_found()
8994 cmd->width_max = __cpu_to_le32(arg->width_max); in ath10k_wmi_10_4_gen_radar_found()
8995 cmd->sidx_min = __cpu_to_le32(arg->sidx_min); in ath10k_wmi_10_4_gen_radar_found()
8996 cmd->sidx_max = __cpu_to_le32(arg->sidx_max); in ath10k_wmi_10_4_gen_radar_found()
9000 arg->pri_min, arg->pri_max, arg->width_min, in ath10k_wmi_10_4_gen_radar_found()
9001 arg->width_max, arg->sidx_min, arg->sidx_max); in ath10k_wmi_10_4_gen_radar_found()
9007 const struct wmi_per_peer_per_tid_cfg_arg *arg) in ath10k_wmi_10_4_gen_per_peer_per_tid_cfg() argument
9019 cmd->vdev_id = cpu_to_le32(arg->vdev_id); in ath10k_wmi_10_4_gen_per_peer_per_tid_cfg()
9020 ether_addr_copy(cmd->peer_macaddr.addr, arg->peer_macaddr.addr); in ath10k_wmi_10_4_gen_per_peer_per_tid_cfg()
9021 cmd->tid = cpu_to_le32(arg->tid); in ath10k_wmi_10_4_gen_per_peer_per_tid_cfg()
9022 cmd->ack_policy = cpu_to_le32(arg->ack_policy); in ath10k_wmi_10_4_gen_per_peer_per_tid_cfg()
9023 cmd->aggr_control = cpu_to_le32(arg->aggr_control); in ath10k_wmi_10_4_gen_per_peer_per_tid_cfg()
9024 cmd->rate_control = cpu_to_le32(arg->rate_ctrl); in ath10k_wmi_10_4_gen_per_peer_per_tid_cfg()
9025 cmd->retry_count = cpu_to_le32(arg->retry_count); in ath10k_wmi_10_4_gen_per_peer_per_tid_cfg()
9026 cmd->rcode_flags = cpu_to_le32(arg->rcode_flags); in ath10k_wmi_10_4_gen_per_peer_per_tid_cfg()
9027 cmd->ext_tid_cfg_bitmap = cpu_to_le32(arg->ext_tid_cfg_bitmap); in ath10k_wmi_10_4_gen_per_peer_per_tid_cfg()
9028 cmd->rtscts_ctrl = cpu_to_le32(arg->rtscts_ctrl); in ath10k_wmi_10_4_gen_per_peer_per_tid_cfg()
9032 arg->tid, arg->vdev_id, arg->ack_policy, arg->aggr_control, in ath10k_wmi_10_4_gen_per_peer_per_tid_cfg()
9033 arg->rate_ctrl, arg->rcode_flags, arg->retry_count, in ath10k_wmi_10_4_gen_per_peer_per_tid_cfg()
9034 arg->rtscts_ctrl, arg->ext_tid_cfg_bitmap, arg->peer_macaddr.addr); in ath10k_wmi_10_4_gen_per_peer_per_tid_cfg()
9082 const struct wmi_bb_timing_cfg_arg *arg) in ath10k_wmi_10_2_4_op_gen_bb_timing() argument
9092 cmd->bb_tx_timing = __cpu_to_le32(arg->bb_tx_timing); in ath10k_wmi_10_2_4_op_gen_bb_timing()
9093 cmd->bb_xpa_timing = __cpu_to_le32(arg->bb_xpa_timing); in ath10k_wmi_10_2_4_op_gen_bb_timing()
9097 arg->bb_tx_timing, arg->bb_xpa_timing); in ath10k_wmi_10_2_4_op_gen_bb_timing()