]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
P2P: Consider 5 GHz channels also for auto GO
authorKrishna Vamsi <vamsin@qti.qualcomm.com>
Tue, 24 Feb 2015 06:43:33 +0000 (12:13 +0530)
committerJouni Malinen <j@w1.fi>
Mon, 2 Mar 2015 15:01:15 +0000 (17:01 +0200)
When there is no channel preference mentioned by user, auto GO
can be started on any of the 5 GHz channels supported for P2P.
Consider operating classes 115 and 124 which do not require DFS.

Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
wpa_supplicant/p2p_supplicant.c

index 9c7c867ae2a21539e1222a34678d4e5afca78318..d18f85599dc72f6a11f6838a9a3197c801ae7930 100644 (file)
@@ -6339,6 +6339,24 @@ static int wpas_p2p_select_freq_no_pref(struct wpa_supplicant *wpa_s,
                        goto out;
        }
 
+       /* try all channels in operating class 115 */
+       for (i = 0; i < 4; i++) {
+               params->freq = 5180 + i * 20;
+               if (!wpas_p2p_disallowed_freq(wpa_s->global, params->freq) &&
+                   freq_included(channels, params->freq) &&
+                   p2p_supported_freq(wpa_s->global->p2p, params->freq))
+                       goto out;
+       }
+
+       /* try all channels in operating class 124 */
+       for (i = 0; i < 4; i++) {
+               params->freq = 5745 + i * 20;
+               if (!wpas_p2p_disallowed_freq(wpa_s->global, params->freq) &&
+                   freq_included(channels, params->freq) &&
+                   p2p_supported_freq(wpa_s->global->p2p, params->freq))
+                       goto out;
+       }
+
        /* try social channel class 180 channel 2 */
        params->freq = 58320 + 1 * 2160;
        if (!wpas_p2p_disallowed_freq(wpa_s->global, params->freq) &&
@@ -6355,7 +6373,7 @@ static int wpas_p2p_select_freq_no_pref(struct wpa_supplicant *wpa_s,
                        goto out;
        }
 
-       wpa_printf(MSG_DEBUG, "P2P: No 2.4 and 60 GHz channel allowed");
+       wpa_printf(MSG_DEBUG, "P2P: No 2.4, 5, or 60 GHz channel allowed");
        return -1;
 out:
        wpa_printf(MSG_DEBUG, "P2P: Set GO freq %d MHz (no preference known)",