Lines Matching refs:wmi
27 static int ath6kl_wmi_sync_point(struct wmi *wmi, u8 if_idx);
123 void ath6kl_wmi_set_control_ep(struct wmi *wmi, enum htc_endpoint_id ep_id) in ath6kl_wmi_set_control_ep() argument
128 wmi->ep_id = ep_id; in ath6kl_wmi_set_control_ep()
131 enum htc_endpoint_id ath6kl_wmi_get_control_ep(struct wmi *wmi) in ath6kl_wmi_get_control_ep() argument
133 return wmi->ep_id; in ath6kl_wmi_get_control_ep()
160 int ath6kl_wmi_dix_2_dot3(struct wmi *wmi, struct sk_buff *skb) in ath6kl_wmi_dix_2_dot3() argument
206 static int ath6kl_wmi_meta_add(struct wmi *wmi, struct sk_buff *skb, in ath6kl_wmi_meta_add() argument
234 int ath6kl_wmi_data_hdr_add(struct wmi *wmi, struct sk_buff *skb, in ath6kl_wmi_data_hdr_add() argument
242 if (WARN_ON(skb == NULL || (if_idx > wmi->parent_dev->vif_max - 1))) in ath6kl_wmi_data_hdr_add()
246 ret = ath6kl_wmi_meta_add(wmi, skb, &meta_ver, tx_meta_info); in ath6kl_wmi_data_hdr_add()
298 int ath6kl_wmi_implicit_create_pstream(struct wmi *wmi, u8 if_idx, in ath6kl_wmi_implicit_create_pstream() argument
359 if ((wmi->traffic_class == WMM_AC_VI) && in ath6kl_wmi_implicit_create_pstream()
368 spin_lock_bh(&wmi->lock); in ath6kl_wmi_implicit_create_pstream()
369 stream_exist = wmi->fat_pipe_exist; in ath6kl_wmi_implicit_create_pstream()
370 spin_unlock_bh(&wmi->lock); in ath6kl_wmi_implicit_create_pstream()
380 ath6kl_wmi_create_pstream_cmd(wmi, if_idx, &cmd); in ath6kl_wmi_implicit_create_pstream()
388 int ath6kl_wmi_dot11_hdr_remove(struct wmi *wmi, struct sk_buff *skb) in ath6kl_wmi_dot11_hdr_remove() argument
503 static int ath6kl_wmi_remain_on_chnl_event_rx(struct wmi *wmi, u8 *datap, in ath6kl_wmi_remain_on_chnl_event_rx() argument
510 struct ath6kl *ar = wmi->parent_dev; in ath6kl_wmi_remain_on_chnl_event_rx()
535 static int ath6kl_wmi_cancel_remain_on_chnl_event_rx(struct wmi *wmi, in ath6kl_wmi_cancel_remain_on_chnl_event_rx() argument
543 struct ath6kl *ar = wmi->parent_dev; in ath6kl_wmi_cancel_remain_on_chnl_event_rx()
573 static int ath6kl_wmi_tx_status_event_rx(struct wmi *wmi, u8 *datap, int len, in ath6kl_wmi_tx_status_event_rx() argument
586 if (wmi->last_mgmt_tx_frame) { in ath6kl_wmi_tx_status_event_rx()
588 wmi->last_mgmt_tx_frame, in ath6kl_wmi_tx_status_event_rx()
589 wmi->last_mgmt_tx_frame_len, in ath6kl_wmi_tx_status_event_rx()
591 kfree(wmi->last_mgmt_tx_frame); in ath6kl_wmi_tx_status_event_rx()
592 wmi->last_mgmt_tx_frame = NULL; in ath6kl_wmi_tx_status_event_rx()
593 wmi->last_mgmt_tx_frame_len = 0; in ath6kl_wmi_tx_status_event_rx()
599 static int ath6kl_wmi_rx_probe_req_event_rx(struct wmi *wmi, u8 *datap, int len, in ath6kl_wmi_rx_probe_req_event_rx() argument
642 static int ath6kl_wmi_rx_action_event_rx(struct wmi *wmi, u8 *datap, int len, in ath6kl_wmi_rx_action_event_rx() argument
726 static int ath6kl_wmi_simple_cmd(struct wmi *wmi, u8 if_idx, in ath6kl_wmi_simple_cmd() argument
736 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, cmd_id, NO_SYNC_WMIFLAG); in ath6kl_wmi_simple_cmd()
741 static int ath6kl_wmi_ready_event_rx(struct wmi *wmi, u8 *datap, int len) in ath6kl_wmi_ready_event_rx() argument
748 ath6kl_ready_event(wmi->parent_dev, ev->mac_addr, in ath6kl_wmi_ready_event_rx()
761 int ath6kl_wmi_set_roam_lrssi_cmd(struct wmi *wmi, u8 lrssi) in ath6kl_wmi_set_roam_lrssi_cmd() argument
779 ath6kl_wmi_cmd_send(wmi, 0, skb, WMI_SET_ROAM_CTRL_CMDID, in ath6kl_wmi_set_roam_lrssi_cmd()
785 int ath6kl_wmi_force_roam_cmd(struct wmi *wmi, const u8 *bssid) in ath6kl_wmi_force_roam_cmd() argument
800 return ath6kl_wmi_cmd_send(wmi, 0, skb, WMI_SET_ROAM_CTRL_CMDID, in ath6kl_wmi_force_roam_cmd()
804 int ath6kl_wmi_ap_set_beacon_intvl_cmd(struct wmi *wmi, u8 if_idx, in ath6kl_wmi_ap_set_beacon_intvl_cmd() argument
817 return ath6kl_wmi_cmd_send(wmi, if_idx, skb, in ath6kl_wmi_ap_set_beacon_intvl_cmd()
821 int ath6kl_wmi_ap_set_dtim_cmd(struct wmi *wmi, u8 if_idx, u32 dtim_period) in ath6kl_wmi_ap_set_dtim_cmd() argument
833 return ath6kl_wmi_cmd_send(wmi, if_idx, skb, in ath6kl_wmi_ap_set_dtim_cmd()
837 int ath6kl_wmi_set_roam_mode_cmd(struct wmi *wmi, enum wmi_roam_mode mode) in ath6kl_wmi_set_roam_mode_cmd() argument
852 return ath6kl_wmi_cmd_send(wmi, 0, skb, WMI_SET_ROAM_CTRL_CMDID, in ath6kl_wmi_set_roam_mode_cmd()
856 static int ath6kl_wmi_connect_event_rx(struct wmi *wmi, u8 *datap, int len, in ath6kl_wmi_connect_event_rx() argument
923 wmi->is_wmm_enabled = true; in ath6kl_wmi_connect_event_rx()
928 if (wmi->is_wmm_enabled) in ath6kl_wmi_connect_event_rx()
987 static void ath6kl_wmi_regdomain_event(struct wmi *wmi, u8 *datap, int len) in ath6kl_wmi_regdomain_event() argument
1011 if (country && wmi->parent_dev->wiphy_registered) { in ath6kl_wmi_regdomain_event()
1015 regulatory_hint(wmi->parent_dev->wiphy, alpha2); in ath6kl_wmi_regdomain_event()
1022 static int ath6kl_wmi_disconnect_event_rx(struct wmi *wmi, u8 *datap, int len, in ath6kl_wmi_disconnect_event_rx() argument
1026 wmi->traffic_class = 100; in ath6kl_wmi_disconnect_event_rx()
1038 wmi->is_wmm_enabled = false; in ath6kl_wmi_disconnect_event_rx()
1047 static int ath6kl_wmi_peer_node_event_rx(struct wmi *wmi, u8 *datap, int len) in ath6kl_wmi_peer_node_event_rx() argument
1066 static int ath6kl_wmi_tkip_micerr_event_rx(struct wmi *wmi, u8 *datap, int len, in ath6kl_wmi_tkip_micerr_event_rx() argument
1088 static int ath6kl_wmi_bssinfo_event_rx(struct wmi *wmi, u8 *datap, int len, in ath6kl_wmi_bssinfo_event_rx() argument
1094 struct ath6kl *ar = wmi->parent_dev; in ath6kl_wmi_bssinfo_event_rx()
1117 ath6kl_wmi_bssfilter_cmd(ar->wmi, vif->fw_vif_idx, in ath6kl_wmi_bssinfo_event_rx()
1172 static int ath6kl_wmi_pstream_timeout_event_rx(struct wmi *wmi, u8 *datap, in ath6kl_wmi_pstream_timeout_event_rx() argument
1188 spin_lock_bh(&wmi->lock); in ath6kl_wmi_pstream_timeout_event_rx()
1189 wmi->stream_exist_for_ac[ev->traffic_class] = 0; in ath6kl_wmi_pstream_timeout_event_rx()
1190 wmi->fat_pipe_exist &= ~(1 << ev->traffic_class); in ath6kl_wmi_pstream_timeout_event_rx()
1191 spin_unlock_bh(&wmi->lock); in ath6kl_wmi_pstream_timeout_event_rx()
1194 ath6kl_indicate_tx_activity(wmi->parent_dev, ev->traffic_class, false); in ath6kl_wmi_pstream_timeout_event_rx()
1199 static int ath6kl_wmi_bitrate_reply_rx(struct wmi *wmi, u8 *datap, int len) in ath6kl_wmi_bitrate_reply_rx() argument
1223 ath6kl_wakeup_event(wmi->parent_dev); in ath6kl_wmi_bitrate_reply_rx()
1228 static int ath6kl_wmi_test_rx(struct wmi *wmi, u8 *datap, int len) in ath6kl_wmi_test_rx() argument
1230 ath6kl_tm_rx_event(wmi->parent_dev, datap, len); in ath6kl_wmi_test_rx()
1235 static int ath6kl_wmi_ratemask_reply_rx(struct wmi *wmi, u8 *datap, int len) in ath6kl_wmi_ratemask_reply_rx() argument
1240 ath6kl_wakeup_event(wmi->parent_dev); in ath6kl_wmi_ratemask_reply_rx()
1245 static int ath6kl_wmi_ch_list_reply_rx(struct wmi *wmi, u8 *datap, int len) in ath6kl_wmi_ch_list_reply_rx() argument
1250 ath6kl_wakeup_event(wmi->parent_dev); in ath6kl_wmi_ch_list_reply_rx()
1255 static int ath6kl_wmi_tx_pwr_reply_rx(struct wmi *wmi, u8 *datap, int len) in ath6kl_wmi_tx_pwr_reply_rx() argument
1263 ath6kl_txpwr_rx_evt(wmi->parent_dev, reply->dbM); in ath6kl_wmi_tx_pwr_reply_rx()
1268 static int ath6kl_wmi_keepalive_reply_rx(struct wmi *wmi, u8 *datap, int len) in ath6kl_wmi_keepalive_reply_rx() argument
1273 ath6kl_wakeup_event(wmi->parent_dev); in ath6kl_wmi_keepalive_reply_rx()
1278 static int ath6kl_wmi_scan_complete_rx(struct wmi *wmi, u8 *datap, int len, in ath6kl_wmi_scan_complete_rx() argument
1286 wmi->is_probe_ssid = false; in ath6kl_wmi_scan_complete_rx()
1291 static int ath6kl_wmi_neighbor_report_event_rx(struct wmi *wmi, u8 *datap, in ath6kl_wmi_neighbor_report_event_rx() argument
1328 static int ath6kl_wmi_error_event_rx(struct wmi *wmi, u8 *datap, int len) in ath6kl_wmi_error_event_rx() argument
1352 static int ath6kl_wmi_stats_event_rx(struct wmi *wmi, u8 *datap, int len, in ath6kl_wmi_stats_event_rx() argument
1396 static int ath6kl_wmi_send_rssi_threshold_params(struct wmi *wmi, in ath6kl_wmi_send_rssi_threshold_params() argument
1409 return ath6kl_wmi_cmd_send(wmi, 0, skb, WMI_RSSI_THRESHOLD_PARAMS_CMDID, in ath6kl_wmi_send_rssi_threshold_params()
1413 static int ath6kl_wmi_rssi_threshold_event_rx(struct wmi *wmi, u8 *datap, in ath6kl_wmi_rssi_threshold_event_rx() argument
1431 sq_thresh = &wmi->sq_threshld[SIGNAL_QUALITY_METRICS_RSSI]; in ath6kl_wmi_rssi_threshold_event_rx()
1500 ret = ath6kl_wmi_send_rssi_threshold_params(wmi, &cmd); in ath6kl_wmi_rssi_threshold_event_rx()
1509 static int ath6kl_wmi_cac_event_rx(struct wmi *wmi, u8 *datap, int len, in ath6kl_wmi_cac_event_rx() argument
1530 ath6kl_wmi_delete_pstream_cmd(wmi, vif->fw_vif_idx, in ath6kl_wmi_cac_event_rx()
1537 spin_lock_bh(&wmi->lock); in ath6kl_wmi_cac_event_rx()
1538 active_tsids = wmi->stream_exist_for_ac[reply->ac]; in ath6kl_wmi_cac_event_rx()
1539 spin_unlock_bh(&wmi->lock); in ath6kl_wmi_cac_event_rx()
1546 ath6kl_wmi_delete_pstream_cmd(wmi, vif->fw_vif_idx, in ath6kl_wmi_cac_event_rx()
1560 spin_lock_bh(&wmi->lock); in ath6kl_wmi_cac_event_rx()
1561 wmi->stream_exist_for_ac[reply->ac] &= ~(1 << ts_id); in ath6kl_wmi_cac_event_rx()
1562 active_tsids = wmi->stream_exist_for_ac[reply->ac]; in ath6kl_wmi_cac_event_rx()
1563 spin_unlock_bh(&wmi->lock); in ath6kl_wmi_cac_event_rx()
1569 ath6kl_indicate_tx_activity(wmi->parent_dev, reply->ac, in ath6kl_wmi_cac_event_rx()
1571 wmi->fat_pipe_exist &= ~(1 << reply->ac); in ath6kl_wmi_cac_event_rx()
1578 static int ath6kl_wmi_txe_notify_event_rx(struct wmi *wmi, u8 *datap, int len, in ath6kl_wmi_txe_notify_event_rx() argument
1603 int ath6kl_wmi_set_txe_notify(struct wmi *wmi, u8 idx, in ath6kl_wmi_set_txe_notify() argument
1618 return ath6kl_wmi_cmd_send(wmi, idx, skb, WMI_SET_TXE_NOTIFY_CMDID, in ath6kl_wmi_set_txe_notify()
1622 int ath6kl_wmi_set_rssi_filter_cmd(struct wmi *wmi, u8 if_idx, s8 rssi) in ath6kl_wmi_set_rssi_filter_cmd() argument
1635 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SET_RSSI_FILTER_CMDID, in ath6kl_wmi_set_rssi_filter_cmd()
1640 static int ath6kl_wmi_send_snr_threshold_params(struct wmi *wmi, in ath6kl_wmi_send_snr_threshold_params() argument
1653 return ath6kl_wmi_cmd_send(wmi, 0, skb, WMI_SNR_THRESHOLD_PARAMS_CMDID, in ath6kl_wmi_send_snr_threshold_params()
1657 static int ath6kl_wmi_snr_threshold_event_rx(struct wmi *wmi, u8 *datap, in ath6kl_wmi_snr_threshold_event_rx() argument
1676 sq_thresh = &wmi->sq_threshld[SIGNAL_QUALITY_METRICS_SNR]; in ath6kl_wmi_snr_threshold_event_rx()
1738 ret = ath6kl_wmi_send_snr_threshold_params(wmi, &cmd); in ath6kl_wmi_snr_threshold_event_rx()
1747 static int ath6kl_wmi_aplist_event_rx(struct wmi *wmi, u8 *datap, int len) in ath6kl_wmi_aplist_event_rx() argument
1778 int ath6kl_wmi_cmd_send(struct wmi *wmi, u8 if_idx, struct sk_buff *skb, in ath6kl_wmi_cmd_send() argument
1782 enum htc_endpoint_id ep_id = wmi->ep_id; in ath6kl_wmi_cmd_send()
1787 (if_idx > (wmi->parent_dev->vif_max - 1)))) { in ath6kl_wmi_cmd_send()
1808 ath6kl_wmi_sync_point(wmi, if_idx); in ath6kl_wmi_cmd_send()
1820 ret = ath6kl_wmi_data_hdr_add(wmi, skb, OPT_MSGTYPE, in ath6kl_wmi_cmd_send()
1826 ep_id = ath6kl_ac2_endpoint_id(wmi->parent_dev, WMM_AC_BE); in ath6kl_wmi_cmd_send()
1829 ath6kl_control_tx(wmi->parent_dev, skb, ep_id); in ath6kl_wmi_cmd_send()
1837 ath6kl_wmi_sync_point(wmi, if_idx); in ath6kl_wmi_cmd_send()
1843 int ath6kl_wmi_connect_cmd(struct wmi *wmi, u8 if_idx, in ath6kl_wmi_connect_cmd() argument
1865 wmi->traffic_class = 100; in ath6kl_wmi_connect_cmd()
1897 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_CONNECT_CMDID, in ath6kl_wmi_connect_cmd()
1903 int ath6kl_wmi_reconnect_cmd(struct wmi *wmi, u8 if_idx, u8 *bssid, in ath6kl_wmi_reconnect_cmd() argument
1913 wmi->traffic_class = 100; in ath6kl_wmi_reconnect_cmd()
1925 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_RECONNECT_CMDID, in ath6kl_wmi_reconnect_cmd()
1931 int ath6kl_wmi_disconnect_cmd(struct wmi *wmi, u8 if_idx) in ath6kl_wmi_disconnect_cmd() argument
1937 wmi->traffic_class = 100; in ath6kl_wmi_disconnect_cmd()
1940 ret = ath6kl_wmi_simple_cmd(wmi, if_idx, WMI_DISCONNECT_CMDID); in ath6kl_wmi_disconnect_cmd()
1949 static int ath6kl_wmi_startscan_cmd(struct wmi *wmi, u8 if_idx, in ath6kl_wmi_startscan_cmd() argument
1987 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_START_SCAN_CMDID, in ath6kl_wmi_startscan_cmd()
1998 int ath6kl_wmi_beginscan_cmd(struct wmi *wmi, u8 if_idx, in ath6kl_wmi_beginscan_cmd() argument
2009 struct ath6kl *ar = wmi->parent_dev; in ath6kl_wmi_beginscan_cmd()
2015 return ath6kl_wmi_startscan_cmd(wmi, if_idx, in ath6kl_wmi_beginscan_cmd()
2071 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_BEGIN_SCAN_CMDID, in ath6kl_wmi_beginscan_cmd()
2077 int ath6kl_wmi_enable_sched_scan_cmd(struct wmi *wmi, u8 if_idx, bool enable) in ath6kl_wmi_enable_sched_scan_cmd() argument
2092 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, in ath6kl_wmi_enable_sched_scan_cmd()
2098 int ath6kl_wmi_scanparams_cmd(struct wmi *wmi, u8 if_idx, in ath6kl_wmi_scanparams_cmd() argument
2126 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SET_SCAN_PARAMS_CMDID, in ath6kl_wmi_scanparams_cmd()
2131 int ath6kl_wmi_bssfilter_cmd(struct wmi *wmi, u8 if_idx, u8 filter, u32 ie_mask) in ath6kl_wmi_bssfilter_cmd() argument
2148 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SET_BSS_FILTER_CMDID, in ath6kl_wmi_bssfilter_cmd()
2153 int ath6kl_wmi_probedssid_cmd(struct wmi *wmi, u8 if_idx, u8 index, u8 flag, in ath6kl_wmi_probedssid_cmd() argument
2173 wmi->is_probe_ssid = true; in ath6kl_wmi_probedssid_cmd()
2185 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SET_PROBED_SSID_CMDID, in ath6kl_wmi_probedssid_cmd()
2190 int ath6kl_wmi_listeninterval_cmd(struct wmi *wmi, u8 if_idx, in ath6kl_wmi_listeninterval_cmd() argument
2206 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SET_LISTEN_INT_CMDID, in ath6kl_wmi_listeninterval_cmd()
2211 int ath6kl_wmi_bmisstime_cmd(struct wmi *wmi, u8 if_idx, in ath6kl_wmi_bmisstime_cmd() argument
2226 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SET_BMISS_TIME_CMDID, in ath6kl_wmi_bmisstime_cmd()
2231 int ath6kl_wmi_powermode_cmd(struct wmi *wmi, u8 if_idx, u8 pwr_mode) in ath6kl_wmi_powermode_cmd() argument
2243 wmi->pwr_mode = pwr_mode; in ath6kl_wmi_powermode_cmd()
2245 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SET_POWER_MODE_CMDID, in ath6kl_wmi_powermode_cmd()
2250 int ath6kl_wmi_pmparams_cmd(struct wmi *wmi, u8 if_idx, u16 idle_period, in ath6kl_wmi_pmparams_cmd() argument
2271 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SET_POWER_PARAMS_CMDID, in ath6kl_wmi_pmparams_cmd()
2276 int ath6kl_wmi_disctimeout_cmd(struct wmi *wmi, u8 if_idx, u8 timeout) in ath6kl_wmi_disctimeout_cmd() argument
2289 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SET_DISC_TIMEOUT_CMDID, in ath6kl_wmi_disctimeout_cmd()
2293 ath6kl_debug_set_disconnect_timeout(wmi->parent_dev, timeout); in ath6kl_wmi_disctimeout_cmd()
2298 int ath6kl_wmi_addkey_cmd(struct wmi *wmi, u8 if_idx, u8 key_index, in ath6kl_wmi_addkey_cmd() argument
2340 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_ADD_CIPHER_KEY_CMDID, in ath6kl_wmi_addkey_cmd()
2346 int ath6kl_wmi_add_krk_cmd(struct wmi *wmi, u8 if_idx, const u8 *krk) in ath6kl_wmi_add_krk_cmd() argument
2359 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_ADD_KRK_CMDID, in ath6kl_wmi_add_krk_cmd()
2365 int ath6kl_wmi_deletekey_cmd(struct wmi *wmi, u8 if_idx, u8 key_index) in ath6kl_wmi_deletekey_cmd() argument
2381 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_DELETE_CIPHER_KEY_CMDID, in ath6kl_wmi_deletekey_cmd()
2387 int ath6kl_wmi_setpmkid_cmd(struct wmi *wmi, u8 if_idx, const u8 *bssid, in ath6kl_wmi_setpmkid_cmd() argument
2414 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SET_PMKID_CMDID, in ath6kl_wmi_setpmkid_cmd()
2420 static int ath6kl_wmi_data_sync_send(struct wmi *wmi, struct sk_buff *skb, in ath6kl_wmi_data_sync_send() argument
2426 if (WARN_ON(skb == NULL || ep_id == wmi->ep_id)) { in ath6kl_wmi_data_sync_send()
2437 ret = ath6kl_control_tx(wmi->parent_dev, skb, ep_id); in ath6kl_wmi_data_sync_send()
2442 static int ath6kl_wmi_sync_point(struct wmi *wmi, u8 if_idx) in ath6kl_wmi_sync_point() argument
2453 spin_lock_bh(&wmi->lock); in ath6kl_wmi_sync_point()
2456 if (wmi->fat_pipe_exist & (1 << index)) { in ath6kl_wmi_sync_point()
2463 spin_unlock_bh(&wmi->lock); in ath6kl_wmi_sync_point()
2475 cmd->data_sync_map = wmi->fat_pipe_exist; in ath6kl_wmi_sync_point()
2496 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SYNCHRONIZE_CMDID, in ath6kl_wmi_sync_point()
2506 ep_id = ath6kl_ac2_endpoint_id(wmi->parent_dev, in ath6kl_wmi_sync_point()
2510 ath6kl_wmi_data_sync_send(wmi, data_sync_bufs[index].skb, in ath6kl_wmi_sync_point()
2532 int ath6kl_wmi_create_pstream_cmd(struct wmi *wmi, u8 if_idx, in ath6kl_wmi_create_pstream_cmd() argument
2592 spin_lock_bh(&wmi->lock); in ath6kl_wmi_create_pstream_cmd()
2593 fatpipe_exist_for_ac = (wmi->fat_pipe_exist & in ath6kl_wmi_create_pstream_cmd()
2595 wmi->fat_pipe_exist |= (1 << params->traffic_class); in ath6kl_wmi_create_pstream_cmd()
2596 spin_unlock_bh(&wmi->lock); in ath6kl_wmi_create_pstream_cmd()
2599 spin_lock_bh(&wmi->lock); in ath6kl_wmi_create_pstream_cmd()
2600 fatpipe_exist_for_ac = (wmi->fat_pipe_exist & in ath6kl_wmi_create_pstream_cmd()
2602 wmi->stream_exist_for_ac[params->traffic_class] |= in ath6kl_wmi_create_pstream_cmd()
2608 wmi->fat_pipe_exist |= (1 << params->traffic_class); in ath6kl_wmi_create_pstream_cmd()
2609 spin_unlock_bh(&wmi->lock); in ath6kl_wmi_create_pstream_cmd()
2618 ath6kl_indicate_tx_activity(wmi->parent_dev, in ath6kl_wmi_create_pstream_cmd()
2621 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_CREATE_PSTREAM_CMDID, in ath6kl_wmi_create_pstream_cmd()
2626 int ath6kl_wmi_delete_pstream_cmd(struct wmi *wmi, u8 if_idx, u8 traffic_class, in ath6kl_wmi_delete_pstream_cmd() argument
2647 spin_lock_bh(&wmi->lock); in ath6kl_wmi_delete_pstream_cmd()
2648 active_tsids = wmi->stream_exist_for_ac[traffic_class]; in ath6kl_wmi_delete_pstream_cmd()
2649 spin_unlock_bh(&wmi->lock); in ath6kl_wmi_delete_pstream_cmd()
2663 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_DELETE_PSTREAM_CMDID, in ath6kl_wmi_delete_pstream_cmd()
2666 spin_lock_bh(&wmi->lock); in ath6kl_wmi_delete_pstream_cmd()
2667 wmi->stream_exist_for_ac[traffic_class] &= ~(1 << tsid); in ath6kl_wmi_delete_pstream_cmd()
2668 active_tsids = wmi->stream_exist_for_ac[traffic_class]; in ath6kl_wmi_delete_pstream_cmd()
2669 spin_unlock_bh(&wmi->lock); in ath6kl_wmi_delete_pstream_cmd()
2676 ath6kl_indicate_tx_activity(wmi->parent_dev, in ath6kl_wmi_delete_pstream_cmd()
2678 wmi->fat_pipe_exist &= ~(1 << traffic_class); in ath6kl_wmi_delete_pstream_cmd()
2684 int ath6kl_wmi_set_ip_cmd(struct wmi *wmi, u8 if_idx, in ath6kl_wmi_set_ip_cmd() argument
2704 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SET_IP_CMDID, in ath6kl_wmi_set_ip_cmd()
2709 static void ath6kl_wmi_relinquish_implicit_pstream_credits(struct wmi *wmi) in ath6kl_wmi_relinquish_implicit_pstream_credits() argument
2721 spin_lock_bh(&wmi->lock); in ath6kl_wmi_relinquish_implicit_pstream_credits()
2722 stream_exist = wmi->fat_pipe_exist; in ath6kl_wmi_relinquish_implicit_pstream_credits()
2723 spin_unlock_bh(&wmi->lock); in ath6kl_wmi_relinquish_implicit_pstream_credits()
2731 spin_lock_bh(&wmi->lock); in ath6kl_wmi_relinquish_implicit_pstream_credits()
2732 active_tsids = wmi->stream_exist_for_ac[i]; in ath6kl_wmi_relinquish_implicit_pstream_credits()
2733 spin_unlock_bh(&wmi->lock); in ath6kl_wmi_relinquish_implicit_pstream_credits()
2745 ath6kl_indicate_tx_activity(wmi->parent_dev, in ath6kl_wmi_relinquish_implicit_pstream_credits()
2752 spin_lock_bh(&wmi->lock); in ath6kl_wmi_relinquish_implicit_pstream_credits()
2753 wmi->fat_pipe_exist = stream_exist; in ath6kl_wmi_relinquish_implicit_pstream_credits()
2754 spin_unlock_bh(&wmi->lock); in ath6kl_wmi_relinquish_implicit_pstream_credits()
2757 static int ath6kl_set_bitrate_mask64(struct wmi *wmi, u8 if_idx, in ath6kl_set_bitrate_mask64() argument
2803 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, in ath6kl_set_bitrate_mask64()
2809 static int ath6kl_set_bitrate_mask32(struct wmi *wmi, u8 if_idx, in ath6kl_set_bitrate_mask32() argument
2853 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, in ath6kl_set_bitrate_mask32()
2859 int ath6kl_wmi_set_bitrate_mask(struct wmi *wmi, u8 if_idx, in ath6kl_wmi_set_bitrate_mask() argument
2862 struct ath6kl *ar = wmi->parent_dev; in ath6kl_wmi_set_bitrate_mask()
2866 return ath6kl_set_bitrate_mask64(wmi, if_idx, mask); in ath6kl_wmi_set_bitrate_mask()
2868 return ath6kl_set_bitrate_mask32(wmi, if_idx, mask); in ath6kl_wmi_set_bitrate_mask()
2871 int ath6kl_wmi_set_host_sleep_mode_cmd(struct wmi *wmi, u8 if_idx, in ath6kl_wmi_set_host_sleep_mode_cmd() argument
2891 ath6kl_wmi_relinquish_implicit_pstream_credits(wmi); in ath6kl_wmi_set_host_sleep_mode_cmd()
2897 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, in ath6kl_wmi_set_host_sleep_mode_cmd()
2904 static int ath6kl_wmi_host_sleep_mode_cmd_prcd_evt_rx(struct wmi *wmi, in ath6kl_wmi_host_sleep_mode_cmd_prcd_evt_rx() argument
2907 struct ath6kl *ar = wmi->parent_dev; in ath6kl_wmi_host_sleep_mode_cmd_prcd_evt_rx()
2915 int ath6kl_wmi_set_wow_mode_cmd(struct wmi *wmi, u8 if_idx, in ath6kl_wmi_set_wow_mode_cmd() argument
2938 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SET_WOW_MODE_CMDID, in ath6kl_wmi_set_wow_mode_cmd()
2943 int ath6kl_wmi_add_wow_pattern_cmd(struct wmi *wmi, u8 if_idx, in ath6kl_wmi_add_wow_pattern_cmd() argument
2974 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_ADD_WOW_PATTERN_CMDID, in ath6kl_wmi_add_wow_pattern_cmd()
2980 int ath6kl_wmi_del_wow_pattern_cmd(struct wmi *wmi, u8 if_idx, in ath6kl_wmi_del_wow_pattern_cmd() argument
2995 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_DEL_WOW_PATTERN_CMDID, in ath6kl_wmi_del_wow_pattern_cmd()
3000 static int ath6kl_wmi_cmd_send_xtnd(struct wmi *wmi, struct sk_buff *skb, in ath6kl_wmi_cmd_send_xtnd() argument
3012 ret = ath6kl_wmi_cmd_send(wmi, 0, skb, WMI_EXTENSION_CMDID, sync_flag); in ath6kl_wmi_cmd_send_xtnd()
3017 int ath6kl_wmi_get_challenge_resp_cmd(struct wmi *wmi, u32 cookie, u32 source) in ath6kl_wmi_get_challenge_resp_cmd() argument
3031 ret = ath6kl_wmi_cmd_send_xtnd(wmi, skb, WMIX_HB_CHALLENGE_RESP_CMDID, in ath6kl_wmi_get_challenge_resp_cmd()
3036 int ath6kl_wmi_config_debug_module_cmd(struct wmi *wmi, u32 valid, u32 config) in ath6kl_wmi_config_debug_module_cmd() argument
3050 ret = ath6kl_wmi_cmd_send_xtnd(wmi, skb, WMIX_DBGLOG_CFG_MODULE_CMDID, in ath6kl_wmi_config_debug_module_cmd()
3055 int ath6kl_wmi_get_stats_cmd(struct wmi *wmi, u8 if_idx) in ath6kl_wmi_get_stats_cmd() argument
3057 return ath6kl_wmi_simple_cmd(wmi, if_idx, WMI_GET_STATISTICS_CMDID); in ath6kl_wmi_get_stats_cmd()
3060 int ath6kl_wmi_set_tx_pwr_cmd(struct wmi *wmi, u8 if_idx, u8 dbM) in ath6kl_wmi_set_tx_pwr_cmd() argument
3073 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SET_TX_PWR_CMDID, in ath6kl_wmi_set_tx_pwr_cmd()
3079 int ath6kl_wmi_get_tx_pwr_cmd(struct wmi *wmi, u8 if_idx) in ath6kl_wmi_get_tx_pwr_cmd() argument
3081 return ath6kl_wmi_simple_cmd(wmi, if_idx, WMI_GET_TX_PWR_CMDID); in ath6kl_wmi_get_tx_pwr_cmd()
3084 int ath6kl_wmi_get_roam_tbl_cmd(struct wmi *wmi) in ath6kl_wmi_get_roam_tbl_cmd() argument
3086 return ath6kl_wmi_simple_cmd(wmi, 0, WMI_GET_ROAM_TBL_CMDID); in ath6kl_wmi_get_roam_tbl_cmd()
3089 int ath6kl_wmi_set_lpreamble_cmd(struct wmi *wmi, u8 if_idx, u8 status, in ath6kl_wmi_set_lpreamble_cmd() argument
3104 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SET_LPREAMBLE_CMDID, in ath6kl_wmi_set_lpreamble_cmd()
3109 int ath6kl_wmi_set_rts_cmd(struct wmi *wmi, u16 threshold) in ath6kl_wmi_set_rts_cmd() argument
3122 ret = ath6kl_wmi_cmd_send(wmi, 0, skb, WMI_SET_RTS_CMDID, in ath6kl_wmi_set_rts_cmd()
3127 int ath6kl_wmi_set_wmm_txop(struct wmi *wmi, u8 if_idx, enum wmi_txop_cfg cfg) in ath6kl_wmi_set_wmm_txop() argument
3143 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SET_WMM_TXOP_CMDID, in ath6kl_wmi_set_wmm_txop()
3148 int ath6kl_wmi_set_keepalive_cmd(struct wmi *wmi, u8 if_idx, in ath6kl_wmi_set_keepalive_cmd() argument
3162 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SET_KEEPALIVE_CMDID, in ath6kl_wmi_set_keepalive_cmd()
3166 ath6kl_debug_set_keepalive(wmi->parent_dev, keep_alive_intvl); in ath6kl_wmi_set_keepalive_cmd()
3171 int ath6kl_wmi_set_htcap_cmd(struct wmi *wmi, u8 if_idx, in ath6kl_wmi_set_htcap_cmd() argument
3204 return ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SET_HT_CAP_CMDID, in ath6kl_wmi_set_htcap_cmd()
3208 int ath6kl_wmi_test_cmd(struct wmi *wmi, void *buf, size_t len) in ath6kl_wmi_test_cmd() argument
3219 ret = ath6kl_wmi_cmd_send(wmi, 0, skb, WMI_TEST_CMDID, NO_SYNC_WMIFLAG); in ath6kl_wmi_test_cmd()
3224 int ath6kl_wmi_mcast_filter_cmd(struct wmi *wmi, u8 if_idx, bool mc_all_on) in ath6kl_wmi_mcast_filter_cmd() argument
3237 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_MCAST_FILTER_CMDID, in ath6kl_wmi_mcast_filter_cmd()
3242 int ath6kl_wmi_add_del_mcast_filter_cmd(struct wmi *wmi, u8 if_idx, in ath6kl_wmi_add_del_mcast_filter_cmd() argument
3262 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, in ath6kl_wmi_add_del_mcast_filter_cmd()
3270 int ath6kl_wmi_sta_bmiss_enhance_cmd(struct wmi *wmi, u8 if_idx, bool enhance) in ath6kl_wmi_sta_bmiss_enhance_cmd() argument
3283 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, in ath6kl_wmi_sta_bmiss_enhance_cmd()
3289 int ath6kl_wmi_set_regdomain_cmd(struct wmi *wmi, const char *alpha2) in ath6kl_wmi_set_regdomain_cmd() argument
3301 return ath6kl_wmi_cmd_send(wmi, 0, skb, in ath6kl_wmi_set_regdomain_cmd()
3306 s32 ath6kl_wmi_get_rate(struct wmi *wmi, s8 rate_index) in ath6kl_wmi_get_rate() argument
3308 struct ath6kl *ar = wmi->parent_dev; in ath6kl_wmi_get_rate()
3337 static int ath6kl_wmi_get_pmkid_list_event_rx(struct wmi *wmi, u8 *datap, in ath6kl_wmi_get_pmkid_list_event_rx() argument
3356 static int ath6kl_wmi_addba_req_event_rx(struct wmi *wmi, u8 *datap, int len, in ath6kl_wmi_addba_req_event_rx() argument
3367 static int ath6kl_wmi_delba_req_event_rx(struct wmi *wmi, u8 *datap, int len, in ath6kl_wmi_delba_req_event_rx() argument
3379 int ath6kl_wmi_ap_profile_commit(struct wmi *wmip, u8 if_idx, in ath6kl_wmi_ap_profile_commit()
3402 int ath6kl_wmi_ap_set_mlme(struct wmi *wmip, u8 if_idx, u8 cmd, const u8 *mac, in ath6kl_wmi_ap_set_mlme()
3424 int ath6kl_wmi_ap_hidden_ssid(struct wmi *wmi, u8 if_idx, bool enable) in ath6kl_wmi_ap_hidden_ssid() argument
3436 return ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_AP_HIDDEN_SSID_CMDID, in ath6kl_wmi_ap_hidden_ssid()
3441 int ath6kl_wmi_ap_set_apsd(struct wmi *wmi, u8 if_idx, u8 enable) in ath6kl_wmi_ap_set_apsd() argument
3453 return ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_AP_SET_APSD_CMDID, in ath6kl_wmi_ap_set_apsd()
3457 int ath6kl_wmi_set_apsd_bfrd_traf(struct wmi *wmi, u8 if_idx, in ath6kl_wmi_set_apsd_bfrd_traf() argument
3472 return ath6kl_wmi_cmd_send(wmi, if_idx, skb, in ath6kl_wmi_set_apsd_bfrd_traf()
3477 static int ath6kl_wmi_pspoll_event_rx(struct wmi *wmi, u8 *datap, int len, in ath6kl_wmi_pspoll_event_rx() argument
3492 static int ath6kl_wmi_dtimexpiry_event_rx(struct wmi *wmi, u8 *datap, int len, in ath6kl_wmi_dtimexpiry_event_rx() argument
3500 int ath6kl_wmi_set_pvb_cmd(struct wmi *wmi, u8 if_idx, u16 aid, in ath6kl_wmi_set_pvb_cmd() argument
3516 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_AP_SET_PVB_CMDID, in ath6kl_wmi_set_pvb_cmd()
3522 int ath6kl_wmi_set_rx_frame_format_cmd(struct wmi *wmi, u8 if_idx, in ath6kl_wmi_set_rx_frame_format_cmd() argument
3540 ret = ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_RX_FRAME_FORMAT_CMDID, in ath6kl_wmi_set_rx_frame_format_cmd()
3546 int ath6kl_wmi_set_appie_cmd(struct wmi *wmi, u8 if_idx, u8 mgmt_frm_type, in ath6kl_wmi_set_appie_cmd() argument
3566 return ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SET_APPIE_CMDID, in ath6kl_wmi_set_appie_cmd()
3570 int ath6kl_wmi_set_ie_cmd(struct wmi *wmi, u8 if_idx, u8 ie_id, u8 ie_field, in ath6kl_wmi_set_ie_cmd() argument
3589 return ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SET_IE_CMDID, in ath6kl_wmi_set_ie_cmd()
3593 int ath6kl_wmi_disable_11b_rates_cmd(struct wmi *wmi, bool disable) in ath6kl_wmi_disable_11b_rates_cmd() argument
3607 return ath6kl_wmi_cmd_send(wmi, 0, skb, WMI_DISABLE_11B_RATES_CMDID, in ath6kl_wmi_disable_11b_rates_cmd()
3611 int ath6kl_wmi_remain_on_chnl_cmd(struct wmi *wmi, u8 if_idx, u32 freq, u32 dur) in ath6kl_wmi_remain_on_chnl_cmd() argument
3625 return ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_REMAIN_ON_CHNL_CMDID, in ath6kl_wmi_remain_on_chnl_cmd()
3633 static int ath6kl_wmi_send_action_cmd(struct wmi *wmi, u8 if_idx, u32 id, in ath6kl_wmi_send_action_cmd() argument
3654 kfree(wmi->last_mgmt_tx_frame); in ath6kl_wmi_send_action_cmd()
3656 wmi->last_mgmt_tx_frame = buf; in ath6kl_wmi_send_action_cmd()
3657 wmi->last_mgmt_tx_frame_len = data_len; in ath6kl_wmi_send_action_cmd()
3668 return ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SEND_ACTION_CMDID, in ath6kl_wmi_send_action_cmd()
3672 static int __ath6kl_wmi_send_mgmt_cmd(struct wmi *wmi, u8 if_idx, u32 id, in __ath6kl_wmi_send_mgmt_cmd() argument
3693 kfree(wmi->last_mgmt_tx_frame); in __ath6kl_wmi_send_mgmt_cmd()
3695 wmi->last_mgmt_tx_frame = buf; in __ath6kl_wmi_send_mgmt_cmd()
3696 wmi->last_mgmt_tx_frame_len = data_len; in __ath6kl_wmi_send_mgmt_cmd()
3708 return ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_SEND_MGMT_CMDID, in __ath6kl_wmi_send_mgmt_cmd()
3712 int ath6kl_wmi_send_mgmt_cmd(struct wmi *wmi, u8 if_idx, u32 id, u32 freq, in ath6kl_wmi_send_mgmt_cmd() argument
3717 struct ath6kl *ar = wmi->parent_dev; in ath6kl_wmi_send_mgmt_cmd()
3727 status = __ath6kl_wmi_send_mgmt_cmd(ar->wmi, if_idx, id, freq, in ath6kl_wmi_send_mgmt_cmd()
3731 status = ath6kl_wmi_send_action_cmd(ar->wmi, if_idx, id, freq, in ath6kl_wmi_send_mgmt_cmd()
3738 int ath6kl_wmi_send_probe_response_cmd(struct wmi *wmi, u8 if_idx, u32 freq, in ath6kl_wmi_send_probe_response_cmd() argument
3761 return ath6kl_wmi_cmd_send(wmi, if_idx, skb, in ath6kl_wmi_send_probe_response_cmd()
3766 int ath6kl_wmi_probe_report_req_cmd(struct wmi *wmi, u8 if_idx, bool enable) in ath6kl_wmi_probe_report_req_cmd() argument
3779 return ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_PROBE_REQ_REPORT_CMDID, in ath6kl_wmi_probe_report_req_cmd()
3783 int ath6kl_wmi_info_req_cmd(struct wmi *wmi, u8 if_idx, u32 info_req_flags) in ath6kl_wmi_info_req_cmd() argument
3796 return ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_GET_P2P_INFO_CMDID, in ath6kl_wmi_info_req_cmd()
3800 int ath6kl_wmi_cancel_remain_on_chnl_cmd(struct wmi *wmi, u8 if_idx) in ath6kl_wmi_cancel_remain_on_chnl_cmd() argument
3803 return ath6kl_wmi_simple_cmd(wmi, if_idx, in ath6kl_wmi_cancel_remain_on_chnl_cmd()
3807 int ath6kl_wmi_set_inact_period(struct wmi *wmi, u8 if_idx, int inact_timeout) in ath6kl_wmi_set_inact_period() argument
3820 return ath6kl_wmi_cmd_send(wmi, if_idx, skb, WMI_AP_CONN_INACT_CMDID, in ath6kl_wmi_set_inact_period()
3824 static void ath6kl_wmi_hb_challenge_resp_event(struct wmi *wmi, u8 *datap, in ath6kl_wmi_hb_challenge_resp_event() argument
3833 ath6kl_recovery_hb_event(wmi->parent_dev, in ath6kl_wmi_hb_challenge_resp_event()
3837 static int ath6kl_wmi_control_rx_xtnd(struct wmi *wmi, struct sk_buff *skb) in ath6kl_wmi_control_rx_xtnd() argument
3861 ath6kl_wmi_hb_challenge_resp_event(wmi, datap, len); in ath6kl_wmi_control_rx_xtnd()
3865 ath6kl_debug_fwlog_event(wmi->parent_dev, datap, len); in ath6kl_wmi_control_rx_xtnd()
3876 static int ath6kl_wmi_roam_tbl_event_rx(struct wmi *wmi, u8 *datap, int len) in ath6kl_wmi_roam_tbl_event_rx() argument
3878 return ath6kl_debug_roam_tbl_event(wmi->parent_dev, datap, len); in ath6kl_wmi_roam_tbl_event_rx()
3882 static int ath6kl_wmi_proc_events_vif(struct wmi *wmi, u16 if_idx, u16 cmd_id, in ath6kl_wmi_proc_events_vif() argument
3887 vif = ath6kl_get_vif_by_index(wmi->parent_dev, if_idx); in ath6kl_wmi_proc_events_vif()
3898 return ath6kl_wmi_connect_event_rx(wmi, datap, len, vif); in ath6kl_wmi_proc_events_vif()
3901 return ath6kl_wmi_disconnect_event_rx(wmi, datap, len, vif); in ath6kl_wmi_proc_events_vif()
3904 return ath6kl_wmi_tkip_micerr_event_rx(wmi, datap, len, vif); in ath6kl_wmi_proc_events_vif()
3907 return ath6kl_wmi_bssinfo_event_rx(wmi, datap, len, vif); in ath6kl_wmi_proc_events_vif()
3910 return ath6kl_wmi_neighbor_report_event_rx(wmi, datap, len, in ath6kl_wmi_proc_events_vif()
3914 return ath6kl_wmi_scan_complete_rx(wmi, datap, len, vif); in ath6kl_wmi_proc_events_vif()
3917 return ath6kl_wmi_stats_event_rx(wmi, datap, len, vif); in ath6kl_wmi_proc_events_vif()
3920 return ath6kl_wmi_cac_event_rx(wmi, datap, len, vif); in ath6kl_wmi_proc_events_vif()
3923 return ath6kl_wmi_pspoll_event_rx(wmi, datap, len, vif); in ath6kl_wmi_proc_events_vif()
3926 return ath6kl_wmi_dtimexpiry_event_rx(wmi, datap, len, vif); in ath6kl_wmi_proc_events_vif()
3929 return ath6kl_wmi_addba_req_event_rx(wmi, datap, len, vif); in ath6kl_wmi_proc_events_vif()
3932 return ath6kl_wmi_delba_req_event_rx(wmi, datap, len, vif); in ath6kl_wmi_proc_events_vif()
3936 return ath6kl_wmi_host_sleep_mode_cmd_prcd_evt_rx(wmi, vif); in ath6kl_wmi_proc_events_vif()
3939 return ath6kl_wmi_remain_on_chnl_event_rx(wmi, datap, len, vif); in ath6kl_wmi_proc_events_vif()
3943 return ath6kl_wmi_cancel_remain_on_chnl_event_rx(wmi, datap, in ath6kl_wmi_proc_events_vif()
3947 return ath6kl_wmi_tx_status_event_rx(wmi, datap, len, vif); in ath6kl_wmi_proc_events_vif()
3950 return ath6kl_wmi_rx_probe_req_event_rx(wmi, datap, len, vif); in ath6kl_wmi_proc_events_vif()
3953 return ath6kl_wmi_rx_action_event_rx(wmi, datap, len, vif); in ath6kl_wmi_proc_events_vif()
3956 return ath6kl_wmi_txe_notify_event_rx(wmi, datap, len, vif); in ath6kl_wmi_proc_events_vif()
3965 static int ath6kl_wmi_proc_events(struct wmi *wmi, struct sk_buff *skb) in ath6kl_wmi_proc_events() argument
3989 ret = ath6kl_wmi_bitrate_reply_rx(wmi, datap, len); in ath6kl_wmi_proc_events()
3993 ret = ath6kl_wmi_ch_list_reply_rx(wmi, datap, len); in ath6kl_wmi_proc_events()
3997 ret = ath6kl_wmi_tx_pwr_reply_rx(wmi, datap, len); in ath6kl_wmi_proc_events()
4001 ret = ath6kl_wmi_ready_event_rx(wmi, datap, len); in ath6kl_wmi_proc_events()
4005 ret = ath6kl_wmi_peer_node_event_rx(wmi, datap, len); in ath6kl_wmi_proc_events()
4009 ath6kl_wmi_regdomain_event(wmi, datap, len); in ath6kl_wmi_proc_events()
4013 ret = ath6kl_wmi_pstream_timeout_event_rx(wmi, datap, len); in ath6kl_wmi_proc_events()
4017 ret = ath6kl_wmi_error_event_rx(wmi, datap, len); in ath6kl_wmi_proc_events()
4021 ret = ath6kl_wmi_rssi_threshold_event_rx(wmi, datap, len); in ath6kl_wmi_proc_events()
4032 ret = ath6kl_wmi_roam_tbl_event_rx(wmi, datap, len); in ath6kl_wmi_proc_events()
4036 ret = ath6kl_wmi_control_rx_xtnd(wmi, skb); in ath6kl_wmi_proc_events()
4046 ret = ath6kl_wmi_test_rx(wmi, datap, len); in ath6kl_wmi_proc_events()
4050 ret = ath6kl_wmi_ratemask_reply_rx(wmi, datap, len); in ath6kl_wmi_proc_events()
4057 ret = ath6kl_wmi_snr_threshold_event_rx(wmi, datap, len); in ath6kl_wmi_proc_events()
4064 ret = ath6kl_wmi_aplist_event_rx(wmi, datap, len); in ath6kl_wmi_proc_events()
4068 ret = ath6kl_wmi_keepalive_reply_rx(wmi, datap, len); in ath6kl_wmi_proc_events()
4075 ret = ath6kl_wmi_get_pmkid_list_event_rx(wmi, datap, len); in ath6kl_wmi_proc_events()
4105 ret = ath6kl_wmi_proc_events_vif(wmi, if_idx, id, datap, len); in ath6kl_wmi_proc_events()
4114 int ath6kl_wmi_control_rx(struct wmi *wmi, struct sk_buff *skb) in ath6kl_wmi_control_rx() argument
4127 return ath6kl_wmi_proc_events(wmi, skb); in ath6kl_wmi_control_rx()
4130 void ath6kl_wmi_reset(struct wmi *wmi) in ath6kl_wmi_reset() argument
4132 spin_lock_bh(&wmi->lock); in ath6kl_wmi_reset()
4134 wmi->fat_pipe_exist = 0; in ath6kl_wmi_reset()
4135 memset(wmi->stream_exist_for_ac, 0, sizeof(wmi->stream_exist_for_ac)); in ath6kl_wmi_reset()
4137 spin_unlock_bh(&wmi->lock); in ath6kl_wmi_reset()
4142 struct wmi *wmi; in ath6kl_wmi_init() local
4144 wmi = kzalloc(sizeof(struct wmi), GFP_KERNEL); in ath6kl_wmi_init()
4145 if (!wmi) in ath6kl_wmi_init()
4148 spin_lock_init(&wmi->lock); in ath6kl_wmi_init()
4150 wmi->parent_dev = dev; in ath6kl_wmi_init()
4152 wmi->pwr_mode = REC_POWER; in ath6kl_wmi_init()
4154 ath6kl_wmi_reset(wmi); in ath6kl_wmi_init()
4156 return wmi; in ath6kl_wmi_init()
4159 void ath6kl_wmi_shutdown(struct wmi *wmi) in ath6kl_wmi_shutdown() argument
4161 if (!wmi) in ath6kl_wmi_shutdown()
4164 kfree(wmi->last_mgmt_tx_frame); in ath6kl_wmi_shutdown()
4165 kfree(wmi); in ath6kl_wmi_shutdown()