diff options
author | Stanislaw Gruszka <sgruszka@redhat.com> | 2011-02-28 08:33:15 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-02-28 14:06:57 -0500 |
commit | b7977ffaab5187ad75edaf04ac854615cea93828 (patch) | |
tree | fd2658e9560f959c03e580ccfb9e1f2bfa17c992 /drivers/net/wireless/iwlwifi/iwl-rx.c | |
parent | 8a032c132b7ca011813df7c441b4a6fc89e5baee (diff) |
iwlwifi: add {ack,plpc}_check module parameters
Add module ack_check, and plcp_check parameters. Ack_check is disabled
by default since is proved that check ack health can cause troubles.
Plcp_check is enabled by default.
Signed-off-by: Stanislaw Gruszka <sgruszka@redhat.com>
Acked-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-rx.c')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-rx.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-rx.c b/drivers/net/wireless/iwlwifi/iwl-rx.c index a21f6fe10fb7..fd84d53db3ac 100644 --- a/drivers/net/wireless/iwlwifi/iwl-rx.c +++ b/drivers/net/wireless/iwlwifi/iwl-rx.c | |||
@@ -230,18 +230,22 @@ void iwl_rx_spectrum_measure_notif(struct iwl_priv *priv, | |||
230 | void iwl_recover_from_statistics(struct iwl_priv *priv, | 230 | void iwl_recover_from_statistics(struct iwl_priv *priv, |
231 | struct iwl_rx_packet *pkt) | 231 | struct iwl_rx_packet *pkt) |
232 | { | 232 | { |
233 | const struct iwl_mod_params *mod_params = priv->cfg->mod_params; | ||
234 | |||
233 | if (test_bit(STATUS_EXIT_PENDING, &priv->status) || | 235 | if (test_bit(STATUS_EXIT_PENDING, &priv->status) || |
234 | !iwl_is_any_associated(priv)) | 236 | !iwl_is_any_associated(priv)) |
235 | return; | 237 | return; |
236 | 238 | ||
237 | if (priv->cfg->ops->lib->check_ack_health && | 239 | if (mod_params->ack_check && |
240 | priv->cfg->ops->lib->check_ack_health && | ||
238 | !priv->cfg->ops->lib->check_ack_health(priv, pkt)) { | 241 | !priv->cfg->ops->lib->check_ack_health(priv, pkt)) { |
239 | IWL_ERR(priv, "low ack count detected, restart firmware\n"); | 242 | IWL_ERR(priv, "low ack count detected, restart firmware\n"); |
240 | if (!iwl_force_reset(priv, IWL_FW_RESET, false)) | 243 | if (!iwl_force_reset(priv, IWL_FW_RESET, false)) |
241 | return; | 244 | return; |
242 | } | 245 | } |
243 | 246 | ||
244 | if (priv->cfg->ops->lib->check_plcp_health && | 247 | if (mod_params->plcp_check && |
248 | priv->cfg->ops->lib->check_plcp_health && | ||
245 | !priv->cfg->ops->lib->check_plcp_health(priv, pkt)) | 249 | !priv->cfg->ops->lib->check_plcp_health(priv, pkt)) |
246 | iwl_force_reset(priv, IWL_RF_RESET, false); | 250 | iwl_force_reset(priv, IWL_RF_RESET, false); |
247 | } | 251 | } |