aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/iwlwifi/iwl-rx.c
diff options
context:
space:
mode:
authorStanislaw Gruszka <sgruszka@redhat.com>2011-02-28 08:33:15 -0500
committerJohn W. Linville <linville@tuxdriver.com>2011-02-28 14:06:57 -0500
commitb7977ffaab5187ad75edaf04ac854615cea93828 (patch)
treefd2658e9560f959c03e580ccfb9e1f2bfa17c992 /drivers/net/wireless/iwlwifi/iwl-rx.c
parent8a032c132b7ca011813df7c441b4a6fc89e5baee (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.c8
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,
230void iwl_recover_from_statistics(struct iwl_priv *priv, 230void 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}