2011-12-20 10:04:11

by Eyal Shapira

[permalink] [raw]
Subject: [PATCH] wl12xx: fix sched scan of DFS channels

DFS channels weren't scanned properly because
min/max_duration weren't set for these channels
even though they're required by the FW.
The change sets passive_duration and min/max_duration
for all channels as the FW uses the correct parameters
according to the channel type.

Signed-off-by: Eyal Shapira <[email protected]>
---
drivers/net/wireless/wl12xx/scan.c | 15 ++++++++-------
1 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/drivers/net/wireless/wl12xx/scan.c b/drivers/net/wireless/wl12xx/scan.c
index 8599dab..260986b 100644
--- a/drivers/net/wireless/wl12xx/scan.c
+++ b/drivers/net/wireless/wl12xx/scan.c
@@ -437,18 +437,19 @@ wl1271_scan_get_sched_scan_channels(struct wl1271 *wl,

if (flags & IEEE80211_CHAN_RADAR) {
channels[j].flags |= SCAN_CHANNEL_FLAGS_DFS;
+
channels[j].passive_duration =
cpu_to_le16(c->dwell_time_dfs);
- }
- else if (flags & IEEE80211_CHAN_PASSIVE_SCAN) {
+ } else {
channels[j].passive_duration =
cpu_to_le16(c->dwell_time_passive);
- } else {
- channels[j].min_duration =
- cpu_to_le16(c->min_dwell_time_active);
- channels[j].max_duration =
- cpu_to_le16(c->max_dwell_time_active);
}
+
+ channels[j].min_duration =
+ cpu_to_le16(c->min_dwell_time_active);
+ channels[j].max_duration =
+ cpu_to_le16(c->max_dwell_time_active);
+
channels[j].tx_power_att = req->channels[i]->max_power;
channels[j].channel = req->channels[i]->hw_value;

--
1.7.4.1



2011-12-20 20:51:14

by Luciano Coelho

[permalink] [raw]
Subject: Re: [PATCH] wl12xx: fix sched scan of DFS channels

On Tue, 2011-12-20 at 12:04 +0200, Eyal Shapira wrote:
> DFS channels weren't scanned properly because
> min/max_duration weren't set for these channels
> even though they're required by the FW.
> The change sets passive_duration and min/max_duration
> for all channels as the FW uses the correct parameters
> according to the channel type.
>
> Signed-off-by: Eyal Shapira <[email protected]>
> ---

Applied, thanks Eyal!

--
Cheers,
Luca.