Browse Source

iwlwifi: fix PAN parameters while scanning

When only the PAN side was active, we gave no
time to the WLAN context, which is OK unless
we are scanning, which always happens on the
WLAN context. Fix this.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Johannes Berg 14 years ago
parent
commit
27eafdda77
1 changed files with 5 additions and 0 deletions
  1. 5 0
      drivers/net/wireless/iwlwifi/iwl-agn-hcmd.c

+ 5 - 0
drivers/net/wireless/iwlwifi/iwl-agn-hcmd.c

@@ -331,6 +331,11 @@ static int iwlagn_set_pan_params(struct iwl_priv *priv)
 		slot1 = max_t(int, 1, ctx_pan->vif->bss_conf.dtim_period) *
 		slot1 = max_t(int, 1, ctx_pan->vif->bss_conf.dtim_period) *
 					ctx_pan->vif->bss_conf.beacon_int;
 					ctx_pan->vif->bss_conf.beacon_int;
 		slot1 = max_t(int, 100, slot1);
 		slot1 = max_t(int, 100, slot1);
+
+		if (test_bit(STATUS_SCAN_HW, &priv->status)) {
+			slot0 = slot1 * 3 - 20;
+			slot1 = 20;
+		}
 	}
 	}
 
 
 	cmd.slots[0].width = cpu_to_le16(slot0);
 	cmd.slots[0].width = cpu_to_le16(slot0);