]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
mwifiex: disable channel filtering feature in firmware
authorAmitkumar Karwar <akarwar@marvell.com>
Mon, 25 Apr 2016 06:49:51 +0000 (23:49 -0700)
committerKalle Valo <kvalo@codeaurora.org>
Wed, 27 Apr 2016 13:52:55 +0000 (16:52 +0300)
As 2.4Ghz channels are overlapping, sometimes AP responds to
probe request even if it's operating on neighbouring channel.
Currently firmware drops those scan entries, as current channel
doesn't match with APs channel.

This patch enables MWIFIEX_DISABLE_CHAN_FILT flag in scan
command to disable the feature so that better scan results
will be received in 2.4Ghz band.

Signed-off-by: Amitkumar Karwar <akarwar@marvell.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/marvell/mwifiex/scan.c

index 36cc9cca95fc980f51dc621f2ae6c5318c222fbd..bc5e52cebce13ef4c8ec2383f6a24f964197ff68 100644 (file)
@@ -498,11 +498,13 @@ mwifiex_scan_create_channel_list(struct mwifiex_private *priv,
                                        &= ~MWIFIEX_PASSIVE_SCAN;
                        scan_chan_list[chan_idx].chan_number =
                                                        (u32) ch->hw_value;
+
+                       scan_chan_list[chan_idx].chan_scan_mode_bitmap
+                                       |= MWIFIEX_DISABLE_CHAN_FILT;
+
                        if (filtered_scan) {
                                scan_chan_list[chan_idx].max_scan_time =
                                cpu_to_le16(adapter->specific_scan_time);
-                               scan_chan_list[chan_idx].chan_scan_mode_bitmap
-                                       |= MWIFIEX_DISABLE_CHAN_FILT;
                        }
                        chan_idx++;
                }
@@ -1060,9 +1062,8 @@ mwifiex_config_scan(struct mwifiex_private *priv,
                                scan_chan_list[chan_idx].chan_scan_mode_bitmap
                                        &= ~MWIFIEX_PASSIVE_SCAN;
 
-                       if (*filtered_scan)
-                               scan_chan_list[chan_idx].chan_scan_mode_bitmap
-                                       |= MWIFIEX_DISABLE_CHAN_FILT;
+                       scan_chan_list[chan_idx].chan_scan_mode_bitmap
+                               |= MWIFIEX_DISABLE_CHAN_FILT;
 
                        if (user_scan_in->chan_list[chan_idx].scan_time) {
                                scan_dur = (u16) user_scan_in->