Home
last modified time | relevance | path

Searched refs:mvm (Results 1 – 25 of 34) sorted by relevance

12

/Linux-v4.19/drivers/net/wireless/intel/iwlwifi/mvm/
Dfw.c97 static int iwl_send_tx_ant_cfg(struct iwl_mvm *mvm, u8 valid_tx_ant) in iwl_send_tx_ant_cfg() argument
103 IWL_DEBUG_FW(mvm, "select valid tx ant: %u\n", valid_tx_ant); in iwl_send_tx_ant_cfg()
104 return iwl_mvm_send_cmd_pdu(mvm, TX_ANT_CONFIGURATION_CMD, 0, in iwl_send_tx_ant_cfg()
108 static int iwl_send_rss_cfg_cmd(struct iwl_mvm *mvm) in iwl_send_rss_cfg_cmd() argument
121 if (mvm->trans->num_rx_queues == 1) in iwl_send_rss_cfg_cmd()
127 1 + (i % (mvm->trans->num_rx_queues - 1)); in iwl_send_rss_cfg_cmd()
130 return iwl_mvm_send_cmd_pdu(mvm, RSS_CONFIG_CMD, 0, sizeof(cmd), &cmd); in iwl_send_rss_cfg_cmd()
133 static int iwl_configure_rxq(struct iwl_mvm *mvm) in iwl_configure_rxq() argument
139 num_queues = mvm->trans->num_rx_queues - 1; in iwl_configure_rxq()
153 iwl_trans_get_rxq_dma_data(mvm->trans, i + 1, &data); in iwl_configure_rxq()
[all …]
Dtt.c74 void iwl_mvm_enter_ctkill(struct iwl_mvm *mvm) in iwl_mvm_enter_ctkill() argument
76 struct iwl_mvm_tt_mgmt *tt = &mvm->thermal_throttle; in iwl_mvm_enter_ctkill()
79 if (test_bit(IWL_MVM_STATUS_HW_CTKILL, &mvm->status)) in iwl_mvm_enter_ctkill()
82 IWL_ERR(mvm, "Enter CT Kill\n"); in iwl_mvm_enter_ctkill()
83 iwl_mvm_set_hw_ctkill_state(mvm, true); in iwl_mvm_enter_ctkill()
85 if (!iwl_mvm_is_tt_in_fw(mvm)) { in iwl_mvm_enter_ctkill()
94 if (!mvm->temperature_test) in iwl_mvm_enter_ctkill()
99 static void iwl_mvm_exit_ctkill(struct iwl_mvm *mvm) in iwl_mvm_exit_ctkill() argument
101 if (!test_bit(IWL_MVM_STATUS_HW_CTKILL, &mvm->status)) in iwl_mvm_exit_ctkill()
104 IWL_ERR(mvm, "Exit CT Kill\n"); in iwl_mvm_exit_ctkill()
[all …]
Dmac80211.c192 void iwl_mvm_ref(struct iwl_mvm *mvm, enum iwl_mvm_ref_type ref_type) in iwl_mvm_ref() argument
194 if (!iwl_mvm_is_d0i3_supported(mvm)) in iwl_mvm_ref()
197 IWL_DEBUG_RPM(mvm, "Take mvm reference - type %d\n", ref_type); in iwl_mvm_ref()
198 spin_lock_bh(&mvm->refs_lock); in iwl_mvm_ref()
199 mvm->refs[ref_type]++; in iwl_mvm_ref()
200 spin_unlock_bh(&mvm->refs_lock); in iwl_mvm_ref()
201 iwl_trans_ref(mvm->trans); in iwl_mvm_ref()
204 void iwl_mvm_unref(struct iwl_mvm *mvm, enum iwl_mvm_ref_type ref_type) in iwl_mvm_unref() argument
206 if (!iwl_mvm_is_d0i3_supported(mvm)) in iwl_mvm_unref()
209 IWL_DEBUG_RPM(mvm, "Leave mvm reference - type %d\n", ref_type); in iwl_mvm_unref()
[all …]
Dutils.c82 int iwl_mvm_send_cmd(struct iwl_mvm *mvm, struct iwl_host_cmd *cmd) in iwl_mvm_send_cmd() argument
87 if (WARN_ON(mvm->d3_test_active)) in iwl_mvm_send_cmd()
97 lockdep_assert_held(&mvm->mutex); in iwl_mvm_send_cmd()
99 iwl_mvm_ref(mvm, IWL_MVM_REF_SENDING_CMD); in iwl_mvm_send_cmd()
102 ret = iwl_trans_send_cmd(mvm->trans, cmd); in iwl_mvm_send_cmd()
105 iwl_mvm_unref(mvm, IWL_MVM_REF_SENDING_CMD); in iwl_mvm_send_cmd()
121 int iwl_mvm_send_cmd_pdu(struct iwl_mvm *mvm, u32 id, in iwl_mvm_send_cmd_pdu() argument
131 return iwl_mvm_send_cmd(mvm, &cmd); in iwl_mvm_send_cmd_pdu()
137 int iwl_mvm_send_cmd_status(struct iwl_mvm *mvm, struct iwl_host_cmd *cmd, in iwl_mvm_send_cmd_status() argument
144 lockdep_assert_held(&mvm->mutex); in iwl_mvm_send_cmd_status()
[all …]
Dops.c148 struct iwl_mvm *mvm = IWL_OP_MODE_GET_MVM(op_mode); in iwl_mvm_nic_config() local
151 u32 phy_config = iwl_mvm_get_phy_config(mvm); in iwl_mvm_nic_config()
161 reg_val |= CSR_HW_REV_STEP(mvm->trans->hw_rev) << in iwl_mvm_nic_config()
163 reg_val |= CSR_HW_REV_DASH(mvm->trans->hw_rev) << in iwl_mvm_nic_config()
182 if (mvm->trans->cfg->device_family < IWL_DEVICE_FAMILY_8000) in iwl_mvm_nic_config()
185 iwl_trans_set_bits_mask(mvm->trans, CSR_HW_IF_CONFIG_REG, in iwl_mvm_nic_config()
195 IWL_DEBUG_INFO(mvm, "Radio type=0x%x-0x%x-0x%x\n", radio_cfg_type, in iwl_mvm_nic_config()
203 if (!mvm->trans->cfg->apmg_not_supported) in iwl_mvm_nic_config()
204 iwl_set_bits_mask_prph(mvm->trans, APMG_PS_CTRL_REG, in iwl_mvm_nic_config()
234 void (*fn)(struct iwl_mvm *mvm, struct iwl_rx_cmd_buffer *rxb);
[all …]
Dscan.c140 static inline void *iwl_mvm_get_scan_req_umac_data(struct iwl_mvm *mvm) in iwl_mvm_get_scan_req_umac_data() argument
142 struct iwl_scan_req_umac *cmd = mvm->scan_cmd; in iwl_mvm_get_scan_req_umac_data()
144 if (iwl_mvm_is_adaptive_dwell_v2_supported(mvm)) in iwl_mvm_get_scan_req_umac_data()
147 if (iwl_mvm_is_adaptive_dwell_supported(mvm)) in iwl_mvm_get_scan_req_umac_data()
150 if (iwl_mvm_cdb_scan_api(mvm)) in iwl_mvm_get_scan_req_umac_data()
157 iwl_mvm_get_scan_req_umac_channel(struct iwl_mvm *mvm) in iwl_mvm_get_scan_req_umac_channel() argument
159 struct iwl_scan_req_umac *cmd = mvm->scan_cmd; in iwl_mvm_get_scan_req_umac_channel()
161 if (iwl_mvm_is_adaptive_dwell_v2_supported(mvm)) in iwl_mvm_get_scan_req_umac_channel()
164 if (iwl_mvm_is_adaptive_dwell_supported(mvm)) in iwl_mvm_get_scan_req_umac_channel()
167 if (iwl_mvm_cdb_scan_api(mvm)) in iwl_mvm_get_scan_req_umac_channel()
[all …]
Dtof.c68 void iwl_mvm_tof_init(struct iwl_mvm *mvm) in iwl_mvm_tof_init() argument
70 struct iwl_mvm_tof_data *tof_data = &mvm->tof_data; in iwl_mvm_tof_init()
72 if (!fw_has_capa(&mvm->fw->ucode_capa, IWL_UCODE_TLV_CAPA_TOF_SUPPORT)) in iwl_mvm_tof_init()
95 mvm->tof_data.active_range_request = IWL_MVM_TOF_RANGE_REQ_MAX_ID; in iwl_mvm_tof_init()
96 mvm->init_status |= IWL_MVM_INIT_STATUS_TOF_INIT_COMPLETE; in iwl_mvm_tof_init()
99 void iwl_mvm_tof_clean(struct iwl_mvm *mvm) in iwl_mvm_tof_clean() argument
101 struct iwl_mvm_tof_data *tof_data = &mvm->tof_data; in iwl_mvm_tof_clean()
103 if (!fw_has_capa(&mvm->fw->ucode_capa, in iwl_mvm_tof_clean()
105 !(mvm->init_status & IWL_MVM_INIT_STATUS_TOF_INIT_COMPLETE)) in iwl_mvm_tof_clean()
109 mvm->tof_data.active_range_request = IWL_MVM_TOF_RANGE_REQ_MAX_ID; in iwl_mvm_tof_clean()
[all …]
Dmvm.h370 struct iwl_mvm *mvm; member
665 struct iwl_mvm *mvm; member
712 struct iwl_mvm *mvm; member
1153 static inline bool iwl_mvm_is_radio_killed(struct iwl_mvm *mvm) in iwl_mvm_is_radio_killed() argument
1155 return test_bit(IWL_MVM_STATUS_HW_RFKILL, &mvm->status) || in iwl_mvm_is_radio_killed()
1156 test_bit(IWL_MVM_STATUS_HW_CTKILL, &mvm->status); in iwl_mvm_is_radio_killed()
1159 static inline bool iwl_mvm_is_radio_hw_killed(struct iwl_mvm *mvm) in iwl_mvm_is_radio_hw_killed() argument
1161 return test_bit(IWL_MVM_STATUS_HW_RFKILL, &mvm->status); in iwl_mvm_is_radio_hw_killed()
1164 static inline bool iwl_mvm_firmware_running(struct iwl_mvm *mvm) in iwl_mvm_firmware_running() argument
1166 return test_bit(IWL_MVM_STATUS_FIRMWARE_RUNNING, &mvm->status); in iwl_mvm_firmware_running()
[all …]
Dtime-event.c83 void iwl_mvm_te_clear_data(struct iwl_mvm *mvm, in iwl_mvm_te_clear_data() argument
86 lockdep_assert_held(&mvm->time_event_lock); in iwl_mvm_te_clear_data()
100 struct iwl_mvm *mvm = container_of(wk, struct iwl_mvm, roc_done_wk); in iwl_mvm_roc_done_wk() local
109 if (test_and_clear_bit(IWL_MVM_STATUS_ROC_RUNNING, &mvm->status)) in iwl_mvm_roc_done_wk()
110 iwl_mvm_unref(mvm, IWL_MVM_REF_ROC); in iwl_mvm_roc_done_wk()
111 if (test_and_clear_bit(IWL_MVM_STATUS_ROC_AUX_RUNNING, &mvm->status)) in iwl_mvm_roc_done_wk()
112 iwl_mvm_unref(mvm, IWL_MVM_REF_ROC_AUX); in iwl_mvm_roc_done_wk()
126 iwl_mvm_flush_sta(mvm, &mvm->aux_sta, true, CMD_ASYNC); in iwl_mvm_roc_done_wk()
129 if (test_and_clear_bit(IWL_MVM_STATUS_NEED_FLUSH_P2P, &mvm->status)) { in iwl_mvm_roc_done_wk()
139 if (!WARN_ON(!mvm->p2p_device_vif)) { in iwl_mvm_roc_done_wk()
[all …]
Dsta.c80 static inline int iwl_mvm_add_sta_cmd_size(struct iwl_mvm *mvm) in iwl_mvm_add_sta_cmd_size() argument
82 if (iwl_mvm_has_new_rx_api(mvm) || in iwl_mvm_add_sta_cmd_size()
83 fw_has_api(&mvm->fw->ucode_capa, IWL_UCODE_TLV_API_STA_TYPE)) in iwl_mvm_add_sta_cmd_size()
89 static int iwl_mvm_find_free_sta_id(struct iwl_mvm *mvm, in iwl_mvm_find_free_sta_id() argument
96 WARN_ON_ONCE(test_bit(IWL_MVM_STATUS_IN_HW_RESTART, &mvm->status)); in iwl_mvm_find_free_sta_id()
98 lockdep_assert_held(&mvm->mutex); in iwl_mvm_find_free_sta_id()
105 for (sta_id = 0; sta_id < ARRAY_SIZE(mvm->fw_id_to_mac_id); sta_id++) { in iwl_mvm_find_free_sta_id()
109 if (!rcu_dereference_protected(mvm->fw_id_to_mac_id[sta_id], in iwl_mvm_find_free_sta_id()
110 lockdep_is_held(&mvm->mutex))) in iwl_mvm_find_free_sta_id()
117 int iwl_mvm_sta_send_to_fw(struct iwl_mvm *mvm, struct ieee80211_sta *sta, in iwl_mvm_sta_send_to_fw() argument
[all …]
Dtdls.c75 void iwl_mvm_teardown_tdls_peers(struct iwl_mvm *mvm) in iwl_mvm_teardown_tdls_peers() argument
81 lockdep_assert_held(&mvm->mutex); in iwl_mvm_teardown_tdls_peers()
83 for (i = 0; i < ARRAY_SIZE(mvm->fw_id_to_mac_id); i++) { in iwl_mvm_teardown_tdls_peers()
84 sta = rcu_dereference_protected(mvm->fw_id_to_mac_id[i], in iwl_mvm_teardown_tdls_peers()
85 lockdep_is_held(&mvm->mutex)); in iwl_mvm_teardown_tdls_peers()
97 int iwl_mvm_tdls_sta_count(struct iwl_mvm *mvm, struct ieee80211_vif *vif) in iwl_mvm_tdls_sta_count() argument
104 lockdep_assert_held(&mvm->mutex); in iwl_mvm_tdls_sta_count()
106 for (i = 0; i < ARRAY_SIZE(mvm->fw_id_to_mac_id); i++) { in iwl_mvm_tdls_sta_count()
107 sta = rcu_dereference_protected(mvm->fw_id_to_mac_id[i], in iwl_mvm_tdls_sta_count()
108 lockdep_is_held(&mvm->mutex)); in iwl_mvm_tdls_sta_count()
[all …]
Dnvm.c96 static int iwl_nvm_write_chunk(struct iwl_mvm *mvm, u16 section, in iwl_nvm_write_chunk() argument
117 ret = iwl_mvm_send_cmd(mvm, &cmd); in iwl_nvm_write_chunk()
125 IWL_ERR(mvm, in iwl_nvm_write_chunk()
135 static int iwl_nvm_read_chunk(struct iwl_mvm *mvm, u16 section, in iwl_nvm_read_chunk() argument
156 ret = iwl_mvm_send_cmd(mvm, &cmd); in iwl_nvm_read_chunk()
179 IWL_DEBUG_EEPROM(mvm->trans->dev, in iwl_nvm_read_chunk()
184 IWL_DEBUG_EEPROM(mvm->trans->dev, in iwl_nvm_read_chunk()
186 ret, mvm->cfg->name); in iwl_nvm_read_chunk()
193 IWL_ERR(mvm, "NVM ACCESS response with invalid offset %d\n", in iwl_nvm_read_chunk()
208 static int iwl_nvm_write_section(struct iwl_mvm *mvm, u16 section, in iwl_nvm_write_section() argument
[all …]
Dled.c71 static void iwl_mvm_send_led_fw_cmd(struct iwl_mvm *mvm, bool on) in iwl_mvm_send_led_fw_cmd() argument
84 if (!iwl_mvm_firmware_running(mvm)) in iwl_mvm_send_led_fw_cmd()
87 err = iwl_mvm_send_cmd(mvm, &cmd); in iwl_mvm_send_led_fw_cmd()
90 IWL_WARN(mvm, "LED command failed: %d\n", err); in iwl_mvm_send_led_fw_cmd()
93 static void iwl_mvm_led_set(struct iwl_mvm *mvm, bool on) in iwl_mvm_led_set() argument
95 if (fw_has_capa(&mvm->fw->ucode_capa, in iwl_mvm_led_set()
97 iwl_mvm_send_led_fw_cmd(mvm, on); in iwl_mvm_led_set()
101 iwl_write32(mvm->trans, CSR_LED_REG, in iwl_mvm_led_set()
108 struct iwl_mvm *mvm = container_of(led_cdev, struct iwl_mvm, led); in iwl_led_brightness_set() local
110 iwl_mvm_led_set(mvm, brightness > 0); in iwl_led_brightness_set()
[all …]
Dcoex.c152 iwl_get_coex_type(struct iwl_mvm *mvm, const struct ieee80211_vif *vif) in iwl_get_coex_type() argument
179 if (mvm->cfg->bt_shared_single_ant) { in iwl_get_coex_type()
185 primary_ch_phy_id = le32_to_cpu(mvm->last_bt_ci_cmd.primary_ch_phy_id); in iwl_get_coex_type()
187 le32_to_cpu(mvm->last_bt_ci_cmd.secondary_ch_phy_id); in iwl_get_coex_type()
190 ret = le32_to_cpu(mvm->last_bt_notif.primary_ch_lut); in iwl_get_coex_type()
192 ret = le32_to_cpu(mvm->last_bt_notif.secondary_ch_lut); in iwl_get_coex_type()
200 int iwl_mvm_send_bt_init_conf(struct iwl_mvm *mvm) in iwl_mvm_send_bt_init_conf() argument
205 lockdep_assert_held(&mvm->mutex); in iwl_mvm_send_bt_init_conf()
207 if (unlikely(mvm->bt_force_ant_mode != BT_FORCE_ANT_DIS)) { in iwl_mvm_send_bt_init_conf()
208 switch (mvm->bt_force_ant_mode) { in iwl_mvm_send_bt_init_conf()
[all …]
Dd3.c80 struct iwl_mvm *mvm = IWL_MAC80211_GET_MVM(hw); in iwl_mvm_set_rekey_data() local
86 mutex_lock(&mvm->mutex); in iwl_mvm_set_rekey_data()
94 mutex_unlock(&mvm->mutex); in iwl_mvm_set_rekey_data()
174 struct iwl_mvm *mvm = IWL_MAC80211_GET_MVM(hw); in iwl_mvm_wowlan_program_keys() local
222 mutex_lock(&mvm->mutex); in iwl_mvm_wowlan_program_keys()
223 ret = iwl_mvm_send_cmd_pdu(mvm, WEP_KEY, 0, in iwl_mvm_wowlan_program_keys()
227 mvm->ptk_ivlen = key->iv_len; in iwl_mvm_wowlan_program_keys()
228 mvm->ptk_icvlen = key->icv_len; in iwl_mvm_wowlan_program_keys()
229 mvm->gtk_ivlen = key->iv_len; in iwl_mvm_wowlan_program_keys()
230 mvm->gtk_icvlen = key->icv_len; in iwl_mvm_wowlan_program_keys()
[all …]
Ddebugfs.c83 struct iwl_mvm *mvm = file->private_data; in iwl_dbgfs_ctdp_budget_read() local
87 if (!iwl_mvm_is_ctdp_supported(mvm)) in iwl_dbgfs_ctdp_budget_read()
90 if (!iwl_mvm_firmware_running(mvm) || in iwl_dbgfs_ctdp_budget_read()
91 mvm->fwrt.cur_fw_img != IWL_UCODE_REGULAR) in iwl_dbgfs_ctdp_budget_read()
94 mutex_lock(&mvm->mutex); in iwl_dbgfs_ctdp_budget_read()
95 budget = iwl_mvm_ctdp_command(mvm, CTDP_CMD_OPERATION_REPORT, 0); in iwl_dbgfs_ctdp_budget_read()
96 mutex_unlock(&mvm->mutex); in iwl_dbgfs_ctdp_budget_read()
106 static ssize_t iwl_dbgfs_stop_ctdp_write(struct iwl_mvm *mvm, char *buf, in iwl_dbgfs_stop_ctdp_write() argument
111 if (!iwl_mvm_is_ctdp_supported(mvm)) in iwl_dbgfs_stop_ctdp_write()
114 if (!iwl_mvm_firmware_running(mvm) || in iwl_dbgfs_stop_ctdp_write()
[all …]
Dsta.h448 u16 iwl_mvm_tid_queued(struct iwl_mvm *mvm, struct iwl_mvm_tid_data *tid_data);
479 int iwl_mvm_sta_send_to_fw(struct iwl_mvm *mvm, struct ieee80211_sta *sta,
481 int iwl_mvm_add_sta(struct iwl_mvm *mvm,
485 static inline int iwl_mvm_update_sta(struct iwl_mvm *mvm, in iwl_mvm_update_sta() argument
489 return iwl_mvm_sta_send_to_fw(mvm, sta, true, 0); in iwl_mvm_update_sta()
492 int iwl_mvm_wait_sta_queues_empty(struct iwl_mvm *mvm,
494 int iwl_mvm_rm_sta(struct iwl_mvm *mvm,
497 int iwl_mvm_rm_sta_id(struct iwl_mvm *mvm,
500 int iwl_mvm_set_sta_key(struct iwl_mvm *mvm,
505 int iwl_mvm_remove_sta_key(struct iwl_mvm *mvm,
[all …]
Dmac-ctxt.c91 struct iwl_mvm *mvm; member
244 unsigned long iwl_mvm_get_used_hw_queues(struct iwl_mvm *mvm, in iwl_mvm_get_used_hw_queues() argument
251 BIT(mvm->aux_queue) | in iwl_mvm_get_used_hw_queues()
255 lockdep_assert_held(&mvm->mutex); in iwl_mvm_get_used_hw_queues()
259 mvm->hw, IEEE80211_IFACE_ITER_RESUME_ALL, in iwl_mvm_get_used_hw_queues()
289 void iwl_mvm_mac_ctxt_recalc_tsf_id(struct iwl_mvm *mvm, in iwl_mvm_mac_ctxt_recalc_tsf_id() argument
294 .mvm = mvm, in iwl_mvm_mac_ctxt_recalc_tsf_id()
302 mvm->hw, IEEE80211_IFACE_ITER_RESUME_ALL, in iwl_mvm_mac_ctxt_recalc_tsf_id()
312 int iwl_mvm_mac_ctxt_init(struct iwl_mvm *mvm, struct ieee80211_vif *vif) in iwl_mvm_mac_ctxt_init() argument
316 .mvm = mvm, in iwl_mvm_mac_ctxt_init()
[all …]
Dpower.c83 int iwl_mvm_beacon_filter_send_cmd(struct iwl_mvm *mvm, in iwl_mvm_beacon_filter_send_cmd() argument
87 IWL_DEBUG_POWER(mvm, "ba_enable_beacon_abort is: %d\n", in iwl_mvm_beacon_filter_send_cmd()
89 IWL_DEBUG_POWER(mvm, "ba_escape_timer is: %d\n", in iwl_mvm_beacon_filter_send_cmd()
91 IWL_DEBUG_POWER(mvm, "bf_debug_flag is: %d\n", in iwl_mvm_beacon_filter_send_cmd()
93 IWL_DEBUG_POWER(mvm, "bf_enable_beacon_filter is: %d\n", in iwl_mvm_beacon_filter_send_cmd()
95 IWL_DEBUG_POWER(mvm, "bf_energy_delta is: %d\n", in iwl_mvm_beacon_filter_send_cmd()
97 IWL_DEBUG_POWER(mvm, "bf_escape_timer is: %d\n", in iwl_mvm_beacon_filter_send_cmd()
99 IWL_DEBUG_POWER(mvm, "bf_roaming_energy_delta is: %d\n", in iwl_mvm_beacon_filter_send_cmd()
101 IWL_DEBUG_POWER(mvm, "bf_roaming_state is: %d\n", in iwl_mvm_beacon_filter_send_cmd()
103 IWL_DEBUG_POWER(mvm, "bf_temp_threshold is: %d\n", in iwl_mvm_beacon_filter_send_cmd()
[all …]
Drx.c77 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
81 memcpy(&mvm->last_phy_info, pkt->data, sizeof(mvm->last_phy_info)); in iwl_mvm_rx_rx_phy_cmd()
82 mvm->ampdu_ref++; in iwl_mvm_rx_rx_phy_cmd()
85 if (mvm->last_phy_info.phy_flags & cpu_to_le16(RX_RES_PHY_FLAGS_AGG)) { in iwl_mvm_rx_rx_phy_cmd()
86 spin_lock(&mvm->drv_stats_lock); in iwl_mvm_rx_rx_phy_cmd()
87 mvm->drv_rx_stats.ampdu_count++; in iwl_mvm_rx_rx_phy_cmd()
88 spin_unlock(&mvm->drv_stats_lock); in iwl_mvm_rx_rx_phy_cmd()
98 static void iwl_mvm_pass_packet_to_mac80211(struct iwl_mvm *mvm, in iwl_mvm_pass_packet_to_mac80211() argument
146 ieee80211_rx_napi(mvm->hw, sta, skb, napi); in iwl_mvm_pass_packet_to_mac80211()
155 static void iwl_mvm_get_signal_strength(struct iwl_mvm *mvm, in iwl_mvm_get_signal_strength() argument
[all …]
Dtx.c79 iwl_mvm_bar_check_trigger(struct iwl_mvm *mvm, const u8 *addr, in iwl_mvm_bar_check_trigger() argument
85 if (!iwl_fw_dbg_trigger_enabled(mvm->fw, FW_DBG_TRIGGER_BA)) in iwl_mvm_bar_check_trigger()
88 trig = iwl_fw_dbg_get_trigger(mvm->fw, FW_DBG_TRIGGER_BA); in iwl_mvm_bar_check_trigger()
91 if (!iwl_fw_dbg_trigger_check_stop(&mvm->fwrt, NULL, trig)) in iwl_mvm_bar_check_trigger()
97 iwl_fw_dbg_collect_trig(&mvm->fwrt, trig, in iwl_mvm_bar_check_trigger()
105 static u16 iwl_mvm_tx_csum(struct iwl_mvm *mvm, struct sk_buff *skb, in iwl_mvm_tx_csum() argument
122 if (WARN_ONCE(!(mvm->hw->netdev_features & IWL_TX_CSUM_NETIF_FLAGS) || in iwl_mvm_tx_csum()
192 if (!iwl_mvm_has_new_tx_api(mvm) && info->control.hw_key && in iwl_mvm_tx_csum()
207 void iwl_mvm_set_tx_cmd(struct iwl_mvm *mvm, struct sk_buff *skb, in iwl_mvm_set_tx_cmd() argument
245 iwl_mvm_bar_check_trigger(mvm, bar->ra, tx_cmd->tid_tspec, in iwl_mvm_set_tx_cmd()
[all …]
Ddebugfs-vif.c71 static void iwl_dbgfs_update_pm(struct iwl_mvm *mvm, in iwl_dbgfs_update_pm() argument
85 IWL_DEBUG_POWER(mvm, "debugfs: set keep_alive= %d sec\n", val); in iwl_dbgfs_update_pm()
87 IWL_WARN(mvm, in iwl_dbgfs_update_pm()
94 IWL_DEBUG_POWER(mvm, "skip_over_dtim %s\n", in iwl_dbgfs_update_pm()
99 IWL_DEBUG_POWER(mvm, "skip_dtim_periods=%d\n", val); in iwl_dbgfs_update_pm()
103 IWL_DEBUG_POWER(mvm, "rx_data_timeout=%d\n", val); in iwl_dbgfs_update_pm()
107 IWL_DEBUG_POWER(mvm, "tx_data_timeout=%d\n", val); in iwl_dbgfs_update_pm()
111 IWL_DEBUG_POWER(mvm, "lprx %s\n", val ? "enabled" : "disabled"); in iwl_dbgfs_update_pm()
115 IWL_DEBUG_POWER(mvm, "lprx_rssi_threshold=%d\n", val); in iwl_dbgfs_update_pm()
119 IWL_DEBUG_POWER(mvm, "snooze_enable=%d\n", val); in iwl_dbgfs_update_pm()
[all …]
Dphy-ctxt.c140 static void iwl_mvm_phy_ctxt_cmd_data(struct iwl_mvm *mvm, in iwl_mvm_phy_ctxt_cmd_data() argument
166 if (active_cnt == 1 && iwl_mvm_rx_diversity_allowed(mvm)) { in iwl_mvm_phy_ctxt_cmd_data()
171 cmd->rxchain_info = cpu_to_le32(iwl_mvm_get_valid_rx_ant(mvm) << in iwl_mvm_phy_ctxt_cmd_data()
177 if (unlikely(mvm->dbgfs_rx_phyinfo)) in iwl_mvm_phy_ctxt_cmd_data()
178 cmd->rxchain_info = cpu_to_le32(mvm->dbgfs_rx_phyinfo); in iwl_mvm_phy_ctxt_cmd_data()
181 cmd->txchain_info = cpu_to_le32(iwl_mvm_get_valid_tx_ant(mvm)); in iwl_mvm_phy_ctxt_cmd_data()
190 static int iwl_mvm_phy_ctxt_apply(struct iwl_mvm *mvm, in iwl_mvm_phy_ctxt_apply() argument
203 iwl_mvm_phy_ctxt_cmd_data(mvm, &cmd, chandef, in iwl_mvm_phy_ctxt_apply()
206 ret = iwl_mvm_send_cmd_pdu(mvm, PHY_CONTEXT_CMD, 0, in iwl_mvm_phy_ctxt_apply()
210 IWL_ERR(mvm, "PHY ctxt cmd error. ret=%d\n", ret); in iwl_mvm_phy_ctxt_apply()
[all …]
Drs.c131 typedef bool (*allow_column_func_t) (struct iwl_mvm *mvm,
144 static bool rs_ant_allow(struct iwl_mvm *mvm, struct ieee80211_sta *sta, in rs_ant_allow() argument
148 return iwl_mvm_bt_coex_is_ant_avail(mvm, next_col->ant); in rs_ant_allow()
151 static bool rs_mimo_allow(struct iwl_mvm *mvm, struct ieee80211_sta *sta, in rs_mimo_allow() argument
161 if (num_of_ant(iwl_mvm_get_valid_tx_ant(mvm)) < 2) in rs_mimo_allow()
164 if (!iwl_mvm_bt_coex_is_mimo_allowed(mvm, sta)) in rs_mimo_allow()
167 if (mvm->nvm_data->sku_cap_mimo_disabled) in rs_mimo_allow()
173 static bool rs_siso_allow(struct iwl_mvm *mvm, struct ieee80211_sta *sta, in rs_siso_allow() argument
183 static bool rs_sgi_allow(struct iwl_mvm *mvm, struct ieee80211_sta *sta, in rs_sgi_allow() argument
391 static void rs_rate_scale_perform(struct iwl_mvm *mvm,
[all …]
Dquota.c149 static void iwl_mvm_adjust_quota_for_noa(struct iwl_mvm *mvm, in iwl_mvm_adjust_quota_for_noa() argument
156 if (!mvm->noa_duration || !mvm->noa_vif) in iwl_mvm_adjust_quota_for_noa()
159 mvmvif = iwl_mvm_vif_from_mac80211(mvm->noa_vif); in iwl_mvm_adjust_quota_for_noa()
164 beacon_int = mvm->noa_vif->bss_conf.beacon_int; in iwl_mvm_adjust_quota_for_noa()
168 iwl_mvm_quota_cmd_get_quota(mvm, cmd, in iwl_mvm_adjust_quota_for_noa()
177 quota *= (beacon_int - mvm->noa_duration); in iwl_mvm_adjust_quota_for_noa()
180 IWL_DEBUG_QUOTA(mvm, "quota: adjust for NoA from %d to %d\n", in iwl_mvm_adjust_quota_for_noa()
188 int iwl_mvm_update_quotas(struct iwl_mvm *mvm, in iwl_mvm_update_quotas() argument
199 struct iwl_time_quota_cmd *last = &mvm->last_quota_cmd; in iwl_mvm_update_quotas()
203 lockdep_assert_held(&mvm->mutex); in iwl_mvm_update_quotas()
[all …]

12