Home
last modified time | relevance | path

Searched refs:mld (Results 1 – 25 of 79) sorted by relevance

1234

/linux/drivers/net/wireless/intel/iwlwifi/mld/
H A Dthermal.c21 void iwl_mld_handle_ct_kill_notif(struct iwl_mld *mld, in iwl_mld_handle_ct_kill_notif() argument
26 IWL_ERR(mld, in iwl_mld_handle_ct_kill_notif()
31 iwl_mld_set_ctkill(mld, true); in iwl_mld_handle_ct_kill_notif()
33 wiphy_delayed_work_queue(mld->wiphy, &mld->ct_kill_exit_wk, in iwl_mld_handle_ct_kill_notif()
39 struct iwl_mld *mld; in iwl_mld_exit_ctkill() local
41 mld = container_of(wk, struct iwl_mld, ct_kill_exit_wk.work); in iwl_mld_exit_ctkill()
43 IWL_ERR(mld, "Exit CT Kill\n"); in iwl_mld_exit_ctkill()
44 iwl_mld_set_ctkill(mld, false); in iwl_mld_exit_ctkill()
47 void iwl_mld_handle_temp_notif(struct iwl_mld *mld, struct iwl_rx_packet *pkt) in iwl_mld_handle_temp_notif() argument
57 if (IWL_FW_CHECK(mld, temp < 0, "negative temperature %d\n", temp)) in iwl_mld_handle_temp_notif()
[all …]
H A Dmld.c55 static void iwl_mld_hw_set_regulatory(struct iwl_mld *mld) in iwl_mld_hw_set_regulatory() argument
57 struct wiphy *wiphy = mld->wiphy; in iwl_mld_hw_set_regulatory()
64 void iwl_construct_mld(struct iwl_mld *mld, struct iwl_trans *trans, in iwl_construct_mld() argument
68 mld->dev = trans->dev; in iwl_construct_mld()
69 mld->trans = trans; in iwl_construct_mld()
70 mld->cfg = cfg; in iwl_construct_mld()
71 mld->fw = fw; in iwl_construct_mld()
72 mld->hw = hw; in iwl_construct_mld()
73 mld->wiphy = hw->wiphy; in iwl_construct_mld()
74 mld->debugfs_dir = dbgfs_dir; in iwl_construct_mld()
[all …]
H A Dfw.c22 static int iwl_mld_send_tx_ant_cfg(struct iwl_mld *mld) in iwl_mld_send_tx_ant_cfg() argument
26 lockdep_assert_wiphy(mld->wiphy); in iwl_mld_send_tx_ant_cfg()
28 cmd.valid = cpu_to_le32(iwl_mld_get_valid_tx_ant(mld)); in iwl_mld_send_tx_ant_cfg()
30 IWL_DEBUG_FW(mld, "select valid tx ant: %u\n", cmd.valid); in iwl_mld_send_tx_ant_cfg()
32 return iwl_mld_send_cmd_pdu(mld, TX_ANT_CONFIGURATION_CMD, &cmd); in iwl_mld_send_tx_ant_cfg()
35 static int iwl_mld_send_rss_cfg_cmd(struct iwl_mld *mld) in iwl_mld_send_rss_cfg_cmd() argument
47 lockdep_assert_wiphy(mld->wiphy); in iwl_mld_send_rss_cfg_cmd()
52 1 + (i % (mld->trans->info.num_rxqs - 1)); in iwl_mld_send_rss_cfg_cmd()
55 return iwl_mld_send_cmd_pdu(mld, RSS_CONFIG_CMD, &cmd); in iwl_mld_send_rss_cfg_cmd()
58 static int iwl_mld_config_scan(struct iwl_mld *mld) in iwl_mld_config_scan() argument
[all …]
H A Dptp.c22 static int iwl_mld_get_systime(struct iwl_mld *mld, u32 *gp2) in iwl_mld_get_systime() argument
24 *gp2 = iwl_read_prph(mld->trans, mld->trans->mac_cfg->base->gp2_reg_addr); in iwl_mld_get_systime()
32 static void iwl_mld_ptp_update_new_read(struct iwl_mld *mld, u32 gp2) in iwl_mld_ptp_update_new_read() argument
34 IWL_DEBUG_PTP(mld, "PTP: last_gp2=%u, new gp2 read=%u\n", in iwl_mld_ptp_update_new_read()
35 mld->ptp_data.last_gp2, gp2); in iwl_mld_ptp_update_new_read()
40 if (gp2 < mld->ptp_data.last_gp2) { in iwl_mld_ptp_update_new_read()
41 if (mld->ptp_data.last_gp2 - gp2 < in iwl_mld_ptp_update_new_read()
43 IWL_DEBUG_PTP(mld, in iwl_mld_ptp_update_new_read()
45 gp2, mld->ptp_data.last_gp2); in iwl_mld_ptp_update_new_read()
49 mld->ptp_data.wrap_counter++; in iwl_mld_ptp_update_new_read()
[all …]
H A Dmac80211.c126 static void iwl_mld_hw_set_addresses(struct iwl_mld *mld) in iwl_mld_hw_set_addresses() argument
128 struct wiphy *wiphy = mld->wiphy; in iwl_mld_hw_set_addresses()
132 memcpy(mld->addresses[0].addr, mld->nvm_data->hw_addr, ETH_ALEN); in iwl_mld_hw_set_addresses()
133 wiphy->addresses = mld->addresses; in iwl_mld_hw_set_addresses()
137 if (mld->nvm_data->n_hw_addrs > 1) in iwl_mld_hw_set_addresses()
138 num_addrs = min(mld->nvm_data->n_hw_addrs, in iwl_mld_hw_set_addresses()
142 memcpy(mld->addresses[i].addr, in iwl_mld_hw_set_addresses()
143 mld->addresses[i - 1].addr, in iwl_mld_hw_set_addresses()
145 mld->addresses[i].addr[ETH_ALEN - 1]++; in iwl_mld_hw_set_addresses()
150 static void iwl_mld_hw_set_channels(struct iwl_mld *mld) in iwl_mld_hw_set_channels() argument
[all …]
H A Dregulatory.c16 void iwl_mld_get_bios_tables(struct iwl_mld *mld) in iwl_mld_get_bios_tables() argument
20 iwl_acpi_get_guid_lock_status(&mld->fwrt); in iwl_mld_get_bios_tables()
22 ret = iwl_bios_get_ppag_table(&mld->fwrt); in iwl_mld_get_bios_tables()
24 IWL_DEBUG_RADIO(mld, in iwl_mld_get_bios_tables()
29 ret = iwl_bios_get_wrds_table(&mld->fwrt); in iwl_mld_get_bios_tables()
31 IWL_DEBUG_RADIO(mld, in iwl_mld_get_bios_tables()
39 if (!iwl_bios_get_wgds_table(&mld->fwrt)) { in iwl_mld_get_bios_tables()
45 IWL_ERR(mld, "BIOS contains WGDS but no WRDS\n"); in iwl_mld_get_bios_tables()
49 ret = iwl_bios_get_ewrd_table(&mld->fwrt); in iwl_mld_get_bios_tables()
54 IWL_DEBUG_RADIO(mld, in iwl_mld_get_bios_tables()
[all …]
H A Dled.c13 static void iwl_mld_send_led_fw_cmd(struct iwl_mld *mld, bool on) in iwl_mld_send_led_fw_cmd() argument
20 if (WARN_ON(!mld->fw_status.running)) in iwl_mld_send_led_fw_cmd()
23 err = iwl_mld_send_cmd_with_flags_pdu(mld, WIDE_ID(LONG_GROUP, in iwl_mld_send_led_fw_cmd()
28 IWL_WARN(mld, "LED command failed: %d\n", err); in iwl_mld_send_led_fw_cmd()
34 struct iwl_mld *mld = container_of(led_cdev, struct iwl_mld, led); in iwl_led_brightness_set() local
36 if (!mld->fw_status.running) in iwl_led_brightness_set()
39 iwl_mld_send_led_fw_cmd(mld, brightness > 0); in iwl_led_brightness_set()
42 int iwl_mld_leds_init(struct iwl_mld *mld) in iwl_mld_leds_init() argument
49 IWL_ERR(mld, "Blink led mode not supported, used default\n"); in iwl_mld_leds_init()
56 IWL_INFO(mld, "Led disabled\n"); in iwl_mld_leds_init()
[all …]
H A Dlow_latency.c19 static bool iwl_mld_calc_low_latency(struct iwl_mld *mld, in iwl_mld_calc_low_latency() argument
22 struct iwl_mld_low_latency *ll = &mld->low_latency; in iwl_mld_calc_low_latency()
24 u8 num_rx_q = mld->trans->info.num_rxqs; in iwl_mld_calc_low_latency()
45 &mld->low_latency.pkts_counters[q]; in iwl_mld_calc_low_latency()
62 mld->low_latency.result[mac_id] = true; in iwl_mld_calc_low_latency()
64 mld->low_latency.result[mac_id] = false; in iwl_mld_calc_low_latency()
66 global_low_latency |= mld->low_latency.result[mac_id]; in iwl_mld_calc_low_latency()
75 struct iwl_mld *mld = _data; in iwl_mld_low_latency_iter() local
80 if (WARN_ON(mld_vif->fw_id >= ARRAY_SIZE(mld->low_latency.result))) in iwl_mld_low_latency_iter()
83 low_latency = mld->low_latency.result[mld_vif->fw_id]; in iwl_mld_low_latency_iter()
[all …]
H A Dmld.h326 iwl_cleanup_mld(struct iwl_mld *mld) in iwl_cleanup_mld() argument
328 CLEANUP_STRUCT(mld); in iwl_cleanup_mld()
329 CLEANUP_STRUCT(&mld->scan); in iwl_cleanup_mld()
332 mld->fw_status.in_d3 = false; in iwl_cleanup_mld()
335 iwl_mld_low_latency_restart_cleanup(mld); in iwl_cleanup_mld()
362 iwl_mld_add_debugfs_files(struct iwl_mld *mld, struct dentry *debugfs_dir);
365 iwl_mld_add_debugfs_files(struct iwl_mld *mld, struct dentry *debugfs_dir) in iwl_mld_add_debugfs_files() argument
369 int iwl_mld_load_fw(struct iwl_mld *mld);
370 void iwl_mld_stop_fw(struct iwl_mld *mld);
371 int iwl_mld_start_fw(struct iwl_mld *mld);
[all …]
H A Dscan.c139 static bool iwl_mld_get_respect_p2p_go(struct iwl_mld *mld, in iwl_mld_get_respect_p2p_go() argument
151 ieee80211_iterate_active_interfaces_mtx(mld->hw, in iwl_mld_get_respect_p2p_go()
215 iwl_mld_scan_type iwl_mld_get_scan_type(struct iwl_mld *mld, in iwl_mld_get_scan_type() argument
219 enum iwl_mld_traffic_load load = mld->scan.traffic_load.status; in iwl_mld_get_scan_type()
249 iwl_mld_scan_add_2ghz_elems(struct iwl_mld *mld, const u8 *ies, in iwl_mld_scan_add_2ghz_elems() argument
321 iwl_mld_scan_uid_by_status(struct iwl_mld *mld, int status) in iwl_mld_scan_uid_by_status() argument
323 for (int i = 0; i < ARRAY_SIZE(mld->scan.uid_status); i++) in iwl_mld_scan_uid_by_status()
324 if (mld->scan.uid_status[i] == status) in iwl_mld_scan_uid_by_status()
360 iwl_mld_scan_fits(struct iwl_mld *mld, int n_ssids, in iwl_mld_scan_fits() argument
364 (n_channels <= mld->fw->ucode_capa.n_scan_channels) && in iwl_mld_scan_fits()
[all …]
H A Diface.c22 struct iwl_mld *mld = mld_vif->mld; in iwl_mld_cleanup_vif() local
28 iwl_mld_free_internal_sta(mld, &mld_vif->aux_sta); in iwl_mld_cleanup_vif()
34 ieee80211_remain_on_channel_expired(mld->hw); in iwl_mld_cleanup_vif()
39 iwl_mld_cleanup_link(mld_vif->mld, link); in iwl_mld_cleanup_vif()
56 ieee80211_iter_keys(mld->hw, vif, iwl_mld_cleanup_keys_iter, NULL); in iwl_mld_cleanup_vif()
61 static int iwl_mld_send_mac_cmd(struct iwl_mld *mld, in iwl_mld_send_mac_cmd() argument
66 lockdep_assert_wiphy(mld->wiphy); in iwl_mld_send_mac_cmd()
68 ret = iwl_mld_send_cmd_pdu(mld, in iwl_mld_send_mac_cmd()
72 IWL_ERR(mld, "Failed to send MAC_CONFIG_CMD ret = %d\n", ret); in iwl_mld_send_mac_cmd()
96 static bool iwl_mld_is_nic_ack_enabled(struct iwl_mld *mld, in iwl_mld_is_nic_ack_enabled() argument
[all …]
H A Dmcc.c37 iwl_mld_update_mcc(struct iwl_mld *mld, const char *alpha2, in iwl_mld_update_mcc() argument
55 IWL_DEBUG_LAR(mld, "send MCC update to FW with '%c%c' src = %d\n", in iwl_mld_update_mcc()
58 ret = iwl_mld_send_cmd(mld, &cmd); in iwl_mld_update_mcc()
70 IWL_FW_CHECK(mld, !mcc, "mcc can't be 0: %d\n", mcc); in iwl_mld_update_mcc()
72 IWL_DEBUG_LAR(mld, in iwl_mld_update_mcc()
83 iwl_mld_get_regdomain(struct iwl_mld *mld, in iwl_mld_get_regdomain() argument
90 u8 resp_ver = iwl_fw_lookup_notif_ver(mld->fw, IWL_ALWAYS_LONG_GROUP, in iwl_mld_get_regdomain()
93 IWL_DEBUG_LAR(mld, "Getting regdomain data for %s from FW\n", alpha2); in iwl_mld_get_regdomain()
95 lockdep_assert_wiphy(mld->wiphy); in iwl_mld_get_regdomain()
97 resp = iwl_mld_update_mcc(mld, alpha2, src_id); in iwl_mld_get_regdomain()
[all …]
H A Dmlo.c31 static void iwl_mld_print_emlsr_blocked(struct iwl_mld *mld, u32 mask) in iwl_mld_print_emlsr_blocked() argument
35 IWL_DEBUG_EHT(mld, in iwl_mld_print_emlsr_blocked()
70 static void iwl_mld_print_emlsr_exit(struct iwl_mld *mld, u32 mask) in iwl_mld_print_emlsr_exit() argument
74 IWL_DEBUG_EHT(mld, in iwl_mld_print_emlsr_exit()
92 iwl_mld_unblock_emlsr(mld_vif->mld, vif, in iwl_mld_emlsr_prevent_done_wk()
108 iwl_mld_unblock_emlsr(mld_vif->mld, vif, in iwl_mld_emlsr_tmp_non_bss_done_wk()
124 static void iwl_mld_check_emlsr_prevention(struct iwl_mld *mld, in iwl_mld_check_emlsr_prevention() argument
170 IWL_DEBUG_EHT(mld, in iwl_mld_check_emlsr_prevention()
175 wiphy_delayed_work_queue(mld->wiphy, in iwl_mld_check_emlsr_prevention()
192 static int _iwl_mld_exit_emlsr(struct iwl_mld *mld, struct ieee80211_vif *vif, in _iwl_mld_exit_emlsr() argument
[all …]
H A Dnan.c15 bool iwl_mld_nan_supported(struct iwl_mld *mld) in iwl_mld_nan_supported() argument
17 return fw_has_capa(&mld->fw->ucode_capa, in iwl_mld_nan_supported()
21 static int iwl_mld_nan_send_config_cmd(struct iwl_mld *mld, in iwl_mld_nan_send_config_cmd() argument
38 return iwl_mld_send_cmd(mld, &hcmd); in iwl_mld_nan_send_config_cmd()
41 static int iwl_mld_nan_config(struct iwl_mld *mld, in iwl_mld_nan_config() argument
52 lockdep_assert_wiphy(mld->wiphy); in iwl_mld_nan_config()
119 return iwl_mld_nan_send_config_cmd(mld, &cmd, data, in iwl_mld_nan_config()
127 struct iwl_mld *mld = IWL_MAC80211_GET_MLD(hw); in iwl_mld_start_nan() local
132 IWL_DEBUG_MAC80211(mld, "NAN: start: bands=0x%x\n", conf->bands); in iwl_mld_start_nan()
134 ret = iwl_mld_update_emlsr_block(mld, true, IWL_MLD_EMLSR_BLOCKED_NAN); in iwl_mld_start_nan()
[all …]
H A Dftm-initiator.c17 static void iwl_mld_ftm_cmd_common(struct iwl_mld *mld, in iwl_mld_ftm_cmd_common() argument
64 iwl_mld_ftm_set_target_chandef(struct iwl_mld *mld, in iwl_mld_ftm_set_target_chandef() argument
94 IWL_ERR(mld, "Unsupported BW in FTM request (%d)\n", in iwl_mld_ftm_set_target_chandef()
115 iwl_mld_ftm_set_target_flags(struct iwl_mld *mld, in iwl_mld_ftm_set_target_flags() argument
148 static void iwl_mld_ftm_set_sta(struct iwl_mld *mld, struct ieee80211_vif *vif, in iwl_mld_ftm_set_sta() argument
162 sta_id_mask = iwl_mld_fw_sta_id_mask(mld, mld_vif->ap_sta); in iwl_mld_ftm_set_sta()
174 iwl_mld_ftm_set_target(struct iwl_mld *mld, struct ieee80211_vif *vif, in iwl_mld_ftm_set_target() argument
181 ret = iwl_mld_ftm_set_target_chandef(mld, peer, target); in iwl_mld_ftm_set_target()
189 iwl_mld_ftm_set_target_flags(mld, peer, target); in iwl_mld_ftm_set_target()
190 iwl_mld_ftm_set_sta(mld, vif, peer, target); in iwl_mld_ftm_set_target()
[all …]
H A Dagg.c10 iwl_mld_reorder_release_frames(struct iwl_mld *mld, struct ieee80211_sta *sta, in iwl_mld_reorder_release_frames() argument
33 iwl_mld_pass_packet_to_mac80211(mld, napi, skb, in iwl_mld_reorder_release_frames()
42 static void iwl_mld_release_frames_from_notif(struct iwl_mld *mld, in iwl_mld_release_frames_from_notif() argument
51 IWL_DEBUG_HT(mld, "Frame release notification for BAID %u, NSSN %d\n", in iwl_mld_release_frames_from_notif()
55 baid >= ARRAY_SIZE(mld->fw_id_to_ba))) in iwl_mld_release_frames_from_notif()
60 ba_data = rcu_dereference(mld->fw_id_to_ba[baid]); in iwl_mld_release_frames_from_notif()
62 IWL_DEBUG_HT(mld, "BAID %d not found in map\n", baid); in iwl_mld_release_frames_from_notif()
68 link_sta = rcu_dereference(mld->fw_id_to_link_sta[sta_id]); in iwl_mld_release_frames_from_notif()
74 iwl_mld_reorder_release_frames(mld, link_sta->sta, napi, ba_data, in iwl_mld_release_frames_from_notif()
80 void iwl_mld_handle_frame_release_notif(struct iwl_mld *mld, in iwl_mld_handle_frame_release_notif() argument
[all …]
H A Dtx.c42 void iwl_mld_toggle_tx_ant(struct iwl_mld *mld, u8 *ant) in iwl_mld_toggle_tx_ant() argument
44 *ant = iwl_mld_next_ant(iwl_mld_get_valid_tx_ant(mld), *ant); in iwl_mld_toggle_tx_ant()
48 iwl_mld_get_queue_size(struct iwl_mld *mld, struct ieee80211_txq *txq) in iwl_mld_get_queue_size() argument
55 lockdep_assert_wiphy(mld->wiphy); in iwl_mld_get_queue_size()
70 static int iwl_mld_allocate_txq(struct iwl_mld *mld, struct ieee80211_txq *txq) in iwl_mld_allocate_txq() argument
73 u32 fw_sta_mask = iwl_mld_fw_sta_id_mask(mld, txq->sta); in iwl_mld_allocate_txq()
79 mld->trans->mac_cfg->base->wd_timeout; in iwl_mld_allocate_txq()
82 lockdep_assert_wiphy(mld->wiphy); in iwl_mld_allocate_txq()
86 mld->trans->mac_cfg->base->min_txq_size); in iwl_mld_allocate_txq()
88 size = iwl_mld_get_queue_size(mld, txq); in iwl_mld_allocate_txq()
[all …]
H A Dsta.c20 int iwl_mld_fw_sta_id_from_link_sta(struct iwl_mld *mld, in iwl_mld_fw_sta_id_from_link_sta() argument
29 lockdep_assert_wiphy(mld->wiphy); in iwl_mld_fw_sta_id_from_link_sta()
37 WARN_ON(!iwl_mld_error_before_recovery(mld)); in iwl_mld_fw_sta_id_from_link_sta()
149 static void iwl_mld_parse_ppe(struct iwl_mld *mld, in iwl_mld_parse_ppe() argument
160 IWL_DEBUG_INFO(mld, "Got NSS = %d - trimming to %d\n", nss, in iwl_mld_parse_ppe()
198 static void iwl_mld_set_pkt_ext_from_he_ppe(struct iwl_mld *mld, in iwl_mld_set_pkt_ext_from_he_ppe() argument
212 iwl_mld_parse_ppe(mld, pkt_ext, nss, ru_index_bitmap, ppe, ppe_pos_bit, in iwl_mld_set_pkt_ext_from_he_ppe()
277 static void iwl_mld_fill_pkt_ext(struct iwl_mld *mld, in iwl_mld_fill_pkt_ext() argument
308 iwl_mld_parse_ppe(mld, pkt_ext, nss, ru_index_bitmap, in iwl_mld_fill_pkt_ext()
320 iwl_mld_set_pkt_ext_from_he_ppe(mld, link_sta, pkt_ext, in iwl_mld_fill_pkt_ext()
[all …]
H A Dtime_sync.c12 static int iwl_mld_init_time_sync(struct iwl_mld *mld, u32 protocols, in iwl_mld_init_time_sync() argument
23 rcu_assign_pointer(mld->time_sync, time_sync); in iwl_mld_init_time_sync()
28 int iwl_mld_time_sync_fw_config(struct iwl_mld *mld) in iwl_mld_time_sync_fw_config() argument
34 time_sync = wiphy_dereference(mld->wiphy, mld->time_sync); in iwl_mld_time_sync_fw_config()
41 err = iwl_mld_send_cmd_pdu(mld, in iwl_mld_time_sync_fw_config()
46 IWL_ERR(mld, "Failed to send time sync cfg cmd: %d\n", err); in iwl_mld_time_sync_fw_config()
51 int iwl_mld_time_sync_config(struct iwl_mld *mld, const u8 *addr, u32 protocols) in iwl_mld_time_sync_config() argument
56 time_sync = wiphy_dereference(mld->wiphy, mld->time_sync); in iwl_mld_time_sync_config()
63 IWL_DEBUG_INFO(mld, "Time sync: reject config for peer: %pM\n", in iwl_mld_time_sync_config()
72 IWL_DEBUG_INFO(mld, "Time sync: set peer addr=%pM\n", addr); in iwl_mld_time_sync_config()
[all …]
H A Dap.c19 void iwl_mld_set_tim_idx(struct iwl_mld *mld, __le32 *tim_index, in iwl_mld_set_tim_idx() argument
39 IWL_WARN(mld, "Unable to find TIM Element in beacon\n"); in iwl_mld_set_tim_idx()
42 u8 iwl_mld_get_rate_flags(struct iwl_mld *mld, in iwl_mld_get_rate_flags() argument
55 mld->hw->wiphy->bands[band]; in iwl_mld_get_rate_flags()
59 rate_idx = iwl_mld_get_lowest_rate(mld, info, vif); in iwl_mld_get_rate_flags()
74 int iwl_mld_send_beacon_template_cmd(struct iwl_mld *mld, in iwl_mld_send_beacon_template_cmd() argument
89 return iwl_mld_send_cmd(mld, &hcmd); in iwl_mld_send_beacon_template_cmd()
92 static int iwl_mld_fill_beacon_template_cmd(struct iwl_mld *mld, in iwl_mld_fill_beacon_template_cmd() argument
104 lockdep_assert_wiphy(mld->wiphy); in iwl_mld_fill_beacon_template_cmd()
111 ctx = wiphy_dereference(mld->wiphy, link->chanctx_conf); in iwl_mld_fill_beacon_template_cmd()
[all …]
H A Dnotif.c69 static bool iwl_mld_cancel_##name##_notif(struct iwl_mld *mld, \
117 static void iwl_mld_handle_mfuart_notif(struct iwl_mld *mld, in iwl_mld_handle_mfuart_notif() argument
122 IWL_DEBUG_INFO(mld, in iwl_mld_handle_mfuart_notif()
126 IWL_DEBUG_INFO(mld, in iwl_mld_handle_mfuart_notif()
170 static void iwl_mld_handle_mu_mimo_grp_notif(struct iwl_mld *mld, in iwl_mld_handle_mu_mimo_grp_notif() argument
175 ieee80211_iterate_active_interfaces_atomic(mld->hw, in iwl_mld_handle_mu_mimo_grp_notif()
182 iwl_mld_handle_channel_switch_start_notif(struct iwl_mld *mld, in iwl_mld_handle_channel_switch_start_notif() argument
188 iwl_mld_fw_id_to_link_conf(mld, link_id); in iwl_mld_handle_channel_switch_start_notif()
196 IWL_DEBUG_INFO(mld, in iwl_mld_handle_channel_switch_start_notif()
220 if (iwl_mld_send_cmd_pdu(mld, in iwl_mld_handle_channel_switch_start_notif()
[all …]
H A Ddebugfs.c33 debugfs_create_file(alias, mode, parent, mld, \
38 static bool iwl_mld_dbgfs_fw_cmd_disabled(struct iwl_mld *mld) in iwl_mld_dbgfs_fw_cmd_disabled() argument
41 return !mld->fw_status.running || mld->fw_status.in_d3; in iwl_mld_dbgfs_fw_cmd_disabled()
43 return !mld->fw_status.running; in iwl_mld_dbgfs_fw_cmd_disabled()
47 static ssize_t iwl_dbgfs_fw_dbg_clear_write(struct iwl_mld *mld, in iwl_dbgfs_fw_dbg_clear_write() argument
53 if (iwl_mld_dbgfs_fw_cmd_disabled(mld)) in iwl_dbgfs_fw_dbg_clear_write()
56 iwl_fw_dbg_clear_monitor_buf(&mld->fwrt); in iwl_dbgfs_fw_dbg_clear_write()
61 static ssize_t iwl_dbgfs_fw_nmi_write(struct iwl_mld *mld, char *buf, in iwl_dbgfs_fw_nmi_write() argument
64 if (iwl_mld_dbgfs_fw_cmd_disabled(mld)) in iwl_dbgfs_fw_nmi_write()
67 IWL_ERR(mld, "Triggering an NMI from debugfs\n"); in iwl_dbgfs_fw_nmi_write()
[all …]
H A Dd3.c42 struct iwl_mld *mld; member
173 struct iwl_mld *mld = IWL_MAC80211_GET_MLD(hw); in iwl_mld_set_rekey_data() local
177 lockdep_assert_wiphy(mld->wiphy); in iwl_mld_set_rekey_data()
218 iwl_mld_netdetect_config(struct iwl_mld *mld, in iwl_mld_netdetect_config() argument
227 ret = iwl_mld_scan_stop(mld, IWL_MLD_SCAN_SCHED, true); in iwl_mld_netdetect_config()
231 ret = iwl_mld_sched_scan_start(mld, vif, netdetect_cfg, &ies, in iwl_mld_netdetect_config()
282 iwl_mld_convert_gtk_resume_data(struct iwl_mld *mld, in iwl_mld_convert_gtk_resume_data() argument
343 iwl_mld_convert_ptk_resume_seq(struct iwl_mld *mld, in iwl_mld_convert_ptk_resume_seq() argument
449 iwl_mld_convert_mlo_keys(struct iwl_mld *mld, in iwl_mld_convert_mlo_keys() argument
458 if (IWL_FW_CHECK(mld, wowlan_status->num_mlo_keys > WOWLAN_MAX_MLO_KEYS, in iwl_mld_convert_mlo_keys()
[all …]
H A Dstats.c16 static int iwl_mld_send_fw_stats_cmd(struct iwl_mld *mld, u32 cfg_mask, in iwl_mld_send_fw_stats_cmd() argument
26 return iwl_mld_send_cmd_pdu(mld, cmd_id, &stats_cmd); in iwl_mld_send_fw_stats_cmd()
29 int iwl_mld_clear_stats_in_fw(struct iwl_mld *mld) in iwl_mld_clear_stats_in_fw() argument
35 return iwl_mld_send_fw_stats_cmd(mld, cfg_mask, 0, type_mask); in iwl_mld_clear_stats_in_fw()
39 iwl_mld_fill_stats_from_oper_notif(struct iwl_mld *mld, in iwl_mld_fill_stats_from_oper_notif() argument
55 link_sta = rcu_dereference(mld->fw_id_to_link_sta[fw_sta_id]); in iwl_mld_fill_stats_from_oper_notif()
77 struct iwl_mld *mld; member
88 iwl_mld_fill_stats_from_oper_notif(stats_data->mld, pkt, in iwl_mld_wait_stats_handler()
102 iwl_mld_fw_stats_to_mac80211(struct iwl_mld *mld, struct iwl_mld_sta *mld_sta, in iwl_mld_fw_stats_to_mac80211() argument
118 .mld = mld, in iwl_mld_fw_stats_to_mac80211()
[all …]
H A Dlink.c19 static int iwl_mld_send_link_cmd(struct iwl_mld *mld, in iwl_mld_send_link_cmd() argument
25 lockdep_assert_wiphy(mld->wiphy); in iwl_mld_send_link_cmd()
28 ret = iwl_mld_send_cmd_pdu(mld, in iwl_mld_send_link_cmd()
32 IWL_ERR(mld, "Failed to send LINK_CONFIG_CMD (action:%d): %d\n", in iwl_mld_send_link_cmd()
37 static int iwl_mld_add_link_to_fw(struct iwl_mld *mld, in iwl_mld_add_link_to_fw() argument
45 lockdep_assert_wiphy(mld->wiphy); in iwl_mld_add_link_to_fw()
60 return iwl_mld_send_link_cmd(mld, &cmd, FW_CTXT_ACTION_ADD); in iwl_mld_add_link_to_fw()
64 static void iwl_mld_fill_rates(struct iwl_mld *mld, in iwl_mld_fill_rates() argument
70 iwl_mld_get_chandef_from_chanctx(mld, chan_ctx); in iwl_mld_fill_rates()
72 mld->hw->wiphy->bands[chandef->chan->band]; in iwl_mld_fill_rates()
[all …]

1234