[PATCH 1/1] STA: Reduce the time taken for initial association when FW ROAM is enabled

Jithu Jance jithu at broadcom.com
Mon Aug 12 01:58:05 EDT 2013


If Driver advertises the FW_ROAM, the supplicant doesn't pass down
the bssid and freq in the connect req(even though supplicant has these
info from its scan). This forces the firmware to do a full scan again
finding out the AP to JOIN. Instead FW can already make use of the scan
done by the supplicant for the first association. In case if some fw
doesn't require it, it can just ignore the bssid.

IMHO, passing down the bssid and freq adds more flexibility and
will help to improve the connection timings. Please see whether
the patch is fine.

Signed-hostap: Jithu Jance <jithu at broadcom.com>
---
 wpa_supplicant/wpa_supplicant.c |   16 +++++++---------
 1 file changed, 7 insertions(+), 9 deletions(-)

diff --git a/wpa_supplicant/wpa_supplicant.c b/wpa_supplicant/wpa_supplicant.c
index a18922a..5b83c86 100644
--- a/wpa_supplicant/wpa_supplicant.c
+++ b/wpa_supplicant/wpa_supplicant.c
@@ -1536,15 +1536,13 @@ void wpa_supplicant_associate(struct wpa_supplicant *wpa_s,
 	if (bss) {
 		params.ssid = bss->ssid;
 		params.ssid_len = bss->ssid_len;
-		if (!wpas_driver_bss_selection(wpa_s) || ssid->bssid_set) {
-			wpa_printf(MSG_DEBUG, "Limit connection to BSSID "
-				   MACSTR " freq=%u MHz based on scan results "
-				   "(bssid_set=%d)",
-				   MAC2STR(bss->bssid), bss->freq,
-				   ssid->bssid_set);
-			params.bssid = bss->bssid;
-			params.freq = bss->freq;
-		}
+		wpa_printf(MSG_DEBUG, "Limit connection to BSSID "
+			   MACSTR " freq=%u MHz based on scan results "
+			   "(bssid_set=%d)",
+			   MAC2STR(bss->bssid), bss->freq,
+			   ssid->bssid_set);
+		params.bssid = bss->bssid;
+		params.freq = bss->freq;
 	} else {
 		params.ssid = ssid->ssid;
 		params.ssid_len = ssid->ssid_len;
--
1.7.9.5




More information about the HostAP mailing list