/linux-5.19.10/drivers/net/wireless/intel/iwlwifi/mvm/ |
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 …]
|
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 …]
|
D | ops.c | 83 struct iwl_mvm *mvm = IWL_OP_MODE_GET_MVM(op_mode); in iwl_mvm_nic_config() local 86 u32 phy_config = iwl_mvm_get_phy_config(mvm); in iwl_mvm_nic_config() 96 reg_val = CSR_HW_REV_STEP_DASH(mvm->trans->hw_rev); in iwl_mvm_nic_config() 114 if (mvm->trans->trans_cfg->device_family < IWL_DEVICE_FAMILY_8000) in iwl_mvm_nic_config() 117 if (iwl_fw_dbg_is_d3_debug_enabled(&mvm->fwrt)) in iwl_mvm_nic_config() 120 iwl_trans_set_bits_mask(mvm->trans, CSR_HW_IF_CONFIG_REG, in iwl_mvm_nic_config() 130 IWL_DEBUG_INFO(mvm, "Radio type=0x%x-0x%x-0x%x\n", radio_cfg_type, 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() 144 static void iwl_mvm_rx_monitor_notif(struct iwl_mvm *mvm, in iwl_mvm_rx_monitor_notif() argument [all …]
|
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() 49 struct iwl_mvm *mvm = container_of(wk, struct iwl_mvm, roc_done_wk); in iwl_mvm_roc_done_wk() local 58 clear_bit(IWL_MVM_STATUS_ROC_RUNNING, &mvm->status); in iwl_mvm_roc_done_wk() 69 mutex_lock(&mvm->mutex); in iwl_mvm_roc_done_wk() 70 if (test_and_clear_bit(IWL_MVM_STATUS_NEED_FLUSH_P2P, &mvm->status)) { in iwl_mvm_roc_done_wk() 80 if (!WARN_ON(!mvm->p2p_device_vif)) { in iwl_mvm_roc_done_wk() 81 mvmvif = iwl_mvm_vif_from_mac80211(mvm->p2p_device_vif); in iwl_mvm_roc_done_wk() 82 iwl_mvm_flush_sta(mvm, &mvmvif->bcast_sta, true); in iwl_mvm_roc_done_wk() 93 if (test_and_clear_bit(IWL_MVM_STATUS_ROC_AUX_RUNNING, &mvm->status)) { in iwl_mvm_roc_done_wk() [all …]
|
D | mac80211.c | 91 static void iwl_mvm_reset_phy_ctxts(struct iwl_mvm *mvm) in iwl_mvm_reset_phy_ctxts() argument 95 memset(mvm->phy_ctxts, 0, sizeof(mvm->phy_ctxts)); in iwl_mvm_reset_phy_ctxts() 97 mvm->phy_ctxts[i].id = i; in iwl_mvm_reset_phy_ctxts() 98 mvm->phy_ctxts[i].ref = 0; in iwl_mvm_reset_phy_ctxts() 109 struct iwl_mvm *mvm = IWL_MAC80211_GET_MVM(hw); in iwl_mvm_get_regdomain() local 113 IWL_DEBUG_LAR(mvm, "Getting regdomain data for %s from FW\n", alpha2); in iwl_mvm_get_regdomain() 115 lockdep_assert_held(&mvm->mutex); in iwl_mvm_get_regdomain() 117 resp = iwl_mvm_update_mcc(mvm, alpha2, src_id); in iwl_mvm_get_regdomain() 119 IWL_DEBUG_LAR(mvm, "Could not get update from FW %d\n", in iwl_mvm_get_regdomain() 131 resp_ver = iwl_fw_lookup_notif_ver(mvm->fw, IWL_ALWAYS_LONG_GROUP, in iwl_mvm_get_regdomain() [all …]
|
D | tdls.c | 16 void iwl_mvm_teardown_tdls_peers(struct iwl_mvm *mvm) in iwl_mvm_teardown_tdls_peers() argument 22 lockdep_assert_held(&mvm->mutex); in iwl_mvm_teardown_tdls_peers() 24 for (i = 0; i < mvm->fw->ucode_capa.num_stations; i++) { in iwl_mvm_teardown_tdls_peers() 25 sta = rcu_dereference_protected(mvm->fw_id_to_mac_id[i], in iwl_mvm_teardown_tdls_peers() 26 lockdep_is_held(&mvm->mutex)); in iwl_mvm_teardown_tdls_peers() 38 int iwl_mvm_tdls_sta_count(struct iwl_mvm *mvm, struct ieee80211_vif *vif) in iwl_mvm_tdls_sta_count() argument 45 lockdep_assert_held(&mvm->mutex); in iwl_mvm_tdls_sta_count() 47 for (i = 0; i < mvm->fw->ucode_capa.num_stations; i++) { in iwl_mvm_tdls_sta_count() 48 sta = rcu_dereference_protected(mvm->fw_id_to_mac_id[i], in iwl_mvm_tdls_sta_count() 49 lockdep_is_held(&mvm->mutex)); in iwl_mvm_tdls_sta_count() [all …]
|
D | mvm.h | 317 struct iwl_mvm *mvm; member 632 struct iwl_mvm *mvm; member 682 struct iwl_mvm *mvm; member 1158 static inline bool iwl_mvm_is_radio_killed(struct iwl_mvm *mvm) in iwl_mvm_is_radio_killed() argument 1160 return test_bit(IWL_MVM_STATUS_HW_RFKILL, &mvm->status) || in iwl_mvm_is_radio_killed() 1161 test_bit(IWL_MVM_STATUS_HW_CTKILL, &mvm->status); in iwl_mvm_is_radio_killed() 1164 static inline bool iwl_mvm_is_radio_hw_killed(struct iwl_mvm *mvm) in iwl_mvm_is_radio_hw_killed() argument 1166 return test_bit(IWL_MVM_STATUS_HW_RFKILL, &mvm->status); in iwl_mvm_is_radio_hw_killed() 1169 static inline bool iwl_mvm_firmware_running(struct iwl_mvm *mvm) in iwl_mvm_firmware_running() argument 1171 return test_bit(IWL_MVM_STATUS_FIRMWARE_RUNNING, &mvm->status); in iwl_mvm_firmware_running() [all …]
|
D | nvm.c | 34 static int iwl_nvm_write_chunk(struct iwl_mvm *mvm, u16 section, in iwl_nvm_write_chunk() argument 55 ret = iwl_mvm_send_cmd(mvm, &cmd); in iwl_nvm_write_chunk() 63 IWL_ERR(mvm, in iwl_nvm_write_chunk() 73 static int iwl_nvm_read_chunk(struct iwl_mvm *mvm, u16 section, in iwl_nvm_read_chunk() argument 94 ret = iwl_mvm_send_cmd(mvm, &cmd); in iwl_nvm_read_chunk() 117 IWL_DEBUG_EEPROM(mvm->trans->dev, in iwl_nvm_read_chunk() 122 IWL_DEBUG_EEPROM(mvm->trans->dev, in iwl_nvm_read_chunk() 124 ret, mvm->trans->name); in iwl_nvm_read_chunk() 131 IWL_ERR(mvm, "NVM ACCESS response with invalid offset %d\n", in iwl_nvm_read_chunk() 146 static int iwl_nvm_write_section(struct iwl_mvm *mvm, u16 section, in iwl_nvm_write_section() argument [all …]
|
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 …]
|
D | sta.c | 18 static inline int iwl_mvm_add_sta_cmd_size(struct iwl_mvm *mvm) in iwl_mvm_add_sta_cmd_size() argument 20 if (iwl_mvm_has_new_rx_api(mvm) || in iwl_mvm_add_sta_cmd_size() 21 fw_has_api(&mvm->fw->ucode_capa, IWL_UCODE_TLV_API_STA_TYPE)) in iwl_mvm_add_sta_cmd_size() 27 static int iwl_mvm_find_free_sta_id(struct iwl_mvm *mvm, in iwl_mvm_find_free_sta_id() argument 34 WARN_ON_ONCE(test_bit(IWL_MVM_STATUS_IN_HW_RESTART, &mvm->status)); in iwl_mvm_find_free_sta_id() 36 lockdep_assert_held(&mvm->mutex); in iwl_mvm_find_free_sta_id() 43 for (sta_id = 0; sta_id < mvm->fw->ucode_capa.num_stations; sta_id++) { in iwl_mvm_find_free_sta_id() 47 if (!rcu_dereference_protected(mvm->fw_id_to_mac_id[sta_id], in iwl_mvm_find_free_sta_id() 48 lockdep_is_held(&mvm->mutex))) in iwl_mvm_find_free_sta_id() 55 int iwl_mvm_sta_send_to_fw(struct iwl_mvm *mvm, struct ieee80211_sta *sta, in iwl_mvm_sta_send_to_fw() argument [all …]
|
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 …]
|
D | coex.c | 92 iwl_get_coex_type(struct iwl_mvm *mvm, const struct ieee80211_vif *vif) in iwl_get_coex_type() argument 119 if (mvm->cfg->bt_shared_single_ant) { in iwl_get_coex_type() 125 primary_ch_phy_id = le32_to_cpu(mvm->last_bt_ci_cmd.primary_ch_phy_id); in iwl_get_coex_type() 127 le32_to_cpu(mvm->last_bt_ci_cmd.secondary_ch_phy_id); in iwl_get_coex_type() 130 ret = le32_to_cpu(mvm->last_bt_notif.primary_ch_lut); in iwl_get_coex_type() 132 ret = le32_to_cpu(mvm->last_bt_notif.secondary_ch_lut); in iwl_get_coex_type() 140 int iwl_mvm_send_bt_init_conf(struct iwl_mvm *mvm) in iwl_mvm_send_bt_init_conf() argument 145 lockdep_assert_held(&mvm->mutex); in iwl_mvm_send_bt_init_conf() 147 if (unlikely(mvm->bt_force_ant_mode != BT_FORCE_ANT_DIS)) { in iwl_mvm_send_bt_init_conf() 148 switch (mvm->bt_force_ant_mode) { in iwl_mvm_send_bt_init_conf() [all …]
|
D | scan.c | 103 static inline void *iwl_mvm_get_scan_req_umac_data(struct iwl_mvm *mvm) in iwl_mvm_get_scan_req_umac_data() argument 105 struct iwl_scan_req_umac *cmd = mvm->scan_cmd; in iwl_mvm_get_scan_req_umac_data() 107 if (iwl_mvm_is_adaptive_dwell_v2_supported(mvm)) in iwl_mvm_get_scan_req_umac_data() 110 if (iwl_mvm_is_adaptive_dwell_supported(mvm)) in iwl_mvm_get_scan_req_umac_data() 113 if (iwl_mvm_cdb_scan_api(mvm)) in iwl_mvm_get_scan_req_umac_data() 120 iwl_mvm_get_scan_req_umac_channel(struct iwl_mvm *mvm) in iwl_mvm_get_scan_req_umac_channel() argument 122 struct iwl_scan_req_umac *cmd = mvm->scan_cmd; in iwl_mvm_get_scan_req_umac_channel() 124 if (iwl_mvm_is_adaptive_dwell_v2_supported(mvm)) in iwl_mvm_get_scan_req_umac_channel() 127 if (iwl_mvm_is_adaptive_dwell_supported(mvm)) in iwl_mvm_get_scan_req_umac_channel() 130 if (iwl_mvm_cdb_scan_api(mvm)) in iwl_mvm_get_scan_req_umac_channel() [all …]
|
D | debugfs.c | 23 struct iwl_mvm *mvm = file->private_data; in iwl_dbgfs_ctdp_budget_read() local 27 if (!iwl_mvm_is_ctdp_supported(mvm)) in iwl_dbgfs_ctdp_budget_read() 30 if (!iwl_mvm_firmware_running(mvm) || in iwl_dbgfs_ctdp_budget_read() 31 mvm->fwrt.cur_fw_img != IWL_UCODE_REGULAR) in iwl_dbgfs_ctdp_budget_read() 34 mutex_lock(&mvm->mutex); in iwl_dbgfs_ctdp_budget_read() 35 budget = iwl_mvm_ctdp_command(mvm, CTDP_CMD_OPERATION_REPORT, 0); in iwl_dbgfs_ctdp_budget_read() 36 mutex_unlock(&mvm->mutex); in iwl_dbgfs_ctdp_budget_read() 46 static ssize_t iwl_dbgfs_stop_ctdp_write(struct iwl_mvm *mvm, char *buf, in iwl_dbgfs_stop_ctdp_write() argument 51 if (!iwl_mvm_is_ctdp_supported(mvm)) in iwl_dbgfs_stop_ctdp_write() 54 if (!iwl_mvm_firmware_running(mvm) || in iwl_dbgfs_stop_ctdp_write() [all …]
|
D | ftm-initiator.c | 38 int iwl_mvm_ftm_add_pasn_sta(struct iwl_mvm *mvm, struct ieee80211_vif *vif, in iwl_mvm_ftm_add_pasn_sta() argument 46 lockdep_assert_held(&mvm->mutex); in iwl_mvm_ftm_add_pasn_sta() 76 sta = rcu_dereference(mvm->fw_id_to_mac_id[mvmvif->ap_sta_id]); in iwl_mvm_ftm_add_pasn_sta() 83 IWL_ERR(mvm, "Invalid key length: tk_len=%u hltk_len=%u\n", in iwl_mvm_ftm_add_pasn_sta() 94 list_add_tail(&pasn->list, &mvm->ftm_initiator.pasn_list); in iwl_mvm_ftm_add_pasn_sta() 101 void iwl_mvm_ftm_remove_pasn_sta(struct iwl_mvm *mvm, u8 *addr) in iwl_mvm_ftm_remove_pasn_sta() argument 105 lockdep_assert_held(&mvm->mutex); in iwl_mvm_ftm_remove_pasn_sta() 107 list_for_each_entry_safe(entry, prev, &mvm->ftm_initiator.pasn_list, in iwl_mvm_ftm_remove_pasn_sta() 118 static void iwl_mvm_ftm_reset(struct iwl_mvm *mvm) in iwl_mvm_ftm_reset() argument 122 mvm->ftm_initiator.req = NULL; in iwl_mvm_ftm_reset() [all …]
|
D | phy-ctxt.c | 78 static void iwl_mvm_phy_ctxt_set_rxchain(struct iwl_mvm *mvm, in iwl_mvm_phy_ctxt_set_rxchain() argument 97 if (active_cnt == 1 && iwl_mvm_rx_diversity_allowed(mvm, ctxt)) { in iwl_mvm_phy_ctxt_set_rxchain() 108 if (mvm->fw_static_smps_request && active_cnt == 1 && idle_cnt == 1) { in iwl_mvm_phy_ctxt_set_rxchain() 113 *rxchain_info = cpu_to_le32(iwl_mvm_get_valid_rx_ant(mvm) << in iwl_mvm_phy_ctxt_set_rxchain() 119 if (unlikely(mvm->dbgfs_rx_phyinfo)) in iwl_mvm_phy_ctxt_set_rxchain() 120 *rxchain_info = cpu_to_le32(mvm->dbgfs_rx_phyinfo); in iwl_mvm_phy_ctxt_set_rxchain() 127 static void iwl_mvm_phy_ctxt_cmd_data_v1(struct iwl_mvm *mvm, in iwl_mvm_phy_ctxt_cmd_data_v1() argument 134 iwl_mvm_chan_info_cmd_tail(mvm, &cmd->ci); in iwl_mvm_phy_ctxt_cmd_data_v1() 137 iwl_mvm_set_chan_info_chandef(mvm, &cmd->ci, chandef); in iwl_mvm_phy_ctxt_cmd_data_v1() 139 iwl_mvm_phy_ctxt_set_rxchain(mvm, ctxt, &tail->rxchain_info, in iwl_mvm_phy_ctxt_cmd_data_v1() [all …]
|
D | sta.h | 422 u16 iwl_mvm_tid_queued(struct iwl_mvm *mvm, struct iwl_mvm_tid_data *tid_data); 453 int iwl_mvm_sta_send_to_fw(struct iwl_mvm *mvm, struct ieee80211_sta *sta, 455 int iwl_mvm_add_sta(struct iwl_mvm *mvm, 459 static inline int iwl_mvm_update_sta(struct iwl_mvm *mvm, in iwl_mvm_update_sta() argument 463 return iwl_mvm_sta_send_to_fw(mvm, sta, true, 0); in iwl_mvm_update_sta() 466 int iwl_mvm_wait_sta_queues_empty(struct iwl_mvm *mvm, 468 int iwl_mvm_rm_sta(struct iwl_mvm *mvm, 471 int iwl_mvm_rm_sta_id(struct iwl_mvm *mvm, 474 int iwl_mvm_set_sta_key(struct iwl_mvm *mvm, 479 int iwl_mvm_remove_sta_key(struct iwl_mvm *mvm, [all …]
|
D | power.c | 22 int iwl_mvm_beacon_filter_send_cmd(struct iwl_mvm *mvm, in iwl_mvm_beacon_filter_send_cmd() argument 28 IWL_DEBUG_POWER(mvm, "ba_enable_beacon_abort is: %d\n", in iwl_mvm_beacon_filter_send_cmd() 30 IWL_DEBUG_POWER(mvm, "ba_escape_timer is: %d\n", in iwl_mvm_beacon_filter_send_cmd() 32 IWL_DEBUG_POWER(mvm, "bf_debug_flag is: %d\n", in iwl_mvm_beacon_filter_send_cmd() 34 IWL_DEBUG_POWER(mvm, "bf_enable_beacon_filter is: %d\n", in iwl_mvm_beacon_filter_send_cmd() 36 IWL_DEBUG_POWER(mvm, "bf_energy_delta is: %d\n", in iwl_mvm_beacon_filter_send_cmd() 38 IWL_DEBUG_POWER(mvm, "bf_escape_timer is: %d\n", in iwl_mvm_beacon_filter_send_cmd() 40 IWL_DEBUG_POWER(mvm, "bf_roaming_energy_delta is: %d\n", in iwl_mvm_beacon_filter_send_cmd() 42 IWL_DEBUG_POWER(mvm, "bf_roaming_state is: %d\n", in iwl_mvm_beacon_filter_send_cmd() 44 IWL_DEBUG_POWER(mvm, "bf_temp_threshold is: %d\n", in iwl_mvm_beacon_filter_send_cmd() [all …]
|
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 …]
|
D | mac-ctxt.c | 35 struct iwl_mvm *mvm; member 173 void iwl_mvm_mac_ctxt_recalc_tsf_id(struct iwl_mvm *mvm, in iwl_mvm_mac_ctxt_recalc_tsf_id() argument 178 .mvm = mvm, in iwl_mvm_mac_ctxt_recalc_tsf_id() 186 mvm->hw, IEEE80211_IFACE_ITER_RESUME_ALL, in iwl_mvm_mac_ctxt_recalc_tsf_id() 196 int iwl_mvm_mac_ctxt_init(struct iwl_mvm *mvm, struct ieee80211_vif *vif) in iwl_mvm_mac_ctxt_init() argument 200 .mvm = mvm, in iwl_mvm_mac_ctxt_init() 210 lockdep_assert_held(&mvm->mutex); in iwl_mvm_mac_ctxt_init() 241 mvm->hw, IEEE80211_IFACE_ITER_RESUME_ALL, in iwl_mvm_mac_ctxt_init() 258 if (WARN_ON_ONCE(test_bit(IWL_MVM_STATUS_IN_HW_RESTART, &mvm->status))) in iwl_mvm_mac_ctxt_init() 264 IWL_ERR(mvm, "Failed to init MAC context - no free ID!\n"); in iwl_mvm_mac_ctxt_init() [all …]
|
D | rx.c | 20 void iwl_mvm_rx_rx_phy_cmd(struct iwl_mvm *mvm, struct iwl_rx_cmd_buffer *rxb) in iwl_mvm_rx_rx_phy_cmd() argument 25 if (unlikely(pkt_len < sizeof(mvm->last_phy_info))) in iwl_mvm_rx_rx_phy_cmd() 28 memcpy(&mvm->last_phy_info, pkt->data, sizeof(mvm->last_phy_info)); in iwl_mvm_rx_rx_phy_cmd() 29 mvm->ampdu_ref++; in iwl_mvm_rx_rx_phy_cmd() 32 if (mvm->last_phy_info.phy_flags & cpu_to_le16(RX_RES_PHY_FLAGS_AGG)) { in iwl_mvm_rx_rx_phy_cmd() 33 spin_lock(&mvm->drv_stats_lock); in iwl_mvm_rx_rx_phy_cmd() 34 mvm->drv_rx_stats.ampdu_count++; in iwl_mvm_rx_rx_phy_cmd() 35 spin_unlock(&mvm->drv_stats_lock); in iwl_mvm_rx_rx_phy_cmd() 45 static void iwl_mvm_pass_packet_to_mac80211(struct iwl_mvm *mvm, in iwl_mvm_pass_packet_to_mac80211() argument 93 ieee80211_rx_napi(mvm->hw, sta, skb, napi); in iwl_mvm_pass_packet_to_mac80211() [all …]
|
D | ftm-responder.c | 87 iwl_mvm_ftm_responder_set_ndp(struct iwl_mvm *mvm, in iwl_mvm_ftm_responder_set_ndp() argument 105 iwl_mvm_ftm_responder_cmd(struct iwl_mvm *mvm, in iwl_mvm_ftm_responder_cmd() argument 124 u8 cmd_ver = iwl_fw_lookup_cmd_ver(mvm->fw, cmd_id, 6); in iwl_mvm_ftm_responder_cmd() 128 lockdep_assert_held(&mvm->mutex); in iwl_mvm_ftm_responder_cmd() 147 iwl_mvm_ftm_responder_set_ndp(mvm, &cmd); in iwl_mvm_ftm_responder_cmd() 158 IWL_ERR(mvm, "Failed to set responder bandwidth\n"); in iwl_mvm_ftm_responder_cmd() 164 return iwl_mvm_send_cmd_pdu(mvm, cmd_id, 0, cmd_size, &cmd); in iwl_mvm_ftm_responder_cmd() 168 iwl_mvm_ftm_responder_dyn_cfg_v2(struct iwl_mvm *mvm, in iwl_mvm_ftm_responder_dyn_cfg_v2() argument 190 lockdep_assert_held(&mvm->mutex); in iwl_mvm_ftm_responder_dyn_cfg_v2() 193 IWL_ERR(mvm, "LCI/civicloc data too big (%zd + %zd)\n", in iwl_mvm_ftm_responder_dyn_cfg_v2() [all …]
|
D | tx.c | 19 iwl_mvm_bar_check_trigger(struct iwl_mvm *mvm, const u8 *addr, in iwl_mvm_bar_check_trigger() argument 25 trig = iwl_fw_dbg_trigger_on(&mvm->fwrt, NULL, FW_DBG_TRIGGER_BA); in iwl_mvm_bar_check_trigger() 34 iwl_fw_dbg_collect_trig(&mvm->fwrt, trig, in iwl_mvm_bar_check_trigger() 42 static u16 iwl_mvm_tx_csum_pre_bz(struct iwl_mvm *mvm, struct sk_buff *skb, in iwl_mvm_tx_csum_pre_bz() argument 56 if (WARN_ONCE(!(mvm->hw->netdev_features & IWL_TX_CSUM_NETIF_FLAGS) || in iwl_mvm_tx_csum_pre_bz() 125 if (!iwl_mvm_has_new_tx_api(mvm) && info->control.hw_key && in iwl_mvm_tx_csum_pre_bz() 143 u32 iwl_mvm_tx_csum_bz(struct iwl_mvm *mvm, struct sk_buff *skb, bool amsdu) in iwl_mvm_tx_csum_bz() argument 182 static u32 iwl_mvm_tx_csum(struct iwl_mvm *mvm, struct sk_buff *skb, in iwl_mvm_tx_csum() argument 186 if (mvm->trans->trans_cfg->device_family < IWL_DEVICE_FAMILY_BZ) in iwl_mvm_tx_csum() 187 return iwl_mvm_tx_csum_pre_bz(mvm, skb, info, amsdu); in iwl_mvm_tx_csum() [all …]
|
D | debugfs-vif.c | 10 static void iwl_dbgfs_update_pm(struct iwl_mvm *mvm, in iwl_dbgfs_update_pm() argument 24 IWL_DEBUG_POWER(mvm, "debugfs: set keep_alive= %d sec\n", val); in iwl_dbgfs_update_pm() 26 IWL_WARN(mvm, in iwl_dbgfs_update_pm() 33 IWL_DEBUG_POWER(mvm, "skip_over_dtim %s\n", in iwl_dbgfs_update_pm() 38 IWL_DEBUG_POWER(mvm, "skip_dtim_periods=%d\n", val); in iwl_dbgfs_update_pm() 42 IWL_DEBUG_POWER(mvm, "rx_data_timeout=%d\n", val); in iwl_dbgfs_update_pm() 46 IWL_DEBUG_POWER(mvm, "tx_data_timeout=%d\n", val); in iwl_dbgfs_update_pm() 50 IWL_DEBUG_POWER(mvm, "lprx %s\n", val ? "enabled" : "disabled"); in iwl_dbgfs_update_pm() 54 IWL_DEBUG_POWER(mvm, "lprx_rssi_threshold=%d\n", val); in iwl_dbgfs_update_pm() 58 IWL_DEBUG_POWER(mvm, "snooze_enable=%d\n", val); in iwl_dbgfs_update_pm() [all …]
|
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 …]
|