Lines Matching refs:priv
38 void iwl_connection_init_rx_config(struct iwl_priv *priv, in iwl_connection_init_rx_config() argument
68 IWL_ERR(priv, "Unsupported interface type %d\n", in iwl_connection_init_rx_config()
76 if (!hw_to_local(priv->hw)->short_preamble) in iwl_connection_init_rx_config()
83 cpu_to_le16(priv->hw->conf.chandef.chan->hw_value); in iwl_connection_init_rx_config()
84 priv->band = priv->hw->conf.chandef.chan->band; in iwl_connection_init_rx_config()
86 iwl_set_flags_for_band(priv, ctx, priv->band, ctx->vif); in iwl_connection_init_rx_config()
99 static int iwlagn_disable_bss(struct iwl_priv *priv, in iwlagn_disable_bss() argument
107 ret = iwl_dvm_send_cmd_pdu(priv, ctx->rxon_cmd, in iwlagn_disable_bss()
113 IWL_DEBUG_QUIET_RFKILL(priv, in iwlagn_disable_bss()
119 static int iwlagn_disable_pan(struct iwl_priv *priv, in iwlagn_disable_pan() argument
131 iwl_init_notification_wait(&priv->notif_wait, &disable_wait, in iwlagn_disable_pan()
137 ret = iwl_dvm_send_cmd_pdu(priv, ctx->rxon_cmd, in iwlagn_disable_pan()
144 IWL_ERR(priv, "Error disabling PAN (%d)\n", ret); in iwlagn_disable_pan()
145 iwl_remove_notification(&priv->notif_wait, &disable_wait); in iwlagn_disable_pan()
147 ret = iwl_wait_notification(&priv->notif_wait, in iwlagn_disable_pan()
150 IWL_ERR(priv, "Timed out waiting for PAN disable\n"); in iwlagn_disable_pan()
156 static int iwlagn_disconn_pan(struct iwl_priv *priv, in iwlagn_disconn_pan() argument
164 ret = iwl_dvm_send_cmd_pdu(priv, ctx->rxon_cmd, 0, in iwlagn_disconn_pan()
172 static void iwlagn_update_qos(struct iwl_priv *priv, in iwlagn_update_qos() argument
189 IWL_DEBUG_INFO(priv, "send QoS cmd with Qos active=%d FLAGS=0x%X\n", in iwlagn_update_qos()
193 ret = iwl_dvm_send_cmd_pdu(priv, ctx->qos_cmd, 0, in iwlagn_update_qos()
197 IWL_DEBUG_QUIET_RFKILL(priv, "Failed to update QoS\n"); in iwlagn_update_qos()
200 static int iwlagn_update_beacon(struct iwl_priv *priv, in iwlagn_update_beacon() argument
203 lockdep_assert_held(&priv->mutex); in iwlagn_update_beacon()
205 dev_kfree_skb(priv->beacon_skb); in iwlagn_update_beacon()
206 priv->beacon_skb = ieee80211_beacon_get(priv->hw, vif); in iwlagn_update_beacon()
207 if (!priv->beacon_skb) in iwlagn_update_beacon()
209 return iwlagn_send_beacon_cmd(priv); in iwlagn_update_beacon()
212 static int iwlagn_send_rxon_assoc(struct iwl_priv *priv, in iwlagn_send_rxon_assoc() argument
232 IWL_DEBUG_INFO(priv, "Using current RXON_ASSOC. Not resending.\n"); in iwlagn_send_rxon_assoc()
252 ret = iwl_dvm_send_cmd_pdu(priv, ctx->rxon_assoc_cmd, in iwlagn_send_rxon_assoc()
292 static int iwl_send_rxon_timing(struct iwl_priv *priv, in iwl_send_rxon_timing() argument
301 conf = &priv->hw->conf; in iwl_send_rxon_timing()
303 lockdep_assert_held(&priv->mutex); in iwl_send_rxon_timing()
307 ctx->timing.timestamp = cpu_to_le64(priv->timestamp); in iwl_send_rxon_timing()
320 iwl_is_associated(priv, IWL_RXON_CTX_BSS) && in iwl_send_rxon_timing()
321 priv->contexts[IWL_RXON_CTX_BSS].vif && in iwl_send_rxon_timing()
322 priv->contexts[IWL_RXON_CTX_BSS].vif->bss_conf.beacon_int) { in iwl_send_rxon_timing()
324 priv->contexts[IWL_RXON_CTX_BSS].timing.beacon_interval; in iwl_send_rxon_timing()
327 iwl_is_associated(priv, IWL_RXON_CTX_PAN) && in iwl_send_rxon_timing()
328 priv->contexts[IWL_RXON_CTX_PAN].vif && in iwl_send_rxon_timing()
329 priv->contexts[IWL_RXON_CTX_PAN].vif->bss_conf.beacon_int && in iwl_send_rxon_timing()
333 priv->contexts[IWL_RXON_CTX_PAN].timing.beacon_interval; in iwl_send_rxon_timing()
343 tsf = priv->timestamp; /* tsf is modifed by do_div: copy it */ in iwl_send_rxon_timing()
350 IWL_DEBUG_ASSOC(priv, in iwl_send_rxon_timing()
356 return iwl_dvm_send_cmd_pdu(priv, ctx->rxon_timing_cmd, in iwl_send_rxon_timing()
360 static int iwlagn_rxon_disconn(struct iwl_priv *priv, in iwlagn_rxon_disconn() argument
367 ret = iwlagn_disable_bss(priv, ctx, &ctx->staging); in iwlagn_rxon_disconn()
369 ret = iwlagn_disable_pan(priv, ctx, &ctx->staging); in iwlagn_rxon_disconn()
373 ret = iwl_send_rxon_timing(priv, ctx); in iwlagn_rxon_disconn()
375 IWL_ERR(priv, "Failed to send timing (%d)!\n", ret); in iwlagn_rxon_disconn()
378 ret = iwlagn_disconn_pan(priv, ctx, &ctx->staging); in iwlagn_rxon_disconn()
388 iwl_clear_ucode_stations(priv, ctx); in iwlagn_rxon_disconn()
390 iwl_update_bcast_station(priv, ctx); in iwlagn_rxon_disconn()
391 iwl_restore_stations(priv, ctx); in iwlagn_rxon_disconn()
392 ret = iwl_restore_default_wep_keys(priv, ctx); in iwlagn_rxon_disconn()
394 IWL_ERR(priv, "Failed to restore WEP keys (%d)\n", ret); in iwlagn_rxon_disconn()
402 static int iwl_set_tx_power(struct iwl_priv *priv, s8 tx_power, bool force) in iwl_set_tx_power() argument
407 struct iwl_rxon_context *ctx = &priv->contexts[IWL_RXON_CTX_BSS]; in iwl_set_tx_power()
409 if (priv->calib_disabled & IWL_TX_POWER_CALIB_DISABLED) in iwl_set_tx_power()
412 lockdep_assert_held(&priv->mutex); in iwl_set_tx_power()
414 if (priv->tx_power_user_lmt == tx_power && !force) in iwl_set_tx_power()
418 IWL_WARN(priv, in iwl_set_tx_power()
425 if (tx_power > DIV_ROUND_UP(priv->nvm_data->max_tx_pwr_half_dbm, 2)) { in iwl_set_tx_power()
426 IWL_WARN(priv, in iwl_set_tx_power()
428 tx_power, priv->nvm_data->max_tx_pwr_half_dbm); in iwl_set_tx_power()
432 if (!iwl_is_ready_rf(priv)) in iwl_set_tx_power()
437 priv->tx_power_next = tx_power; in iwl_set_tx_power()
440 defer = test_bit(STATUS_SCANNING, &priv->status) || in iwl_set_tx_power()
443 IWL_DEBUG_INFO(priv, "Deferring tx power set\n"); in iwl_set_tx_power()
447 prev_tx_power = priv->tx_power_user_lmt; in iwl_set_tx_power()
448 priv->tx_power_user_lmt = tx_power; in iwl_set_tx_power()
450 ret = iwlagn_send_tx_power(priv); in iwl_set_tx_power()
454 priv->tx_power_user_lmt = prev_tx_power; in iwl_set_tx_power()
455 priv->tx_power_next = prev_tx_power; in iwl_set_tx_power()
460 static int iwlagn_rxon_connect(struct iwl_priv *priv, in iwlagn_rxon_connect() argument
468 ret = iwl_send_rxon_timing(priv, ctx); in iwlagn_rxon_connect()
470 IWL_ERR(priv, "Failed to send timing (%d)!\n", ret); in iwlagn_rxon_connect()
475 iwlagn_update_qos(priv, ctx); in iwlagn_rxon_connect()
483 ret = iwlagn_update_beacon(priv, ctx->vif); in iwlagn_rxon_connect()
485 IWL_ERR(priv, in iwlagn_rxon_connect()
492 priv->start_calib = 0; in iwlagn_rxon_connect()
499 ret = iwl_dvm_send_cmd_pdu(priv, ctx->rxon_cmd, 0, in iwlagn_rxon_connect()
502 IWL_ERR(priv, "Error setting new RXON (%d)\n", ret); in iwlagn_rxon_connect()
509 if (iwlagn_update_beacon(priv, ctx->vif)) in iwlagn_rxon_connect()
510 IWL_ERR(priv, "Error sending IBSS beacon\n"); in iwlagn_rxon_connect()
511 iwl_init_sensitivity(priv); in iwlagn_rxon_connect()
520 ret = iwl_set_tx_power(priv, priv->tx_power_next, true); in iwlagn_rxon_connect()
522 IWL_ERR(priv, "Error sending TX power (%d)\n", ret); in iwlagn_rxon_connect()
527 priv->cfg->ht_params && priv->cfg->ht_params->smps_mode) in iwlagn_rxon_connect()
529 priv->cfg->ht_params->smps_mode); in iwlagn_rxon_connect()
534 int iwlagn_set_pan_params(struct iwl_priv *priv) in iwlagn_set_pan_params() argument
541 if (priv->valid_contexts == BIT(IWL_RXON_CTX_BSS)) in iwlagn_set_pan_params()
546 lockdep_assert_held(&priv->mutex); in iwlagn_set_pan_params()
548 ctx_bss = &priv->contexts[IWL_RXON_CTX_BSS]; in iwlagn_set_pan_params()
549 ctx_pan = &priv->contexts[IWL_RXON_CTX_PAN]; in iwlagn_set_pan_params()
578 IWL_ERR(priv, in iwlagn_set_pan_params()
589 if (test_bit(STATUS_SCAN_HW, &priv->status) || in iwlagn_set_pan_params()
605 if (test_bit(STATUS_SCAN_HW, &priv->status)) { in iwlagn_set_pan_params()
614 ret = iwl_dvm_send_cmd_pdu(priv, REPLY_WIPAN_PARAMS, 0, in iwlagn_set_pan_params()
617 IWL_ERR(priv, "Error setting PAN parameters (%d)\n", ret); in iwlagn_set_pan_params()
622 static void _iwl_set_rxon_ht(struct iwl_priv *priv, in _iwl_set_rxon_ht() argument
647 if (iwl_is_ht40_tx_allowed(priv, ctx, NULL)) { in _iwl_set_rxon_ht()
687 IWL_ERR(priv, in _iwl_set_rxon_ht()
696 iwlagn_set_rxon_chain(priv, ctx); in _iwl_set_rxon_ht()
698 IWL_DEBUG_ASSOC(priv, "rxon flags 0x%X operation mode :0x%X " in _iwl_set_rxon_ht()
704 void iwl_set_rxon_ht(struct iwl_priv *priv, struct iwl_ht_config *ht_conf) in iwl_set_rxon_ht() argument
708 for_each_context(priv, ctx) in iwl_set_rxon_ht()
709 _iwl_set_rxon_ht(priv, ht_conf, ctx); in iwl_set_rxon_ht()
719 void iwl_set_rxon_channel(struct iwl_priv *priv, struct ieee80211_channel *ch, in iwl_set_rxon_channel() argument
726 (priv->band == band)) in iwl_set_rxon_channel()
735 priv->band = band; in iwl_set_rxon_channel()
737 IWL_DEBUG_INFO(priv, "Staging channel set to %d [%d]\n", channel, band); in iwl_set_rxon_channel()
741 void iwl_set_flags_for_band(struct iwl_priv *priv, in iwl_set_flags_for_band() argument
764 static void iwl_set_rxon_hwcrypto(struct iwl_priv *priv, in iwl_set_rxon_hwcrypto() argument
777 static int iwl_check_rxon_cmd(struct iwl_priv *priv, in iwl_check_rxon_cmd() argument
785 IWL_WARN(priv, "check 2.4G: wrong narrow\n"); in iwl_check_rxon_cmd()
789 IWL_WARN(priv, "check 2.4G: wrong radar\n"); in iwl_check_rxon_cmd()
794 IWL_WARN(priv, "check 5.2G: not short slot!\n"); in iwl_check_rxon_cmd()
798 IWL_WARN(priv, "check 5.2G: CCK!\n"); in iwl_check_rxon_cmd()
803 IWL_WARN(priv, "mac/bssid mcast!\n"); in iwl_check_rxon_cmd()
810 IWL_WARN(priv, "neither 1 nor 6 are basic\n"); in iwl_check_rxon_cmd()
815 IWL_WARN(priv, "aid > 2007\n"); in iwl_check_rxon_cmd()
821 IWL_WARN(priv, "CCK and short slot\n"); in iwl_check_rxon_cmd()
827 IWL_WARN(priv, "CCK and auto detect\n"); in iwl_check_rxon_cmd()
834 IWL_WARN(priv, "TGg but no auto-detect\n"); in iwl_check_rxon_cmd()
839 IWL_WARN(priv, "zero channel is invalid\n"); in iwl_check_rxon_cmd()
857 static int iwl_full_rxon_required(struct iwl_priv *priv, in iwl_full_rxon_required() argument
865 IWL_DEBUG_INFO(priv, "need full RXON - " #cond "\n"); \ in iwl_full_rxon_required()
871 IWL_DEBUG_INFO(priv, "need full RXON - " \ in iwl_full_rxon_required()
913 void iwl_print_rx_config_cmd(struct iwl_priv *priv, in iwl_print_rx_config_cmd() argument
916 struct iwl_rxon_context *ctx = &priv->contexts[ctxid]; in iwl_print_rx_config_cmd()
919 IWL_DEBUG_RADIO(priv, "RX CONFIG:\n"); in iwl_print_rx_config_cmd()
920 iwl_print_hex_dump(priv, IWL_DL_RADIO, (u8 *) rxon, sizeof(*rxon)); in iwl_print_rx_config_cmd()
921 IWL_DEBUG_RADIO(priv, "u16 channel: 0x%x\n", in iwl_print_rx_config_cmd()
923 IWL_DEBUG_RADIO(priv, "u32 flags: 0x%08X\n", in iwl_print_rx_config_cmd()
925 IWL_DEBUG_RADIO(priv, "u32 filter_flags: 0x%08x\n", in iwl_print_rx_config_cmd()
927 IWL_DEBUG_RADIO(priv, "u8 dev_type: 0x%x\n", rxon->dev_type); in iwl_print_rx_config_cmd()
928 IWL_DEBUG_RADIO(priv, "u8 ofdm_basic_rates: 0x%02x\n", in iwl_print_rx_config_cmd()
930 IWL_DEBUG_RADIO(priv, "u8 cck_basic_rates: 0x%02x\n", in iwl_print_rx_config_cmd()
932 IWL_DEBUG_RADIO(priv, "u8[6] node_addr: %pM\n", rxon->node_addr); in iwl_print_rx_config_cmd()
933 IWL_DEBUG_RADIO(priv, "u8[6] bssid_addr: %pM\n", rxon->bssid_addr); in iwl_print_rx_config_cmd()
934 IWL_DEBUG_RADIO(priv, "u16 assoc_id: 0x%x\n", in iwl_print_rx_config_cmd()
939 static void iwl_calc_basic_rates(struct iwl_priv *priv, in iwl_calc_basic_rates() argument
952 sband = priv->hw->wiphy->bands[priv->hw->conf.chandef.chan->band]; in iwl_calc_basic_rates()
1022 IWL_DEBUG_RATE(priv, "Set basic rates cck:0x%.2x ofdm:0x%.2x\n", in iwl_calc_basic_rates()
1048 int iwlagn_commit_rxon(struct iwl_priv *priv, struct iwl_rxon_context *ctx) in iwlagn_commit_rxon() argument
1055 lockdep_assert_held(&priv->mutex); in iwlagn_commit_rxon()
1057 if (!iwl_is_alive(priv)) in iwlagn_commit_rxon()
1070 iwl_calc_basic_rates(priv, ctx); in iwlagn_commit_rxon()
1076 if (!priv->hw_params.use_rts_for_aggregation) in iwlagn_commit_rxon()
1085 iwl_print_rx_config_cmd(priv, ctx->ctxid); in iwlagn_commit_rxon()
1086 ret = iwl_check_rxon_cmd(priv, ctx); in iwlagn_commit_rxon()
1088 IWL_ERR(priv, "Invalid RXON configuration. Not committing.\n"); in iwlagn_commit_rxon()
1096 if (test_bit(STATUS_CHANNEL_SWITCH_PENDING, &priv->status) && in iwlagn_commit_rxon()
1097 (priv->switch_channel != ctx->staging.channel)) { in iwlagn_commit_rxon()
1098 IWL_DEBUG_11H(priv, "abort channel switch on %d\n", in iwlagn_commit_rxon()
1099 le16_to_cpu(priv->switch_channel)); in iwlagn_commit_rxon()
1100 iwl_chswitch_done(priv, false); in iwlagn_commit_rxon()
1108 if (!iwl_full_rxon_required(priv, ctx)) { in iwlagn_commit_rxon()
1109 ret = iwlagn_send_rxon_assoc(priv, ctx); in iwlagn_commit_rxon()
1111 IWL_ERR(priv, "Error setting RXON_ASSOC (%d)\n", ret); in iwlagn_commit_rxon()
1120 iwl_set_tx_power(priv, priv->tx_power_next, false); in iwlagn_commit_rxon()
1123 iwl_power_update_mode(priv, true); in iwlagn_commit_rxon()
1128 iwl_set_rxon_hwcrypto(priv, ctx, !iwlwifi_mod_params.sw_crypto); in iwlagn_commit_rxon()
1130 IWL_DEBUG_INFO(priv, in iwlagn_commit_rxon()
1145 ret = iwlagn_rxon_disconn(priv, ctx); in iwlagn_commit_rxon()
1149 ret = iwlagn_set_pan_params(priv); in iwlagn_commit_rxon()
1154 return iwlagn_rxon_connect(priv, ctx); in iwlagn_commit_rxon()
1179 struct iwl_priv *priv = IWL_MAC80211_GET_DVM(hw); in iwlagn_mac_config() local
1185 IWL_DEBUG_MAC80211(priv, "enter: changed %#x\n", changed); in iwlagn_mac_config()
1187 mutex_lock(&priv->mutex); in iwlagn_mac_config()
1189 if (unlikely(test_bit(STATUS_SCANNING, &priv->status))) { in iwlagn_mac_config()
1190 IWL_DEBUG_MAC80211(priv, "leave - scanning\n"); in iwlagn_mac_config()
1194 if (!iwl_is_ready(priv)) { in iwlagn_mac_config()
1195 IWL_DEBUG_MAC80211(priv, "leave - not ready\n"); in iwlagn_mac_config()
1202 priv->current_ht_config.smps = conf->smps_mode; in iwlagn_mac_config()
1211 for_each_context(priv, ctx) in iwlagn_mac_config()
1212 iwlagn_set_rxon_chain(priv, ctx); in iwlagn_mac_config()
1216 for_each_context(priv, ctx) { in iwlagn_mac_config()
1243 iwl_set_rxon_channel(priv, channel, ctx); in iwlagn_mac_config()
1244 iwl_set_rxon_ht(priv, &priv->current_ht_config); in iwlagn_mac_config()
1246 iwl_set_flags_for_band(priv, ctx, channel->band, in iwlagn_mac_config()
1250 iwl_update_bcast_stations(priv); in iwlagn_mac_config()
1255 ret = iwl_power_update_mode(priv, false); in iwlagn_mac_config()
1257 IWL_DEBUG_MAC80211(priv, "Error setting sleep level\n"); in iwlagn_mac_config()
1261 IWL_DEBUG_MAC80211(priv, "TX Power old=%d new=%d\n", in iwlagn_mac_config()
1262 priv->tx_power_user_lmt, conf->power_level); in iwlagn_mac_config()
1264 iwl_set_tx_power(priv, conf->power_level, false); in iwlagn_mac_config()
1267 for_each_context(priv, ctx) { in iwlagn_mac_config()
1270 iwlagn_commit_rxon(priv, ctx); in iwlagn_mac_config()
1273 mutex_unlock(&priv->mutex); in iwlagn_mac_config()
1274 IWL_DEBUG_MAC80211(priv, "leave\n"); in iwlagn_mac_config()
1279 static void iwlagn_check_needed_chains(struct iwl_priv *priv, in iwlagn_check_needed_chains() argument
1286 struct iwl_ht_config *ht_conf = &priv->current_ht_config; in iwlagn_check_needed_chains()
1290 lockdep_assert_held(&priv->mutex); in iwlagn_check_needed_chains()
1360 for_each_context(priv, tmp) { in iwlagn_check_needed_chains()
1373 static void iwlagn_chain_noise_reset(struct iwl_priv *priv) in iwlagn_chain_noise_reset() argument
1375 struct iwl_chain_noise_data *data = &priv->chain_noise_data; in iwlagn_chain_noise_reset()
1378 if (priv->calib_disabled & IWL_CHAIN_NOISE_CALIB_DISABLED) in iwlagn_chain_noise_reset()
1382 iwl_is_any_associated(priv)) { in iwlagn_chain_noise_reset()
1396 priv->phy_calib_chain_noise_reset_cmd); in iwlagn_chain_noise_reset()
1397 ret = iwl_dvm_send_cmd_pdu(priv, in iwlagn_chain_noise_reset()
1401 IWL_ERR(priv, in iwlagn_chain_noise_reset()
1404 IWL_DEBUG_CALIB(priv, "Run chain_noise_calibrate\n"); in iwlagn_chain_noise_reset()
1413 struct iwl_priv *priv = IWL_MAC80211_GET_DVM(hw); in iwlagn_bss_info_changed() local
1418 mutex_lock(&priv->mutex); in iwlagn_bss_info_changed()
1425 iwlagn_lift_passive_no_rx(priv); in iwlagn_bss_info_changed()
1428 if (unlikely(!iwl_is_ready(priv))) { in iwlagn_bss_info_changed()
1429 IWL_DEBUG_MAC80211(priv, "leave - not ready\n"); in iwlagn_bss_info_changed()
1430 mutex_unlock(&priv->mutex); in iwlagn_bss_info_changed()
1435 IWL_DEBUG_MAC80211(priv, "leave - vif is NULL\n"); in iwlagn_bss_info_changed()
1436 mutex_unlock(&priv->mutex); in iwlagn_bss_info_changed()
1445 iwlagn_update_qos(priv, ctx); in iwlagn_bss_info_changed()
1456 priv->timestamp = bss_conf->sync_tsf; in iwlagn_bss_info_changed()
1462 priv->have_rekey_data = false; in iwlagn_bss_info_changed()
1465 iwlagn_bt_coex_rssi_monitor(priv); in iwlagn_bss_info_changed()
1473 iwlagn_check_needed_chains(priv, ctx, bss_conf); in iwlagn_bss_info_changed()
1474 iwl_set_rxon_ht(priv, &priv->current_ht_config); in iwlagn_bss_info_changed()
1477 iwlagn_set_rxon_chain(priv, ctx); in iwlagn_bss_info_changed()
1479 if (bss_conf->use_cts_prot && (priv->band != IEEE80211_BAND_5GHZ)) in iwlagn_bss_info_changed()
1495 priv->beacon_ctx = ctx; in iwlagn_bss_info_changed()
1498 priv->beacon_ctx = NULL; in iwlagn_bss_info_changed()
1519 iwlagn_commit_rxon(priv, ctx); in iwlagn_bss_info_changed()
1527 if (priv->chain_noise_data.state == IWL_CHAIN_NOISE_DONE) in iwlagn_bss_info_changed()
1528 iwl_power_update_mode(priv, false); in iwlagn_bss_info_changed()
1531 iwlagn_chain_noise_reset(priv); in iwlagn_bss_info_changed()
1532 priv->start_calib = 1; in iwlagn_bss_info_changed()
1536 ret = iwlagn_manage_ibss_station(priv, vif, in iwlagn_bss_info_changed()
1539 IWL_ERR(priv, "failed to %s IBSS station %pM\n", in iwlagn_bss_info_changed()
1544 if (changes & BSS_CHANGED_BEACON && priv->beacon_ctx == ctx) { in iwlagn_bss_info_changed()
1545 if (iwlagn_update_beacon(priv, vif)) in iwlagn_bss_info_changed()
1546 IWL_ERR(priv, "Error updating beacon\n"); in iwlagn_bss_info_changed()
1549 mutex_unlock(&priv->mutex); in iwlagn_bss_info_changed()
1552 void iwlagn_post_scan(struct iwl_priv *priv) in iwlagn_post_scan() argument
1560 iwl_power_set_mode(priv, &priv->power_data.sleep_cmd_next, false); in iwlagn_post_scan()
1561 iwl_set_tx_power(priv, priv->tx_power_next, false); in iwlagn_post_scan()
1567 for_each_context(priv, ctx) in iwlagn_post_scan()
1569 iwlagn_commit_rxon(priv, ctx); in iwlagn_post_scan()
1571 iwlagn_set_pan_params(priv); in iwlagn_post_scan()