diff options
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-4965.c')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-4965.c | 25 |
1 files changed, 17 insertions, 8 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-4965.c b/drivers/net/wireless/iwlwifi/iwl-4965.c index 83c52a682622..3297fc7b80bf 100644 --- a/drivers/net/wireless/iwlwifi/iwl-4965.c +++ b/drivers/net/wireless/iwlwifi/iwl-4965.c | |||
@@ -502,14 +502,14 @@ static void iwl4965_tx_queue_set_status(struct iwl_priv *priv, | |||
502 | scd_retry ? "BA" : "AC", txq_id, tx_fifo_id); | 502 | scd_retry ? "BA" : "AC", txq_id, tx_fifo_id); |
503 | } | 503 | } |
504 | 504 | ||
505 | static const u16 default_queue_to_tx_fifo[] = { | 505 | static const s8 default_queue_to_tx_fifo[] = { |
506 | IWL_TX_FIFO_AC3, | 506 | IWL_TX_FIFO_VO, |
507 | IWL_TX_FIFO_AC2, | 507 | IWL_TX_FIFO_VI, |
508 | IWL_TX_FIFO_AC1, | 508 | IWL_TX_FIFO_BE, |
509 | IWL_TX_FIFO_AC0, | 509 | IWL_TX_FIFO_BK, |
510 | IWL49_CMD_FIFO_NUM, | 510 | IWL49_CMD_FIFO_NUM, |
511 | IWL_TX_FIFO_HCCA_1, | 511 | IWL_TX_FIFO_UNUSED, |
512 | IWL_TX_FIFO_HCCA_2 | 512 | IWL_TX_FIFO_UNUSED, |
513 | }; | 513 | }; |
514 | 514 | ||
515 | static int iwl4965_alive_notify(struct iwl_priv *priv) | 515 | static int iwl4965_alive_notify(struct iwl_priv *priv) |
@@ -589,9 +589,15 @@ static int iwl4965_alive_notify(struct iwl_priv *priv) | |||
589 | /* reset to 0 to enable all the queue first */ | 589 | /* reset to 0 to enable all the queue first */ |
590 | priv->txq_ctx_active_msk = 0; | 590 | priv->txq_ctx_active_msk = 0; |
591 | /* Map each Tx/cmd queue to its corresponding fifo */ | 591 | /* Map each Tx/cmd queue to its corresponding fifo */ |
592 | BUILD_BUG_ON(ARRAY_SIZE(default_queue_to_tx_fifo) != 7); | ||
592 | for (i = 0; i < ARRAY_SIZE(default_queue_to_tx_fifo); i++) { | 593 | for (i = 0; i < ARRAY_SIZE(default_queue_to_tx_fifo); i++) { |
593 | int ac = default_queue_to_tx_fifo[i]; | 594 | int ac = default_queue_to_tx_fifo[i]; |
595 | |||
594 | iwl_txq_ctx_activate(priv, i); | 596 | iwl_txq_ctx_activate(priv, i); |
597 | |||
598 | if (ac == IWL_TX_FIFO_UNUSED) | ||
599 | continue; | ||
600 | |||
595 | iwl4965_tx_queue_set_status(priv, &priv->txq[i], ac, 0); | 601 | iwl4965_tx_queue_set_status(priv, &priv->txq[i], ac, 0); |
596 | } | 602 | } |
597 | 603 | ||
@@ -2179,6 +2185,7 @@ static struct iwl_lib_ops iwl4965_lib = { | |||
2179 | .load_ucode = iwl4965_load_bsm, | 2185 | .load_ucode = iwl4965_load_bsm, |
2180 | .dump_nic_event_log = iwl_dump_nic_event_log, | 2186 | .dump_nic_event_log = iwl_dump_nic_event_log, |
2181 | .dump_nic_error_log = iwl_dump_nic_error_log, | 2187 | .dump_nic_error_log = iwl_dump_nic_error_log, |
2188 | .dump_fh = iwl_dump_fh, | ||
2182 | .set_channel_switch = iwl4965_hw_channel_switch, | 2189 | .set_channel_switch = iwl4965_hw_channel_switch, |
2183 | .apm_ops = { | 2190 | .apm_ops = { |
2184 | .init = iwl_apm_init, | 2191 | .init = iwl_apm_init, |
@@ -2212,6 +2219,7 @@ static struct iwl_lib_ops iwl4965_lib = { | |||
2212 | .set_ct_kill = iwl4965_set_ct_threshold, | 2219 | .set_ct_kill = iwl4965_set_ct_threshold, |
2213 | }, | 2220 | }, |
2214 | .add_bcast_station = iwl_add_bcast_station, | 2221 | .add_bcast_station = iwl_add_bcast_station, |
2222 | .check_plcp_health = iwl_good_plcp_health, | ||
2215 | }; | 2223 | }; |
2216 | 2224 | ||
2217 | static const struct iwl_ops iwl4965_ops = { | 2225 | static const struct iwl_ops iwl4965_ops = { |
@@ -2223,7 +2231,7 @@ static const struct iwl_ops iwl4965_ops = { | |||
2223 | }; | 2231 | }; |
2224 | 2232 | ||
2225 | struct iwl_cfg iwl4965_agn_cfg = { | 2233 | struct iwl_cfg iwl4965_agn_cfg = { |
2226 | .name = "4965AGN", | 2234 | .name = "Intel(R) Wireless WiFi Link 4965AGN", |
2227 | .fw_name_pre = IWL4965_FW_PRE, | 2235 | .fw_name_pre = IWL4965_FW_PRE, |
2228 | .ucode_api_max = IWL4965_UCODE_API_MAX, | 2236 | .ucode_api_max = IWL4965_UCODE_API_MAX, |
2229 | .ucode_api_min = IWL4965_UCODE_API_MIN, | 2237 | .ucode_api_min = IWL4965_UCODE_API_MIN, |
@@ -2246,6 +2254,7 @@ struct iwl_cfg iwl4965_agn_cfg = { | |||
2246 | .led_compensation = 61, | 2254 | .led_compensation = 61, |
2247 | .chain_noise_num_beacons = IWL4965_CAL_NUM_BEACONS, | 2255 | .chain_noise_num_beacons = IWL4965_CAL_NUM_BEACONS, |
2248 | .plcp_delta_threshold = IWL_MAX_PLCP_ERR_THRESHOLD_DEF, | 2256 | .plcp_delta_threshold = IWL_MAX_PLCP_ERR_THRESHOLD_DEF, |
2257 | .monitor_recover_period = IWL_MONITORING_PERIOD, | ||
2249 | }; | 2258 | }; |
2250 | 2259 | ||
2251 | /* Module firmware */ | 2260 | /* Module firmware */ |