Lines Matching defs:iwl_mvm

492 	struct iwl_mvm *mvm;
833 struct iwl_mvm *mvm;
993 struct iwl_mvm {
1003 /* for protecting access to iwl_mvm */
1377 ((struct iwl_mvm *)(_iwl_op_mode)->op_mode_specific)
1382 DEFINE_GUARD(mvm, struct iwl_mvm *, mutex_lock(&_T->mutex), mutex_unlock(&_T->mutex))
1424 static inline bool iwl_mvm_is_radio_killed(struct iwl_mvm *mvm)
1430 static inline bool iwl_mvm_is_radio_hw_killed(struct iwl_mvm *mvm)
1435 static inline bool iwl_mvm_firmware_running(struct iwl_mvm *mvm)
1444 iwl_mvm_sta_from_staid_rcu(struct iwl_mvm *mvm, u8 sta_id)
1461 iwl_mvm_sta_from_staid_protected(struct iwl_mvm *mvm, u8 sta_id)
1479 iwl_mvm_rcu_dereference_vif_id(struct iwl_mvm *mvm, u8 vif_id, bool rcu)
1492 iwl_mvm_rcu_fw_link_id_to_link_conf(struct iwl_mvm *mvm, u8 link_id, bool rcu)
1505 static inline bool iwl_mvm_is_adaptive_dwell_supported(struct iwl_mvm *mvm)
1511 static inline bool iwl_mvm_is_adaptive_dwell_v2_supported(struct iwl_mvm *mvm)
1517 static inline bool iwl_mvm_is_adwell_hb_ap_num_supported(struct iwl_mvm *mvm)
1523 static inline bool iwl_mvm_is_oce_supported(struct iwl_mvm *mvm)
1529 static inline bool iwl_mvm_is_frag_ebs_supported(struct iwl_mvm *mvm)
1534 static inline bool iwl_mvm_is_short_beacon_notif_supported(struct iwl_mvm *mvm)
1540 static inline bool iwl_mvm_is_dqa_data_queue(struct iwl_mvm *mvm, u8 queue)
1546 static inline bool iwl_mvm_is_dqa_mgmt_queue(struct iwl_mvm *mvm, u8 queue)
1552 static inline bool iwl_mvm_is_lar_supported(struct iwl_mvm *mvm)
1568 static inline bool iwl_mvm_is_wifi_mcc_supported(struct iwl_mvm *mvm)
1576 static inline bool iwl_mvm_bt_is_rrc_supported(struct iwl_mvm *mvm)
1583 static inline bool iwl_mvm_is_csum_supported(struct iwl_mvm *mvm)
1590 static inline bool iwl_mvm_is_mplut_supported(struct iwl_mvm *mvm)
1598 bool iwl_mvm_is_p2p_scm_uapsd_supported(struct iwl_mvm *mvm)
1606 static inline bool iwl_mvm_has_new_rx_api(struct iwl_mvm *mvm)
1624 static inline bool iwl_mvm_has_new_tx_api(struct iwl_mvm *mvm)
1630 static inline bool iwl_mvm_has_unified_ucode(struct iwl_mvm *mvm)
1636 static inline bool iwl_mvm_is_cdb_supported(struct iwl_mvm *mvm)
1651 static inline bool iwl_mvm_cdb_scan_api(struct iwl_mvm *mvm)
1661 static inline bool iwl_mvm_is_scan_ext_chan_supported(struct iwl_mvm *mvm)
1668 static inline bool iwl_mvm_is_reduced_config_scan_supported(struct iwl_mvm *mvm)
1674 static inline bool iwl_mvm_is_band_in_rx_supported(struct iwl_mvm *mvm)
1680 static inline bool iwl_mvm_has_new_rx_stats_api(struct iwl_mvm *mvm)
1686 static inline bool iwl_mvm_has_quota_low_latency(struct iwl_mvm *mvm)
1692 static inline bool iwl_mvm_has_no_host_disable_tx(struct iwl_mvm *mvm)
1698 static inline bool iwl_mvm_has_tlc_offload(const struct iwl_mvm *mvm)
1705 iwl_mvm_get_agg_status(struct iwl_mvm *mvm, void *tx_resp)
1713 static inline bool iwl_mvm_is_tt_in_fw(struct iwl_mvm *mvm)
1725 static inline bool iwl_mvm_is_ctdp_supported(struct iwl_mvm *mvm)
1741 static inline int iwl_mvm_max_active_links(struct iwl_mvm *mvm,
1762 static inline u8 iwl_mvm_mac_ac_to_tx_fifo(struct iwl_mvm *mvm,
1780 void __iwl_mvm_mac_stop(struct iwl_mvm *mvm, bool suspend);
1781 int __iwl_mvm_mac_start(struct iwl_mvm *mvm);
1787 int iwl_run_init_mvm_ucode(struct iwl_mvm *mvm);
1802 bool iwl_mvm_is_nic_ack_enabled(struct iwl_mvm *mvm, struct ieee80211_vif *vif);
1804 static inline void iwl_mvm_dump_nic_error_log(struct iwl_mvm *mvm)
1810 u8 iwl_mvm_next_antenna(struct iwl_mvm *mvm, u8 valid, u8 last_idx);
1811 void iwl_mvm_get_sync_time(struct iwl_mvm *mvm, int clock_type, u32 *gp2,
1813 u32 iwl_mvm_get_systime(struct iwl_mvm *mvm);
1817 int __must_check iwl_mvm_send_cmd(struct iwl_mvm *mvm,
1819 int __must_check iwl_mvm_send_cmd_pdu(struct iwl_mvm *mvm, u32 id,
1821 int __must_check iwl_mvm_send_cmd_status(struct iwl_mvm *mvm,
1824 int __must_check iwl_mvm_send_cmd_pdu_status(struct iwl_mvm *mvm, u32 id,
1827 int iwl_mvm_tx_skb_sta(struct iwl_mvm *mvm, struct sk_buff *skb,
1829 int iwl_mvm_tx_skb_non_sta(struct iwl_mvm *mvm, struct sk_buff *skb);
1830 void iwl_mvm_set_tx_cmd(struct iwl_mvm *mvm, struct sk_buff *skb,
1833 void iwl_mvm_set_tx_cmd_rate(struct iwl_mvm *mvm, struct iwl_tx_cmd *tx_cmd,
1837 unsigned int iwl_mvm_max_amsdu_size(struct iwl_mvm *mvm,
1846 int iwl_mvm_flush_tx_path(struct iwl_mvm *mvm, u32 tfd_msk);
1847 int iwl_mvm_flush_sta(struct iwl_mvm *mvm, u32 sta_id, u32 tfd_queue_mask);
1848 int iwl_mvm_flush_sta_tids(struct iwl_mvm *mvm, u32 sta_id, u16 tids);
1857 int iwl_mvm_set_sta_pkt_ext(struct iwl_mvm *mvm,
1861 void iwl_mvm_async_handlers_purge(struct iwl_mvm *mvm);
1872 static inline void iwl_mvm_wait_for_async_handlers(struct iwl_mvm *mvm)
1878 void iwl_mvm_handle_rx_system_oper_stats(struct iwl_mvm *mvm,
1880 void iwl_mvm_handle_rx_system_oper_part1_stats(struct iwl_mvm *mvm,
1883 iwl_mvm_handle_rx_system_end_stats_notif(struct iwl_mvm *mvm,
1888 void iwl_mvm_handle_rx_statistics(struct iwl_mvm *mvm,
1890 void iwl_mvm_rx_statistics(struct iwl_mvm *mvm,
1892 int iwl_mvm_request_statistics(struct iwl_mvm *mvm, bool clear);
1893 int iwl_mvm_request_periodic_system_statistics(struct iwl_mvm *mvm,
1895 void iwl_mvm_accu_radio_stats(struct iwl_mvm *mvm);
1898 int iwl_nvm_init(struct iwl_mvm *mvm);
1899 int iwl_mvm_load_nvm_to_nic(struct iwl_mvm *mvm);
1901 static inline u8 iwl_mvm_get_valid_tx_ant(struct iwl_mvm *mvm)
1914 static inline u8 iwl_mvm_get_valid_rx_ant(struct iwl_mvm *mvm)
1928 static inline void iwl_mvm_toggle_tx_ant(struct iwl_mvm *mvm, u8 *ant)
1933 static inline u32 iwl_mvm_get_phy_config(struct iwl_mvm *mvm)
1946 int iwl_mvm_up(struct iwl_mvm *mvm);
1947 int iwl_mvm_load_d3_fw(struct iwl_mvm *mvm);
1949 int iwl_mvm_mac_setup_register(struct iwl_mvm *mvm);
1951 void iwl_mvm_mac_init_mvmvif(struct iwl_mvm *mvm, struct iwl_mvm_vif *mvmvif);
1960 void iwl_mvm_rx_rx_phy_cmd(struct iwl_mvm *mvm, struct iwl_rx_cmd_buffer *rxb);
1961 void iwl_mvm_rx_rx_mpdu(struct iwl_mvm *mvm, struct napi_struct *napi,
1963 void iwl_mvm_rx_mpdu_mq(struct iwl_mvm *mvm, struct napi_struct *napi,
1965 void iwl_mvm_rx_monitor_no_data(struct iwl_mvm *mvm, struct napi_struct *napi,
1967 void iwl_mvm_rx_frame_release(struct iwl_mvm *mvm, struct napi_struct *napi,
1969 void iwl_mvm_rx_bar_frame_release(struct iwl_mvm *mvm, struct napi_struct *napi,
1971 void iwl_mvm_rx_queue_notif(struct iwl_mvm *mvm, struct napi_struct *napi,
1973 void iwl_mvm_rx_tx_cmd(struct iwl_mvm *mvm, struct iwl_rx_cmd_buffer *rxb);
1974 void iwl_mvm_mfu_assert_dump_notif(struct iwl_mvm *mvm,
1976 void iwl_mvm_send_recovery_cmd(struct iwl_mvm *mvm, u32 flags);
1977 void iwl_mvm_rx_ba_notif(struct iwl_mvm *mvm, struct iwl_rx_cmd_buffer *rxb);
1978 void iwl_mvm_rx_ant_coupling_notif(struct iwl_mvm *mvm,
1980 void iwl_mvm_rx_fw_error(struct iwl_mvm *mvm, struct iwl_rx_cmd_buffer *rxb);
1981 void iwl_mvm_rx_mfuart_notif(struct iwl_mvm *mvm,
1983 void iwl_mvm_rx_shared_mem_cfg_notif(struct iwl_mvm *mvm,
1987 struct iwl_mvm_phy_ctxt *iwl_mvm_get_free_phy_ctxt(struct iwl_mvm *mvm);
1988 int iwl_mvm_phy_ctxt_add(struct iwl_mvm *mvm, struct iwl_mvm_phy_ctxt *ctxt,
1992 int iwl_mvm_phy_ctxt_changed(struct iwl_mvm *mvm, struct iwl_mvm_phy_ctxt *ctxt,
1996 void iwl_mvm_phy_ctxt_ref(struct iwl_mvm *mvm,
1998 void iwl_mvm_phy_ctxt_unref(struct iwl_mvm *mvm,
2000 int iwl_mvm_phy_ctx_count(struct iwl_mvm *mvm);
2003 int iwl_mvm_phy_send_rlc(struct iwl_mvm *mvm, struct iwl_mvm_phy_ctxt *ctxt,
2008 void iwl_mvm_prepare_mac_removal(struct iwl_mvm *mvm,
2010 void iwl_mvm_set_fw_basic_rates(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2013 void iwl_mvm_set_fw_protection_flags(struct iwl_mvm *mvm,
2018 void iwl_mvm_set_fw_qos_params(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2021 bool iwl_mvm_set_fw_mu_edca_params(struct iwl_mvm *mvm,
2024 void iwl_mvm_set_fw_dtim_tbtt(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2028 __le32 iwl_mac_ctxt_p2p_dev_has_extended_disc(struct iwl_mvm *mvm,
2030 void iwl_mvm_mac_ctxt_cmd_ap_set_filter_flags(struct iwl_mvm *mvm,
2036 __le32 iwl_mvm_mac_ctxt_cmd_p2p_sta_get_oppps_ctwin(struct iwl_mvm *mvm,
2038 u32 iwl_mvm_mac_ctxt_cmd_sta_get_twt_policy(struct iwl_mvm *mvm,
2040 int iwl_mvm_mld_mac_ctxt_add(struct iwl_mvm *mvm, struct ieee80211_vif *vif);
2041 int iwl_mvm_mld_mac_ctxt_changed(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2043 int iwl_mvm_mld_mac_ctxt_remove(struct iwl_mvm *mvm, struct ieee80211_vif *vif);
2044 int iwl_mvm_mac_ctxt_init(struct iwl_mvm *mvm, struct ieee80211_vif *vif);
2045 int iwl_mvm_mac_ctxt_add(struct iwl_mvm *mvm, struct ieee80211_vif *vif);
2046 int iwl_mvm_mac_ctxt_changed(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2048 int iwl_mvm_mac_ctxt_remove(struct iwl_mvm *mvm, struct ieee80211_vif *vif);
2049 int iwl_mvm_mac_ctxt_beacon_changed(struct iwl_mvm *mvm,
2052 int iwl_mvm_mac_ctxt_send_beacon_cmd(struct iwl_mvm *mvm,
2055 u8 iwl_mvm_mac_ctxt_get_beacon_rate(struct iwl_mvm *mvm,
2058 u8 iwl_mvm_mac_ctxt_get_lowest_rate(struct iwl_mvm *mvm,
2063 void iwl_mvm_mac_ctxt_set_tim(struct iwl_mvm *mvm,
2066 void iwl_mvm_rx_beacon_notif(struct iwl_mvm *mvm,
2068 void iwl_mvm_rx_missed_beacons_notif(struct iwl_mvm *mvm,
2070 void iwl_mvm_rx_stored_beacon_notif(struct iwl_mvm *mvm,
2072 void iwl_mvm_mu_mimo_grp_notif(struct iwl_mvm *mvm,
2074 void iwl_mvm_sta_pm_notif(struct iwl_mvm *mvm, struct iwl_rx_cmd_buffer *rxb);
2075 void iwl_mvm_window_status_notif(struct iwl_mvm *mvm,
2077 void iwl_mvm_mac_ctxt_recalc_tsf_id(struct iwl_mvm *mvm,
2079 void iwl_mvm_probe_resp_data_notif(struct iwl_mvm *mvm,
2081 void iwl_mvm_rx_missed_vap_notif(struct iwl_mvm *mvm,
2083 void iwl_mvm_channel_switch_start_notif(struct iwl_mvm *mvm,
2085 void iwl_mvm_channel_switch_error_notif(struct iwl_mvm *mvm,
2088 int iwl_mvm_binding_add_vif(struct iwl_mvm *mvm, struct ieee80211_vif *vif);
2089 int iwl_mvm_binding_remove_vif(struct iwl_mvm *mvm, struct ieee80211_vif *vif);
2090 u32 iwl_mvm_get_lmac_id(struct iwl_mvm *mvm, enum nl80211_band band);
2093 int iwl_mvm_set_link_mapping(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2095 int iwl_mvm_add_link(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2097 int iwl_mvm_link_changed(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2100 int iwl_mvm_unset_link_mapping(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2102 int iwl_mvm_remove_link(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2104 int iwl_mvm_disable_link(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2107 void iwl_mvm_select_links(struct iwl_mvm *mvm, struct ieee80211_vif *vif);
2130 void iwl_mvm_stop_ap_ibss_common(struct iwl_mvm *mvm,
2134 void iwl_mvm_bss_info_changed_station_common(struct iwl_mvm *mvm,
2138 void iwl_mvm_bss_info_changed_station_assoc(struct iwl_mvm *mvm,
2157 int (*add_aux_sta_for_hs20)(struct iwl_mvm *mvm, u32 lmac_id);
2158 int (*link)(struct iwl_mvm *mvm, struct ieee80211_vif *vif);
2168 void iwl_mvm_protect_assoc(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2172 static inline size_t iwl_mvm_quota_cmd_size(struct iwl_mvm *mvm)
2180 *iwl_mvm_quota_cmd_get_quota(struct iwl_mvm *mvm,
2193 int iwl_mvm_update_quotas(struct iwl_mvm *mvm, bool force_upload,
2197 int iwl_mvm_reg_scan_start(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2200 size_t iwl_mvm_scan_size(struct iwl_mvm *mvm);
2201 int iwl_mvm_scan_stop(struct iwl_mvm *mvm, int type, bool notify);
2203 int iwl_mvm_max_scan_ie_len(struct iwl_mvm *mvm);
2204 void iwl_mvm_report_scan_aborted(struct iwl_mvm *mvm);
2206 int iwl_mvm_int_mlo_scan(struct iwl_mvm *mvm, struct ieee80211_vif *vif);
2207 void iwl_mvm_rx_channel_survey_notif(struct iwl_mvm *mvm,
2211 void iwl_mvm_rx_lmac_scan_complete_notif(struct iwl_mvm *mvm,
2213 void iwl_mvm_rx_lmac_scan_iter_complete_notif(struct iwl_mvm *mvm,
2215 int iwl_mvm_sched_scan_start(struct iwl_mvm *mvm,
2220 void iwl_mvm_rx_scan_match_found(struct iwl_mvm *mvm,
2224 int iwl_mvm_config_scan(struct iwl_mvm *mvm);
2225 void iwl_mvm_rx_umac_scan_complete_notif(struct iwl_mvm *mvm,
2227 void iwl_mvm_rx_umac_scan_iter_complete_notif(struct iwl_mvm *mvm,
2232 void iwl_mvm_dbgfs_register(struct iwl_mvm *mvm);
2234 void iwl_mvm_vif_dbgfs_add_link(struct iwl_mvm *mvm, struct ieee80211_vif *vif);
2235 void iwl_mvm_vif_dbgfs_rm_link(struct iwl_mvm *mvm, struct ieee80211_vif *vif);
2237 static inline void iwl_mvm_dbgfs_register(struct iwl_mvm *mvm)
2241 iwl_mvm_vif_dbgfs_add_link(struct iwl_mvm *mvm, struct ieee80211_vif *vif)
2245 iwl_mvm_vif_dbgfs_rm_link(struct iwl_mvm *mvm, struct ieee80211_vif *vif)
2251 int iwl_mvm_send_lq_cmd(struct iwl_mvm *mvm, struct iwl_lq_cmd *lq);
2252 void iwl_mvm_update_frame_stats(struct iwl_mvm *mvm, u32 rate, bool agg);
2254 void rs_update_last_rssi(struct iwl_mvm *mvm,
2259 int iwl_mvm_power_update_device(struct iwl_mvm *mvm);
2260 int iwl_mvm_power_update_mac(struct iwl_mvm *mvm);
2261 int iwl_mvm_power_update_ps(struct iwl_mvm *mvm);
2262 int iwl_mvm_power_mac_dbgfs_read(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2265 void iwl_mvm_power_vif_assoc(struct iwl_mvm *mvm, struct ieee80211_vif *vif);
2266 void iwl_mvm_power_uapsd_misbehaving_ap_notif(struct iwl_mvm *mvm,
2270 int iwl_mvm_leds_init(struct iwl_mvm *mvm);
2271 void iwl_mvm_leds_exit(struct iwl_mvm *mvm);
2272 void iwl_mvm_leds_sync(struct iwl_mvm *mvm);
2274 static inline int iwl_mvm_leds_init(struct iwl_mvm *mvm)
2278 static inline void iwl_mvm_leds_exit(struct iwl_mvm *mvm)
2281 static inline void iwl_mvm_leds_sync(struct iwl_mvm *mvm)
2300 void iwl_mvm_set_last_nonqos_seq(struct iwl_mvm *mvm,
2302 void iwl_mvm_fast_suspend(struct iwl_mvm *mvm);
2303 int iwl_mvm_fast_resume(struct iwl_mvm *mvm);
2306 iwl_mvm_set_last_nonqos_seq(struct iwl_mvm *mvm, struct ieee80211_vif *vif)
2310 static inline void iwl_mvm_fast_suspend(struct iwl_mvm *mvm)
2314 static inline int iwl_mvm_fast_resume(struct iwl_mvm *mvm)
2321 int iwl_mvm_send_proto_offload(struct iwl_mvm *mvm,
2329 int iwl_mvm_send_bt_init_conf(struct iwl_mvm *mvm);
2330 void iwl_mvm_rx_bt_coex_notif(struct iwl_mvm *mvm,
2332 void iwl_mvm_bt_rssi_event(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2334 void iwl_mvm_bt_coex_vif_change(struct iwl_mvm *mvm);
2335 u16 iwl_mvm_coex_agg_time_limit(struct iwl_mvm *mvm,
2337 bool iwl_mvm_bt_coex_is_mimo_allowed(struct iwl_mvm *mvm,
2339 bool iwl_mvm_bt_coex_is_ant_avail(struct iwl_mvm *mvm, u8 ant);
2340 bool iwl_mvm_bt_coex_is_shared_ant_avail(struct iwl_mvm *mvm);
2341 bool iwl_mvm_bt_coex_is_tpc_allowed(struct iwl_mvm *mvm,
2343 u8 iwl_mvm_bt_coex_get_single_ant_msk(struct iwl_mvm *mvm, u8 enabled_ants);
2344 u8 iwl_mvm_bt_coex_tx_prio(struct iwl_mvm *mvm, struct ieee80211_hdr *hdr,
2358 int iwl_mvm_enable_beacon_filter(struct iwl_mvm *mvm,
2360 int iwl_mvm_disable_beacon_filter(struct iwl_mvm *mvm,
2363 void iwl_mvm_update_smps(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2368 iwl_mvm_update_smps_on_active_links(struct iwl_mvm *mvm,
2372 bool iwl_mvm_rx_diversity_allowed(struct iwl_mvm *mvm,
2378 int iwl_mvm_update_low_latency(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2382 bool iwl_mvm_low_latency(struct iwl_mvm *mvm);
2383 bool iwl_mvm_low_latency_band(struct iwl_mvm *mvm, enum nl80211_band band);
2384 void iwl_mvm_send_low_latency_cmd(struct iwl_mvm *mvm, bool low_latency,
2442 static inline u32 iwl_mvm_flushable_queues(struct iwl_mvm *mvm)
2448 void iwl_mvm_stop_device(struct iwl_mvm *mvm);
2451 void iwl_mvm_tt_tx_backoff(struct iwl_mvm *mvm, u32 backoff);
2452 void iwl_mvm_temp_notif(struct iwl_mvm *mvm,
2454 void iwl_mvm_tt_handler(struct iwl_mvm *mvm);
2455 void iwl_mvm_thermal_initialize(struct iwl_mvm *mvm, u32 min_backoff);
2456 void iwl_mvm_thermal_exit(struct iwl_mvm *mvm);
2457 void iwl_mvm_set_hw_ctkill_state(struct iwl_mvm *mvm, bool state);
2458 int iwl_mvm_get_temp(struct iwl_mvm *mvm, s32 *temp);
2459 void iwl_mvm_ct_kill_notif(struct iwl_mvm *mvm, struct iwl_rx_cmd_buffer *rxb);
2460 void iwl_mvm_enter_ctkill(struct iwl_mvm *mvm);
2461 int iwl_mvm_send_temp_report_ths_cmd(struct iwl_mvm *mvm);
2462 int iwl_mvm_ctdp_command(struct iwl_mvm *mvm, u32 op, u32 budget);
2467 void iwl_mvm_vendor_cmds_register(struct iwl_mvm *mvm);
2471 static inline void iwl_mvm_vendor_cmds_register(struct iwl_mvm *mvm) {}
2477 iwl_mvm_update_mcc(struct iwl_mvm *mvm, const char *alpha2,
2479 int iwl_mvm_init_mcc(struct iwl_mvm *mvm);
2480 void iwl_mvm_rx_chub_update_mcc(struct iwl_mvm *mvm,
2486 struct ieee80211_regdomain *iwl_mvm_get_current_regdomain(struct iwl_mvm *mvm,
2488 int iwl_mvm_init_fw_regd(struct iwl_mvm *mvm, bool force_regd_sync);
2489 void iwl_mvm_update_changed_regdom(struct iwl_mvm *mvm);
2492 int iwl_mvm_sf_update(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2496 int iwl_mvm_ftm_start_responder(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2498 void iwl_mvm_ftm_restart_responder(struct iwl_mvm *mvm,
2501 void iwl_mvm_ftm_responder_stats(struct iwl_mvm *mvm,
2504 int iwl_mvm_ftm_resp_remove_pasn_sta(struct iwl_mvm *mvm,
2506 int iwl_mvm_ftm_respoder_add_pasn_sta(struct iwl_mvm *mvm,
2511 void iwl_mvm_ftm_responder_clear(struct iwl_mvm *mvm,
2515 void iwl_mvm_ftm_restart(struct iwl_mvm *mvm);
2516 void iwl_mvm_ftm_range_resp(struct iwl_mvm *mvm,
2518 void iwl_mvm_ftm_lc_notif(struct iwl_mvm *mvm,
2520 int iwl_mvm_ftm_start(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2522 void iwl_mvm_ftm_abort(struct iwl_mvm *mvm, struct cfg80211_pmsr_request *req);
2523 void iwl_mvm_ftm_initiator_smooth_config(struct iwl_mvm *mvm);
2524 void iwl_mvm_ftm_initiator_smooth_stop(struct iwl_mvm *mvm);
2525 int iwl_mvm_ftm_add_pasn_sta(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2528 void iwl_mvm_ftm_remove_pasn_sta(struct iwl_mvm *mvm, u8 *addr);
2538 int iwl_mvm_tdls_sta_count(struct iwl_mvm *mvm, struct ieee80211_vif *vif);
2539 void iwl_mvm_teardown_tdls_peers(struct iwl_mvm *mvm);
2540 void iwl_mvm_recalc_tdls_state(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2556 void iwl_mvm_rx_tdls_notif(struct iwl_mvm *mvm, struct iwl_rx_cmd_buffer *rxb);
2559 void iwl_mvm_sync_rx_queues_internal(struct iwl_mvm *mvm,
2563 struct ieee80211_vif *iwl_mvm_get_bss_vif(struct iwl_mvm *mvm);
2564 struct ieee80211_vif *iwl_mvm_get_vif_by_macid(struct iwl_mvm *mvm, u32 macid);
2565 bool iwl_mvm_is_vif_assoc(struct iwl_mvm *mvm);
2571 void iwl_mvm_recalc_tcm(struct iwl_mvm *mvm);
2572 void iwl_mvm_pause_tcm(struct iwl_mvm *mvm, bool with_cancel);
2573 void iwl_mvm_resume_tcm(struct iwl_mvm *mvm);
2574 void iwl_mvm_tcm_add_vif(struct iwl_mvm *mvm, struct ieee80211_vif *vif);
2575 void iwl_mvm_tcm_rm_vif(struct iwl_mvm *mvm, struct ieee80211_vif *vif);
2578 void iwl_mvm_nic_restart(struct iwl_mvm *mvm, bool fw_error);
2579 unsigned int iwl_mvm_get_wd_timeout(struct iwl_mvm *mvm,
2582 void iwl_mvm_connection_loss(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2584 void iwl_mvm_event_frame_timeout_callback(struct iwl_mvm *mvm,
2590 void iwl_mvm_ptp_init(struct iwl_mvm *mvm);
2591 void iwl_mvm_ptp_remove(struct iwl_mvm *mvm);
2592 u64 iwl_mvm_ptp_get_adj_time(struct iwl_mvm *mvm, u64 base_time);
2593 int iwl_mvm_sar_select_profile(struct iwl_mvm *mvm, int prof_a, int prof_b);
2594 int iwl_mvm_get_sar_geo_profile(struct iwl_mvm *mvm);
2595 int iwl_mvm_ppag_send_cmd(struct iwl_mvm *mvm);
2596 void iwl_mvm_get_bios_tables(struct iwl_mvm *mvm);
2609 int iwl_mvm_sec_key_add(struct iwl_mvm *mvm,
2613 int iwl_mvm_sec_key_del(struct iwl_mvm *mvm,
2617 int iwl_mvm_sec_key_del_pasn(struct iwl_mvm *mvm,
2621 void iwl_mvm_sec_key_remove_ap(struct iwl_mvm *mvm,
2625 int iwl_mvm_mld_update_sta_keys(struct iwl_mvm *mvm,
2630 int iwl_mvm_mld_send_key(struct iwl_mvm *mvm, u32 sta_mask, u32 key_flags,
2632 u32 iwl_mvm_get_sec_flags(struct iwl_mvm *mvm,
2637 bool iwl_rfi_supported(struct iwl_mvm *mvm);
2638 int iwl_rfi_send_config_cmd(struct iwl_mvm *mvm,
2640 struct iwl_rfi_freq_table_resp_cmd *iwl_rfi_get_freq_table(struct iwl_mvm *mvm);
2641 void iwl_rfi_deactivate_notif_handler(struct iwl_mvm *mvm,
2695 int (*__assign_vif_chanctx)(struct iwl_mvm *mvm,
2700 void (*__unassign_vif_chanctx)(struct iwl_mvm *mvm,
2715 static inline bool iwl_mvm_has_ultra_hb_channel(struct iwl_mvm *mvm)
2721 static inline void *iwl_mvm_chan_info_cmd_tail(struct iwl_mvm *mvm,
2729 static inline size_t iwl_mvm_chan_info_padding(struct iwl_mvm *mvm)
2736 static inline void iwl_mvm_set_chan_info(struct iwl_mvm *mvm,
2758 iwl_mvm_set_chan_info_chandef(struct iwl_mvm *mvm,
2793 struct iwl_mvm_csme_conn_info *iwl_mvm_get_csme_conn_info(struct iwl_mvm *mvm);
2794 static inline int iwl_mvm_mei_get_ownership(struct iwl_mvm *mvm)
2801 static inline void iwl_mvm_mei_tx_copy_to_csme(struct iwl_mvm *mvm,
2809 static inline void iwl_mvm_mei_host_disassociated(struct iwl_mvm *mvm)
2815 static inline void iwl_mvm_mei_device_state(struct iwl_mvm *mvm, bool up)
2821 static inline void iwl_mvm_mei_set_sw_rfkill_state(struct iwl_mvm *mvm)
2831 static inline bool iwl_mvm_has_p2p_over_aux(struct iwl_mvm *mvm)
2838 static inline bool iwl_mvm_mei_filter_scan(struct iwl_mvm *mvm,
2854 void iwl_mvm_send_roaming_forbidden_event(struct iwl_mvm *mvm,
2942 int iwl_mvm_pre_channel_switch(struct iwl_mvm *mvm,
2976 int iwl_mvm_set_tx_power(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
2981 int iwl_mvm_update_mu_groups(struct iwl_mvm *mvm, struct ieee80211_vif *vif);
2982 bool iwl_mvm_enable_fils(struct iwl_mvm *mvm,
2984 bool iwl_mvm_is_ftm_responder_chanctx(struct iwl_mvm *mvm,
2988 iwl_mvm_chanctx_def(struct iwl_mvm *mvm, struct ieee80211_chanctx_conf *ctx)
3000 int iwl_mvm_roc_add_cmd(struct iwl_mvm *mvm,
3006 bool iwl_mvm_vif_has_esr_cap(struct iwl_mvm *mvm, struct ieee80211_vif *vif);
3007 void iwl_mvm_block_esr(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
3010 int iwl_mvm_block_esr_sync(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
3012 void iwl_mvm_unblock_esr(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
3014 void iwl_mvm_exit_esr(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
3017 s8 iwl_mvm_get_esr_rssi_thresh(struct iwl_mvm *mvm,
3020 void iwl_mvm_bt_coex_update_link_esr(struct iwl_mvm *mvm,
3024 iwl_mvm_bt_coex_calculate_esr_mode(struct iwl_mvm *mvm,
3028 int iwl_mvm_esr_non_bss_link(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
3032 iwl_mvm_send_ap_tx_power_constraint_cmd(struct iwl_mvm *mvm,