summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/iwlwifi/iwl-scan.c
diff options
context:
space:
mode:
authorDavid Spinadel <david.spinadel@intel.com>2012-05-11 10:53:17 +0200
committerJohn W. Linville <linville@tuxdriver.com>2012-05-16 13:08:19 -0400
commit65781af6b5e0dd07bf33dfb12be876129e74efa5 (patch)
tree002b6fa1bdb6432e6bbf91e97c85ccc13eedda55 /drivers/net/wireless/iwlwifi/iwl-scan.c
parent4f9bfbb1881017911296724aec0999b041a3d7d6 (diff)
downloadlinux-3.10-65781af6b5e0dd07bf33dfb12be876129e74efa5.tar.gz
linux-3.10-65781af6b5e0dd07bf33dfb12be876129e74efa5.tar.bz2
linux-3.10-65781af6b5e0dd07bf33dfb12be876129e74efa5.zip
iwlwifi: invert the order of ssid list in scan cmd
The firmware inverts the order of ssid list of scan command, we should invert the order before sending the command, in order to get probe requests sent in wanted order. Signed-off-by: David Spinadel <david.spinadel@intel.com> Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-scan.c')
-rw-r--r--drivers/net/wireless/iwlwifi/iwl-scan.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-scan.c b/drivers/net/wireless/iwlwifi/iwl-scan.c
index 0505e4edf24..031d8e21f82 100644
--- a/drivers/net/wireless/iwlwifi/iwl-scan.c
+++ b/drivers/net/wireless/iwlwifi/iwl-scan.c
@@ -767,7 +767,11 @@ static int iwlagn_request_scan(struct iwl_priv *priv, struct ieee80211_vif *vif)
ssid_len = priv->scan_request->ssids[0].ssid_len;
ssid = priv->scan_request->ssids[0].ssid;
- for (i = 1; i < priv->scan_request->n_ssids; i++) {
+ /*
+ * Invert the order of ssids, the firmware will invert
+ * it back.
+ */
+ for (i = priv->scan_request->n_ssids - 1; i >= 1; i--) {
scan->direct_scan[p].id = WLAN_EID_SSID;
scan->direct_scan[p].len =
priv->scan_request->ssids[i].ssid_len;