P2P: Define operating classes for VHT 80+80 and 160
authorAhmad Kholaif <akholaif@qca.qualcomm.com>
Wed, 28 Oct 2015 21:14:10 +0000 (14:14 -0700)
committerJouni Malinen <j@w1.fi>
Wed, 25 Nov 2015 17:01:10 +0000 (19:01 +0200)
This adds definitions for the global operating classes 129 and 130 for
VHT 80+80 MHz and 160 MHz use cases.

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

index 1839357..fe7f53b 100644 (file)
@@ -31,7 +31,7 @@
 /**
  * P2P_MAX_REG_CLASSES - Maximum number of regulatory classes
  */
-#define P2P_MAX_REG_CLASSES 10
+#define P2P_MAX_REG_CLASSES 15
 
 /**
  * P2P_MAX_REG_CLASS_CHANNELS - Maximum number of channels per regulatory class
index 096ccd6..049ce6e 100644 (file)
@@ -384,7 +384,7 @@ void p2p_reselect_channel(struct p2p_data *p2p,
        unsigned int i;
        const int op_classes_5ghz[] = { 124, 125, 115, 0 };
        const int op_classes_ht40[] = { 126, 127, 116, 117, 0 };
-       const int op_classes_vht[] = { 128, 0 };
+       const int op_classes_vht[] = { 128, 129, 130, 0 };
 
        if (p2p->own_freq_preference > 0 &&
            p2p_freq_to_channel(p2p->own_freq_preference,
index ea4bd0e..bf0336f 100644 (file)
@@ -3323,7 +3323,7 @@ struct p2p_oper_class_map {
        u8 min_chan;
        u8 max_chan;
        u8 inc;
-       enum { BW20, BW40PLUS, BW40MINUS, BW80, BW2160 } bw;
+       enum { BW20, BW40PLUS, BW40MINUS, BW80, BW2160, BW160, BW80P80 } bw;
 };
 
 static const struct p2p_oper_class_map op_class[] = {
@@ -3349,6 +3349,8 @@ static const struct p2p_oper_class_map op_class[] = {
         * removing invalid channels.
         */
        { HOSTAPD_MODE_IEEE80211A, 128, 36, 161, 4, BW80 },
+       { HOSTAPD_MODE_IEEE80211A, 130, 36, 161, 4, BW80P80 },
+       { HOSTAPD_MODE_IEEE80211A, 129, 50, 114, 16, BW160 },
        { HOSTAPD_MODE_IEEE80211AD, 180, 1, 4, 1, BW2160 },
        { -1, 0, 0, 0, 0, BW20 }
 };