/linux/drivers/net/wireless/intel/iwlwifi/mvm/ |
H A D | fw.c | 36 static int iwl_send_tx_ant_cfg(struct iwl_mvm *mvm, u8 valid_tx_ant) in iwl_send_tx_ant_cfg() argument 42 IWL_DEBUG_FW(mvm, "select valid tx ant: %u\n", valid_tx_ant); in iwl_send_tx_ant_cfg() 43 return iwl_mvm_send_cmd_pdu(mvm, TX_ANT_CONFIGURATION_CMD, 0, in iwl_send_tx_ant_cfg() 47 static int iwl_send_rss_cfg_cmd(struct iwl_mvm *mvm) in iwl_send_rss_cfg_cmd() argument 60 if (mvm->trans->num_rx_queues == 1) in iwl_send_rss_cfg_cmd() 66 1 + (i % (mvm->trans->num_rx_queues - 1)); in iwl_send_rss_cfg_cmd() 69 return iwl_mvm_send_cmd_pdu(mvm, RSS_CONFIG_CMD, 0, sizeof(cmd), &cmd); in iwl_send_rss_cfg_cmd() 72 static int iwl_mvm_send_dqa_cmd(struct iwl_mvm *mvm) in iwl_mvm_send_dqa_cmd() argument 80 ret = iwl_mvm_send_cmd_pdu(mvm, cmd_id, 0, sizeof(dqa_cmd), &dqa_cmd); in iwl_mvm_send_dqa_cmd() 82 IWL_ERR(mvm, "Failed to send DQA enabling command: %d\n", ret); in iwl_mvm_send_dqa_cmd() [all …]
|
H A D | tt.c | 13 void iwl_mvm_enter_ctkill(struct iwl_mvm *mvm) in iwl_mvm_enter_ctkill() argument 15 struct iwl_mvm_tt_mgmt *tt = &mvm->thermal_throttle; in iwl_mvm_enter_ctkill() 18 if (test_bit(IWL_MVM_STATUS_HW_CTKILL, &mvm->status)) in iwl_mvm_enter_ctkill() 21 IWL_ERR(mvm, "Enter CT Kill\n"); in iwl_mvm_enter_ctkill() 22 iwl_mvm_set_hw_ctkill_state(mvm, true); in iwl_mvm_enter_ctkill() 24 if (!iwl_mvm_is_tt_in_fw(mvm)) { in iwl_mvm_enter_ctkill() 33 if (!mvm->temperature_test) in iwl_mvm_enter_ctkill() 38 static void iwl_mvm_exit_ctkill(struct iwl_mvm *mvm) in iwl_mvm_exit_ctkill() argument 40 if (!test_bit(IWL_MVM_STATUS_HW_CTKILL, &mvm->status)) in iwl_mvm_exit_ctkill() 43 IWL_ERR(mvm, "Exit CT Kill\n"); in iwl_mvm_exit_ctkill() [all …]
|
H A D | ptp.c | 23 static void iwl_mvm_ptp_update_new_read(struct iwl_mvm *mvm, u32 gp2) in iwl_mvm_ptp_update_new_read() argument 28 if (gp2 < mvm->ptp_data.last_gp2 && in iwl_mvm_ptp_update_new_read() 29 mvm->ptp_data.last_gp2 - gp2 < IWL_PTP_WRAP_THRESHOLD_USEC) { in iwl_mvm_ptp_update_new_read() 30 IWL_DEBUG_INFO(mvm, in iwl_mvm_ptp_update_new_read() 32 gp2, mvm->ptp_data.last_gp2); in iwl_mvm_ptp_update_new_read() 36 if (gp2 < mvm->ptp_data.last_gp2) { in iwl_mvm_ptp_update_new_read() 37 mvm->ptp_data.wrap_counter++; in iwl_mvm_ptp_update_new_read() 38 IWL_DEBUG_INFO(mvm, in iwl_mvm_ptp_update_new_read() 40 mvm->ptp_data.wrap_counter); in iwl_mvm_ptp_update_new_read() 43 mvm->ptp_data.last_gp2 = gp2; in iwl_mvm_ptp_update_new_read() [all …]
|
H A D | ops.c | 80 struct iwl_mvm *mvm = IWL_OP_MODE_GET_MVM(op_mode); in iwl_mvm_nic_config() local 83 u32 phy_config = iwl_mvm_get_phy_config(mvm); in iwl_mvm_nic_config() 92 IWL_DEBUG_INFO(mvm, "Radio type=0x%x-0x%x-0x%x\n", radio_cfg_type, in iwl_mvm_nic_config() 95 if (mvm->trans->trans_cfg->device_family >= IWL_DEVICE_FAMILY_AX210) in iwl_mvm_nic_config() 99 reg_val = CSR_HW_REV_STEP_DASH(mvm->trans->hw_rev); in iwl_mvm_nic_config() 117 if (mvm->trans->trans_cfg->device_family < IWL_DEVICE_FAMILY_8000) in iwl_mvm_nic_config() 120 if (iwl_fw_dbg_is_d3_debug_enabled(&mvm->fwrt)) in iwl_mvm_nic_config() 123 iwl_trans_set_bits_mask(mvm->trans, CSR_HW_IF_CONFIG_REG, in iwl_mvm_nic_config() 138 if (!mvm->trans->cfg->apmg_not_supported) in iwl_mvm_nic_config() 139 iwl_set_bits_mask_prph(mvm->trans, APMG_PS_CTRL_REG, in iwl_mvm_nic_config() [all …]
|
H A D | time-event.c | 25 void iwl_mvm_te_clear_data(struct iwl_mvm *mvm, in iwl_mvm_te_clear_data() argument 28 lockdep_assert_held(&mvm->time_event_lock); in iwl_mvm_te_clear_data() 48 static void iwl_mvm_cleanup_roc(struct iwl_mvm *mvm) in iwl_mvm_cleanup_roc() argument 50 struct ieee80211_vif *bss_vif = iwl_mvm_get_bss_vif(mvm); in iwl_mvm_cleanup_roc() 51 struct ieee80211_vif *vif = mvm->p2p_device_vif; in iwl_mvm_cleanup_roc() 53 lockdep_assert_held(&mvm->mutex); in iwl_mvm_cleanup_roc() 66 if (test_and_clear_bit(IWL_MVM_STATUS_ROC_P2P_RUNNING, &mvm->status)) { in iwl_mvm_cleanup_roc() 80 iwl_mvm_flush_sta(mvm, mvmvif->deflink.bcast_sta.sta_id, in iwl_mvm_cleanup_roc() 83 if (mvm->mld_api_is_used) { in iwl_mvm_cleanup_roc() 84 iwl_mvm_mld_rm_bcast_sta(mvm, vif, in iwl_mvm_cleanup_roc() [all …]
|
H A D | utils.c | 21 int iwl_mvm_send_cmd(struct iwl_mvm *mvm, struct iwl_host_cmd *cmd) in iwl_mvm_send_cmd() argument 26 if (WARN_ON(mvm->d3_test_active)) in iwl_mvm_send_cmd() 36 lockdep_assert_held(&mvm->mutex); in iwl_mvm_send_cmd() 38 ret = iwl_trans_send_cmd(mvm->trans, cmd); in iwl_mvm_send_cmd() 57 int iwl_mvm_send_cmd_pdu(struct iwl_mvm *mvm, u32 id, in iwl_mvm_send_cmd_pdu() argument 67 return iwl_mvm_send_cmd(mvm, &cmd); in iwl_mvm_send_cmd_pdu() 73 int iwl_mvm_send_cmd_status(struct iwl_mvm *mvm, struct iwl_host_cmd *cmd, in iwl_mvm_send_cmd_status() argument 80 lockdep_assert_held(&mvm->mutex); in iwl_mvm_send_cmd_status() 83 if (WARN_ON(mvm->d3_test_active)) in iwl_mvm_send_cmd_status() 97 ret = iwl_trans_send_cmd(mvm->trans, cmd); in iwl_mvm_send_cmd_status() [all …]
|
H A D | nvm.c | 33 static int iwl_nvm_write_chunk(struct iwl_mvm *mvm, u16 section, in iwl_nvm_write_chunk() argument 54 ret = iwl_mvm_send_cmd(mvm, &cmd); in iwl_nvm_write_chunk() 62 IWL_ERR(mvm, in iwl_nvm_write_chunk() 72 static int iwl_nvm_read_chunk(struct iwl_mvm *mvm, u16 section, in iwl_nvm_read_chunk() argument 93 ret = iwl_mvm_send_cmd(mvm, &cmd); in iwl_nvm_read_chunk() 116 IWL_DEBUG_EEPROM(mvm->trans->dev, in iwl_nvm_read_chunk() 121 IWL_DEBUG_EEPROM(mvm->trans->dev, in iwl_nvm_read_chunk() 123 ret, mvm->trans->name); in iwl_nvm_read_chunk() 130 IWL_ERR(mvm, "NVM ACCESS response with invalid offset %d\n", in iwl_nvm_read_chunk() 145 static int iwl_nvm_write_section(struct iwl_mvm *mvm, u16 section, in iwl_nvm_write_section() argument [all …]
|
H A D | debugfs.c | 27 struct iwl_mvm *mvm = file->private_data; in iwl_dbgfs_ctdp_budget_read() local 31 if (!iwl_mvm_is_ctdp_supported(mvm)) in iwl_dbgfs_ctdp_budget_read() 34 if (!iwl_mvm_firmware_running(mvm) || in iwl_dbgfs_ctdp_budget_read() 35 mvm->fwrt.cur_fw_img != IWL_UCODE_REGULAR) in iwl_dbgfs_ctdp_budget_read() 38 mutex_lock(&mvm->mutex); in iwl_dbgfs_ctdp_budget_read() 39 budget = iwl_mvm_ctdp_command(mvm, CTDP_CMD_OPERATION_REPORT, 0); in iwl_dbgfs_ctdp_budget_read() 40 mutex_unlock(&mvm->mutex); in iwl_dbgfs_ctdp_budget_read() 50 static ssize_t iwl_dbgfs_stop_ctdp_write(struct iwl_mvm *mvm, char *buf, in iwl_dbgfs_stop_ctdp_write() argument 57 IWL_DEBUG_INFO(mvm, in iwl_dbgfs_stop_ctdp_write() 65 if (!force && !iwl_mvm_is_ctdp_supported(mvm)) in iwl_dbgfs_stop_ctdp_write() [all …]
|
H A D | led.c | 11 static void iwl_mvm_send_led_fw_cmd(struct iwl_mvm *mvm, bool on) in iwl_mvm_send_led_fw_cmd() argument 24 if (!iwl_mvm_firmware_running(mvm)) in iwl_mvm_send_led_fw_cmd() 27 err = iwl_mvm_send_cmd(mvm, &cmd); in iwl_mvm_send_led_fw_cmd() 30 IWL_WARN(mvm, "LED command failed: %d\n", err); in iwl_mvm_send_led_fw_cmd() 33 static void iwl_mvm_led_set(struct iwl_mvm *mvm, bool on) in iwl_mvm_led_set() argument 35 if (fw_has_capa(&mvm->fw->ucode_capa, in iwl_mvm_led_set() 37 iwl_mvm_send_led_fw_cmd(mvm, on); in iwl_mvm_led_set() 41 iwl_write32(mvm->trans, CSR_LED_REG, in iwl_mvm_led_set() 48 struct iwl_mvm *mvm = container_of(led_cdev, struct iwl_mvm, led); in iwl_led_brightness_set() local 50 iwl_mvm_led_set(mvm, brightness > 0); in iwl_led_brightness_set() [all …]
|
H A D | ftm-initiator.c | 49 int iwl_mvm_ftm_add_pasn_sta(struct iwl_mvm *mvm, struct ieee80211_vif *vif, in iwl_mvm_ftm_add_pasn_sta() argument 57 lockdep_assert_held(&mvm->mutex); in iwl_mvm_ftm_add_pasn_sta() 62 iwl_mvm_ftm_remove_pasn_sta(mvm, addr); in iwl_mvm_ftm_add_pasn_sta() 96 sta = rcu_dereference(mvm->fw_id_to_mac_id[sta_id]); in iwl_mvm_ftm_add_pasn_sta() 106 IWL_ERR(mvm, "Invalid key length: tk_len=%u hltk_len=%u\n", in iwl_mvm_ftm_add_pasn_sta() 112 IWL_ERR(mvm, "TK and HLTK not set\n"); in iwl_mvm_ftm_add_pasn_sta() 126 list_add_tail(&pasn->list, &mvm->ftm_initiator.pasn_list); in iwl_mvm_ftm_add_pasn_sta() 133 void iwl_mvm_ftm_remove_pasn_sta(struct iwl_mvm *mvm, u8 *addr) in iwl_mvm_ftm_remove_pasn_sta() argument 137 lockdep_assert_held(&mvm->mutex); in iwl_mvm_ftm_remove_pasn_sta() 139 list_for_each_entry_safe(entry, prev, &mvm->ftm_initiator.pasn_list, in iwl_mvm_ftm_remove_pasn_sta() [all …]
|
H A D | mac-ctxt.c | 47 struct iwl_mvm *mvm; member 185 void iwl_mvm_mac_ctxt_recalc_tsf_id(struct iwl_mvm *mvm, in iwl_mvm_mac_ctxt_recalc_tsf_id() argument 190 .mvm = mvm, in iwl_mvm_mac_ctxt_recalc_tsf_id() 198 mvm->hw, IEEE80211_IFACE_ITER_RESUME_ALL, in iwl_mvm_mac_ctxt_recalc_tsf_id() 208 int iwl_mvm_mac_ctxt_init(struct iwl_mvm *mvm, struct ieee80211_vif *vif) in iwl_mvm_mac_ctxt_init() argument 212 .mvm = mvm, in iwl_mvm_mac_ctxt_init() 222 lockdep_assert_held(&mvm->mutex); in iwl_mvm_mac_ctxt_init() 243 if (!mvm->mld_api_is_used) { in iwl_mvm_mac_ctxt_init() 257 mvm->hw, IEEE80211_IFACE_ITER_RESUME_ALL, in iwl_mvm_mac_ctxt_init() 274 if (WARN_ON_ONCE(test_bit(IWL_MVM_STATUS_IN_HW_RESTART, &mvm->status))) in iwl_mvm_mac_ctxt_init() [all …]
|
H A D | d3.c | 23 struct iwl_mvm *mvm = IWL_MAC80211_GET_MVM(hw); in iwl_mvm_set_rekey_data() local 26 mutex_lock(&mvm->mutex); in iwl_mvm_set_rekey_data() 37 mutex_unlock(&mvm->mutex); in iwl_mvm_set_rekey_data() 115 struct iwl_mvm *mvm = IWL_MAC80211_GET_MVM(hw); in iwl_mvm_wowlan_program_keys() local 155 mutex_lock(&mvm->mutex); in iwl_mvm_wowlan_program_keys() 156 ret = iwl_mvm_send_cmd_pdu(mvm, WEP_KEY, 0, sizeof(wkc), &wkc); in iwl_mvm_wowlan_program_keys() 159 mvm->ptk_ivlen = key->iv_len; in iwl_mvm_wowlan_program_keys() 160 mvm->ptk_icvlen = key->icv_len; in iwl_mvm_wowlan_program_keys() 161 mvm->gtk_ivlen = key->iv_len; in iwl_mvm_wowlan_program_keys() 162 mvm->gtk_icvlen = key->icv_len; in iwl_mvm_wowlan_program_keys() [all …]
|
H A D | mld-mac.c | 7 static void iwl_mvm_mld_set_he_support(struct iwl_mvm *mvm, in iwl_mvm_mld_set_he_support() argument 17 static void iwl_mvm_mld_mac_ctxt_cmd_common(struct iwl_mvm *mvm, in iwl_mvm_mld_mac_ctxt_cmd_common() argument 40 cpu_to_le32(!iwl_mvm_is_nic_ack_enabled(mvm, vif)); in iwl_mvm_mld_mac_ctxt_cmd_common() 54 iwl_mvm_mld_set_he_support(mvm, vif, cmd); in iwl_mvm_mld_mac_ctxt_cmd_common() 66 iwl_mvm_mld_set_he_support(mvm, vif, cmd); in iwl_mvm_mld_mac_ctxt_cmd_common() 82 static int iwl_mvm_mld_mac_ctxt_send_cmd(struct iwl_mvm *mvm, in iwl_mvm_mld_mac_ctxt_send_cmd() argument 85 int ret = iwl_mvm_send_cmd_pdu(mvm, in iwl_mvm_mld_mac_ctxt_send_cmd() 89 IWL_ERR(mvm, "Failed to send MAC_CONFIG_CMD (action:%d): %d\n", in iwl_mvm_mld_mac_ctxt_send_cmd() 94 static int iwl_mvm_mld_mac_ctxt_cmd_sta(struct iwl_mvm *mvm, in iwl_mvm_mld_mac_ctxt_cmd_sta() argument 104 iwl_mvm_mld_mac_ctxt_cmd_common(mvm, vif, &cmd, action); in iwl_mvm_mld_mac_ctxt_cmd_sta() [all …]
|
H A D | time-sync.c | 33 static struct sk_buff *iwl_mvm_time_sync_find_skb(struct iwl_mvm *mvm, u8 *addr, in iwl_mvm_time_sync_find_skb() argument 42 while ((skb = skb_dequeue(&mvm->time_sync.frame_list))) { in iwl_mvm_time_sync_find_skb() 58 void iwl_mvm_time_sync_msmt_event(struct iwl_mvm *mvm, in iwl_mvm_time_sync_msmt_event() argument 67 iwl_mvm_time_sync_find_skb(mvm, notif->peer_addr, in iwl_mvm_time_sync_msmt_event() 72 IWL_DEBUG_INFO(mvm, "Time sync event but no pending skb\n"); in iwl_mvm_time_sync_msmt_event() 77 adj_time = iwl_mvm_ptp_get_adj_time(mvm, ts_10ns * 10); in iwl_mvm_time_sync_msmt_event() 82 adj_time = iwl_mvm_ptp_get_adj_time(mvm, ts_10ns * 10); in iwl_mvm_time_sync_msmt_event() 86 IWL_DEBUG_INFO(mvm, in iwl_mvm_time_sync_msmt_event() 90 ieee80211_rx_napi(mvm->hw, NULL, skb, NULL); in iwl_mvm_time_sync_msmt_event() 93 void iwl_mvm_time_sync_msmt_confirm_event(struct iwl_mvm *mvm, in iwl_mvm_time_sync_msmt_confirm_event() argument [all …]
|
H A D | rs.c | 114 typedef bool (*allow_column_func_t) (struct iwl_mvm *mvm, 127 static bool rs_ant_allow(struct iwl_mvm *mvm, struct ieee80211_sta *sta, in rs_ant_allow() argument 131 return iwl_mvm_bt_coex_is_ant_avail(mvm, next_col->ant); in rs_ant_allow() 134 static bool rs_mimo_allow(struct iwl_mvm *mvm, struct ieee80211_sta *sta, in rs_mimo_allow() argument 144 if (num_of_ant(iwl_mvm_get_valid_tx_ant(mvm)) < 2) in rs_mimo_allow() 147 if (!iwl_mvm_bt_coex_is_mimo_allowed(mvm, sta)) in rs_mimo_allow() 150 if (mvm->nvm_data->sku_cap_mimo_disabled) in rs_mimo_allow() 156 static bool rs_siso_allow(struct iwl_mvm *mvm, struct ieee80211_sta *sta, in rs_siso_allow() argument 166 static bool rs_sgi_allow(struct iwl_mvm *mvm, struct ieee80211_sta *sta, in rs_sgi_allow() argument 374 static void rs_rate_scale_perform(struct iwl_mvm *mvm, [all …]
|
H A D | mld-key.c | 11 static u32 iwl_mvm_get_sec_sta_mask(struct iwl_mvm *mvm, in iwl_mvm_get_sec_sta_mask() argument 19 lockdep_assert_held(&mvm->mutex); in iwl_mvm_get_sec_sta_mask() 56 return iwl_mvm_sta_fw_id_mask(mvm, sta, keyconf->link_id); in iwl_mvm_get_sec_sta_mask() 59 u32 iwl_mvm_get_sec_flags(struct iwl_mvm *mvm, in iwl_mvm_get_sec_flags() argument 69 lockdep_assert_held(&mvm->mutex); in iwl_mvm_get_sec_flags() 132 struct iwl_mvm *mvm = IWL_MAC80211_GET_MVM(hw); in iwl_mvm_mld_update_sta_key() local 139 cpu_to_le32(iwl_mvm_get_sec_flags(mvm, vif, sta, key)), in iwl_mvm_mld_update_sta_key() 147 err = iwl_mvm_send_cmd_pdu(mvm, cmd_id, 0, sizeof(cmd), &cmd); in iwl_mvm_mld_update_sta_key() 153 int iwl_mvm_mld_update_sta_keys(struct iwl_mvm *mvm, in iwl_mvm_mld_update_sta_keys() argument 165 ieee80211_iter_keys(mvm->hw, vif, iwl_mvm_mld_update_sta_key, in iwl_mvm_mld_update_sta_keys() [all …]
|
H A D | quota.c | 89 static void iwl_mvm_adjust_quota_for_noa(struct iwl_mvm *mvm, in iwl_mvm_adjust_quota_for_noa() argument 96 if (!mvm->noa_duration || !mvm->noa_vif) in iwl_mvm_adjust_quota_for_noa() 99 mvmvif = iwl_mvm_vif_from_mac80211(mvm->noa_vif); in iwl_mvm_adjust_quota_for_noa() 104 beacon_int = mvm->noa_vif->bss_conf.beacon_int; in iwl_mvm_adjust_quota_for_noa() 108 iwl_mvm_quota_cmd_get_quota(mvm, cmd, in iwl_mvm_adjust_quota_for_noa() 117 quota *= (beacon_int - mvm->noa_duration); in iwl_mvm_adjust_quota_for_noa() 120 IWL_DEBUG_QUOTA(mvm, "quota: adjust for NoA from %d to %d\n", in iwl_mvm_adjust_quota_for_noa() 128 int iwl_mvm_update_quotas(struct iwl_mvm *mvm, in iwl_mvm_update_quotas() argument 139 struct iwl_time_quota_cmd *last = &mvm->last_quota_cmd; in iwl_mvm_update_quotas() 143 lockdep_assert_held(&mvm->mutex); in iwl_mvm_update_quotas() [all …]
|
H A D | time-event.h | 79 void iwl_mvm_protect_session(struct iwl_mvm *mvm, 94 void iwl_mvm_stop_session_protection(struct iwl_mvm *mvm, 100 void iwl_mvm_rx_time_event_notif(struct iwl_mvm *mvm, 108 void iwl_mvm_rx_roc_notif(struct iwl_mvm *mvm, 128 int iwl_mvm_start_p2p_roc(struct iwl_mvm *mvm, struct ieee80211_vif *vif, 140 void iwl_mvm_stop_roc(struct iwl_mvm *mvm, struct ieee80211_vif *vif); 152 void iwl_mvm_remove_time_event(struct iwl_mvm *mvm, 164 void iwl_mvm_te_clear_data(struct iwl_mvm *mvm, 167 void iwl_mvm_cleanup_roc_te(struct iwl_mvm *mvm); 170 void iwl_mvm_remove_csa_period(struct iwl_mvm *mvm, [all …]
|
H A D | rxmq.c | 14 static inline int iwl_mvm_check_pn(struct iwl_mvm *mvm, struct sk_buff *skb, in iwl_mvm_check_pn() argument 47 IWL_DEBUG_DROP(mvm, in iwl_mvm_check_pn() 91 static int iwl_mvm_create_skb(struct iwl_mvm *mvm, struct sk_buff *skb, in iwl_mvm_create_skb() argument 113 if (len > mic_crc_len && !ieee80211_hw_check(mvm->hw, RX_INCLUDES_FCS)) in iwl_mvm_create_skb() 174 else if (mvm->trans->trans_cfg->device_family < IWL_DEVICE_FAMILY_BZ) in iwl_mvm_create_skb() 207 static void iwl_mvm_add_rtap_sniffer_config(struct iwl_mvm *mvm, in iwl_mvm_add_rtap_sniffer_config() argument 212 const u16 vendor_data_len = sizeof(mvm->cur_aid); in iwl_mvm_add_rtap_sniffer_config() 214 if (!mvm->cur_aid) in iwl_mvm_add_rtap_sniffer_config() 230 memcpy(radiotap->data, &mvm->cur_aid, sizeof(mvm->cur_aid)); in iwl_mvm_add_rtap_sniffer_config() 236 static void iwl_mvm_pass_packet_to_mac80211(struct iwl_mvm *mvm, in iwl_mvm_pass_packet_to_mac80211() argument [all …]
|
H A D | rfi.c | 73 bool iwl_rfi_supported(struct iwl_mvm *mvm) in iwl_rfi_supported() argument 83 int iwl_rfi_send_config_cmd(struct iwl_mvm *mvm, struct iwl_rfi_lut_entry *rfi_table) in iwl_rfi_send_config_cmd() argument 94 if (!iwl_rfi_supported(mvm)) in iwl_rfi_send_config_cmd() 97 lockdep_assert_held(&mvm->mutex); in iwl_rfi_send_config_cmd() 108 ret = iwl_mvm_send_cmd(mvm, &hcmd); in iwl_rfi_send_config_cmd() 111 IWL_ERR(mvm, "Failed to send RFI config cmd %d\n", ret); in iwl_rfi_send_config_cmd() 116 struct iwl_rfi_freq_table_resp_cmd *iwl_rfi_get_freq_table(struct iwl_mvm *mvm) in iwl_rfi_get_freq_table() argument 126 if (!iwl_rfi_supported(mvm)) in iwl_rfi_get_freq_table() 129 mutex_lock(&mvm->mutex); in iwl_rfi_get_freq_table() 130 ret = iwl_mvm_send_cmd(mvm, &cmd); in iwl_rfi_get_freq_table() [all …]
|
H A D | sf.c | 96 static void iwl_mvm_fill_sf_command(struct iwl_mvm *mvm, in iwl_mvm_fill_sf_command() argument 175 static int iwl_mvm_sf_config(struct iwl_mvm *mvm, struct ieee80211_sta *sta, in iwl_mvm_sf_config() argument 187 if (new_state != SF_FULL_ON && mvm->sf_state == new_state) in iwl_mvm_sf_config() 192 iwl_mvm_fill_sf_command(mvm, &sf_cmd, NULL); in iwl_mvm_sf_config() 196 IWL_ERR(mvm, in iwl_mvm_sf_config() 200 iwl_mvm_fill_sf_command(mvm, &sf_cmd, sta); in iwl_mvm_sf_config() 203 iwl_mvm_fill_sf_command(mvm, &sf_cmd, NULL); in iwl_mvm_sf_config() 211 ret = iwl_mvm_send_cmd_pdu(mvm, REPLY_SF_CFG_CMD, CMD_ASYNC, in iwl_mvm_sf_config() 214 mvm->sf_state = new_state; in iwl_mvm_sf_config() 224 int iwl_mvm_sf_update(struct iwl_mvm *mvm, struct ieee80211_vif *changed_vif, in iwl_mvm_sf_update() argument [all …]
|
H A D | time-sync.h | 12 void iwl_mvm_time_sync_msmt_event(struct iwl_mvm *mvm, 14 void iwl_mvm_time_sync_msmt_confirm_event(struct iwl_mvm *mvm, 16 int iwl_mvm_time_sync_config(struct iwl_mvm *mvm, const u8 *addr, 20 bool iwl_mvm_time_sync_frame(struct iwl_mvm *mvm, struct sk_buff *skb, u8 *addr) in iwl_mvm_time_sync_frame() argument 22 if (ether_addr_equal(mvm->time_sync.peer_addr, addr) && in iwl_mvm_time_sync_frame() 24 skb_queue_tail(&mvm->time_sync.frame_list, skb); in iwl_mvm_time_sync_frame()
|
H A D | rs.h | 394 void iwl_mvm_rs_rate_init(struct iwl_mvm *mvm, 402 void iwl_mvm_rs_tx_status(struct iwl_mvm *mvm, struct ieee80211_sta *sta, 427 int iwl_mvm_tx_protection(struct iwl_mvm *mvm, struct iwl_mvm_sta *mvmsta, 431 void iwl_mvm_reset_frame_stats(struct iwl_mvm *mvm); 436 void iwl_mvm_rs_add_sta(struct iwl_mvm *mvm, struct iwl_mvm_sta *mvmsta); 437 void iwl_mvm_rs_add_sta_link(struct iwl_mvm *mvm, 440 void iwl_mvm_rs_fw_rate_init(struct iwl_mvm *mvm, 446 int rs_fw_tx_protection(struct iwl_mvm *mvm, struct iwl_mvm_sta *mvmsta, 448 void iwl_mvm_tlc_update_notif(struct iwl_mvm *mvm,
|
/linux/drivers/net/wireless/intel/iwlwifi/mvm/tests/ |
H A D | links.c | 61 static struct iwl_mvm mvm = { variable 397 mvm.trans = trans; in KUNIT_ARRAY_PARAM_DESC() 399 mvm.last_bt_notif.wifi_loss_low_rssi = params->bt; in KUNIT_ARRAY_PARAM_DESC() 400 mvmvif->mvm = &mvm; in KUNIT_ARRAY_PARAM_DESC()
|