Browse Source

qcacld-3.0: T2LM IE change for Beacon or probe response

AP can advertise more than two TID to Link mapping IEs in
the beacon or probe response.

Change is to update the t2lm IE as an array of value two.

Change-Id: I2c2f770b7047bb490dd557dec28caf056ede978e
CRs-Fixed: 3319268
Amruta Kulkarni 2 years ago
parent
commit
03947a38e8

+ 4 - 4
core/mac/src/cfg/cfgUtil/dot11f.frms

@@ -3892,7 +3892,7 @@ FRAME Beacon                              // C.f. Sec. 7.2.3.1
     OPTIE  eht_cap;
     OPTIE  eht_op;
     OPTIE  mlo_ie;
-    OPTIE  t2lm_ie;
+    OPTIE  t2lm_ie[0..2];
 
     OPTIE  WPA;
     OPTIE  WMMInfoAp;
@@ -3998,7 +3998,7 @@ FRAME Beacon2
     OPTIE  eht_cap;
     OPTIE  eht_op;
     OPTIE  mlo_ie;
-    OPTIE  t2lm_ie;
+    OPTIE  t2lm_ie[0..2];
 
     OPTIE  WPA;
     OPTIE  WMMInfoAp;
@@ -4078,7 +4078,7 @@ FRAME BeaconIEs
     OPTIE  eht_cap;
     OPTIE  eht_op;
     OPTIE  mlo_ie;
-    OPTIE  t2lm_ie;
+    OPTIE  t2lm_ie[0..2];
 
     OPTIE  WPA;
     OPTIE  WMMInfoAp;
@@ -4385,7 +4385,7 @@ FRAME ProbeResponse                       // 7.2.3.9
     OPTIE  eht_cap;
     OPTIE  eht_op;
     OPTIE  mlo_ie;
-    OPTIE  t2lm_ie;
+    OPTIE  t2lm_ie[0..2];
 
     OPTIE  WPA;
     OPTIE  WMMInfoAp;

+ 9 - 5
core/mac/src/include/dot11f.h

@@ -27,7 +27,7 @@
  *
  *
  * This file was automatically generated by 'framesc'
- * Thu Jul 28 13:24:31 2022 from the following file(s):
+ * Fri Oct 21 13:13:14 2022 from the following file(s):
  *
  * dot11f.frms
  *
@@ -10803,7 +10803,8 @@ typedef struct sDot11fBeacon{
 	tDot11fIEeht_cap                        eht_cap;
 	tDot11fIEeht_op                         eht_op;
 	tDot11fIEmlo_ie                         mlo_ie;
-	tDot11fIEt2lm_ie                        t2lm_ie;
+	uint16_t                                num_t2lm_ie;
+	tDot11fIEt2lm_ie                        t2lm_ie[2];
 	tDot11fIEWPA                            WPA;
 	tDot11fIEWMMInfoAp                      WMMInfoAp;
 	tDot11fIEWMMParams                      WMMParams;
@@ -10914,7 +10915,8 @@ typedef struct sDot11fBeacon2{
 	tDot11fIEeht_cap                        eht_cap;
 	tDot11fIEeht_op                         eht_op;
 	tDot11fIEmlo_ie                         mlo_ie;
-	tDot11fIEt2lm_ie                        t2lm_ie;
+	uint16_t                                num_t2lm_ie;
+	tDot11fIEt2lm_ie                        t2lm_ie[2];
 	tDot11fIEWPA                            WPA;
 	tDot11fIEWMMInfoAp                      WMMInfoAp;
 	tDot11fIEWMMParams                      WMMParams;
@@ -11005,7 +11007,8 @@ typedef struct sDot11fBeaconIEs{
 	tDot11fIEeht_cap                        eht_cap;
 	tDot11fIEeht_op                         eht_op;
 	tDot11fIEmlo_ie                         mlo_ie;
-	tDot11fIEt2lm_ie                        t2lm_ie;
+	uint16_t                                num_t2lm_ie;
+	tDot11fIEt2lm_ie                        t2lm_ie[2];
 	tDot11fIEWPA                            WPA;
 	tDot11fIEWMMInfoAp                      WMMInfoAp;
 	tDot11fIEWMMParams                      WMMParams;
@@ -11438,7 +11441,8 @@ typedef struct sDot11fProbeResponse{
 	tDot11fIEeht_cap                        eht_cap;
 	tDot11fIEeht_op                         eht_op;
 	tDot11fIEmlo_ie                         mlo_ie;
-	tDot11fIEt2lm_ie                        t2lm_ie;
+	uint16_t                                num_t2lm_ie;
+	tDot11fIEt2lm_ie                        t2lm_ie[2];
 	tDot11fIEWPA                            WPA;
 	tDot11fIEWMMInfoAp                      WMMInfoAp;
 	tDot11fIEWMMParams                      WMMParams;

+ 10 - 7
core/mac/src/sys/legacy/src/utils/src/dot11f.c

@@ -25,7 +25,7 @@
  *
  *
  * This file was automatically generated by 'framesc'
- * Thu Jul 28 13:24:31 2022 from the following file(s):
+ * Fri Oct 21 13:13:14 2022 from the following file(s):
  *
  * dot11f.frms
  *
@@ -11412,9 +11412,9 @@ static const tIEDefn IES_Beacon[] = {
 	{ offsetof(tDot11fBeacon, mlo_ie), offsetof(tDot11fIEmlo_ie, present), 0,
 	"mlo_ie", 0, 11, 257, SigIemlo_ie, {0, 0, 0, 0, 0},
 	0, DOT11F_EID_MLO_IE, 107, 0, },
-	{ offsetof(tDot11fBeacon, t2lm_ie), offsetof(tDot11fIEt2lm_ie, present), 0,
-	"t2lm_ie", 0, 5, 257, SigIet2lm_ie, {0, 0, 0, 0, 0},
-	0, DOT11F_EID_T2LM_IE, 109, 0, },
+	{ offsetof(tDot11fBeacon, t2lm_ie), offsetof(tDot11fIEt2lm_ie, present),
+	offsetof(tDot11fBeacon, num_t2lm_ie), "t2lm_ie", 2, 5, 257, SigIet2lm_ie,
+	{0, 0, 0, 0, 0}, 0, DOT11F_EID_T2LM_IE, 109, 0, },
 	{ offsetof(tDot11fBeacon, WPA), offsetof(tDot11fIEWPA, present), 0, "WPA",
 	0, 8, 50, SigIeWPA, {0, 80, 242, 1, 0}, 4, DOT11F_EID_WPA, 0, 0, },
 	{ offsetof(tDot11fBeacon, WMMInfoAp), offsetof(tDot11fIEWMMInfoAp,
@@ -11672,7 +11672,8 @@ static const tIEDefn IES_Beacon2[] = {
 	"mlo_ie", 0, 11, 257, SigIemlo_ie, {0, 0, 0, 0, 0},
 	0, DOT11F_EID_MLO_IE, 107, 0, },
 	{ offsetof(tDot11fBeacon2, t2lm_ie), offsetof(tDot11fIEt2lm_ie, present),
-	0, "t2lm_ie", 0, 5, 257, SigIet2lm_ie, {0, 0, 0, 0, 0},
+	offsetof(tDot11fBeacon2, num_t2lm_ie), "t2lm_ie",
+	2, 5, 257, SigIet2lm_ie, {0, 0, 0, 0, 0},
 	0, DOT11F_EID_T2LM_IE, 109, 0, },
 	{ offsetof(tDot11fBeacon2, WPA), offsetof(tDot11fIEWPA, present), 0, "WPA",
 	0, 8, 50, SigIeWPA, {0, 80, 242, 1, 0}, 4, DOT11F_EID_WPA, 0, 0, },
@@ -11922,7 +11923,8 @@ static const tIEDefn IES_BeaconIEs[] = {
 	0, "mlo_ie", 0, 11, 257, SigIemlo_ie, {0, 0, 0, 0, 0},
 	0, DOT11F_EID_MLO_IE, 107, 0, },
 	{ offsetof(tDot11fBeaconIEs, t2lm_ie), offsetof(tDot11fIEt2lm_ie,
-	present), 0, "t2lm_ie", 0, 5, 257, SigIet2lm_ie, {0, 0, 0, 0, 0},
+	present), offsetof(tDot11fBeaconIEs, num_t2lm_ie), "t2lm_ie",
+	2, 5, 257, SigIet2lm_ie, {0, 0, 0, 0, 0},
 	0, DOT11F_EID_T2LM_IE, 109, 0, },
 	{ offsetof(tDot11fBeaconIEs, WPA), offsetof(tDot11fIEWPA, present), 0,
 	"WPA", 0, 8, 50, SigIeWPA, {0, 80, 242, 1, 0}, 4, DOT11F_EID_WPA, 0, 0, },
@@ -12605,7 +12607,8 @@ static const tIEDefn IES_ProbeResponse[] = {
 	present), 0, "mlo_ie", 0, 11, 257, SigIemlo_ie, {0, 0, 0, 0, 0},
 	0, DOT11F_EID_MLO_IE, 107, 0, },
 	{ offsetof(tDot11fProbeResponse, t2lm_ie), offsetof(tDot11fIEt2lm_ie,
-	present), 0, "t2lm_ie", 0, 5, 257, SigIet2lm_ie, {0, 0, 0, 0, 0},
+	present), offsetof(tDot11fProbeResponse, num_t2lm_ie), "t2lm_ie",
+	2, 5, 257, SigIet2lm_ie, {0, 0, 0, 0, 0},
 	0, DOT11F_EID_T2LM_IE, 109, 0, },
 	{ offsetof(tDot11fProbeResponse, WPA), offsetof(tDot11fIEWPA, present), 0,
 	"WPA", 0, 8, 50, SigIeWPA, {0, 80, 242, 1, 0}, 4, DOT11F_EID_WPA, 0, 0, },