ath6kl: Set background scan period.
authorBala Shanmugam <bkamatch@qca.qualcomm.com>
Tue, 27 Mar 2012 06:47:32 +0000 (12:17 +0530)
committerKalle Valo <kvalo@qca.qualcomm.com>
Wed, 28 Mar 2012 13:52:41 +0000 (16:52 +0300)
After connect command, send scan params WMI command to
set background scan period. If period value is zero
send 0xffff as bg scan period to disable bg scan.
Set default bg scan period to be 60 seconds if
not specified.

This patch depends on below patch
cfg80211: Add background scan period attribute.

kvalo: fix open parenthesis alignment

Signed-off-by: Bala Shanmugam <bkamatch@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
drivers/net/wireless/ath/ath6kl/cfg80211.c

index dd07ae56078543f616a3c5f002a4579b5783d6e1..0c49708cf37e0d43b30a15a5e3783c3fe76fd36a 100644 (file)
@@ -49,6 +49,8 @@
        .max_power      = 30,                       \
 }
 
+#define DEFAULT_BG_SCAN_PERIOD 60
+
 static struct ieee80211_rate ath6kl_rates[] = {
        RATETAB_ENT(10, 0x1, 0),
        RATETAB_ENT(20, 0x2, 0),
@@ -607,6 +609,17 @@ static int ath6kl_cfg80211_connect(struct wiphy *wiphy, struct net_device *dev,
                                        vif->req_bssid, vif->ch_hint,
                                        ar->connect_ctrl_flags, nw_subtype);
 
+       /* disable background scan if period is 0 */
+       if (sme->bg_scan_period == 0)
+               sme->bg_scan_period = 0xffff;
+
+       /* configure default value if not specified */
+       if (sme->bg_scan_period == -1)
+               sme->bg_scan_period = DEFAULT_BG_SCAN_PERIOD;
+
+       ath6kl_wmi_scanparams_cmd(ar->wmi, vif->fw_vif_idx, 0, 0,
+                                 sme->bg_scan_period, 0, 0, 0, 3, 0, 0, 0);
+
        up(&ar->sem);
 
        if (status == -EINVAL) {