Browse Source

qcacmn: Define values as per 11BE

Define MAX MCS to as per 11be
Define packet type as per 11be
Add new RU values
Add new BW gains

CRs-Fixed: 3068482
Change-Id: I18b2460011e2869608fe24743e4373e3e8f3fc1a
aloksing 3 years ago
parent
commit
c520e961d5
2 changed files with 197 additions and 1 deletions
  1. 4 0
      dp/inc/cdp_txrx_cmn_struct.h
  2. 193 1
      dp/inc/cdp_txrx_stats_struct.h

+ 4 - 0
dp/inc/cdp_txrx_cmn_struct.h

@@ -109,7 +109,11 @@
 #define CDP_DATA_TID_MAX 8
 #define CDP_DATA_NON_QOS_TID 16
 
+#ifdef WLAN_FEATURE_11BE
+#define CDP_NUM_SA_BW 5
+#else
 #define CDP_NUM_SA_BW 4
+#endif
 #define CDP_PERCENT_MACRO 100
 #define CDP_NUM_KB_IN_MB 1000
 /*

+ 193 - 1
dp/inc/cdp_txrx_stats_struct.h

@@ -44,7 +44,11 @@
 #endif
 
 /* 1 additional MCS is for invalid values */
+#ifdef WLAN_FEATURE_11BE
+#define MAX_MCS (16 + 1)
+#else
 #define MAX_MCS (14 + 1)
+#endif
 #define MAX_MCS_11A 8
 #define MAX_MCS_11B 7
 #define MAX_MCS_11AC 12
@@ -58,7 +62,12 @@
 
 #define MAX_USER_POS		8
 #define MAX_MU_GROUP_ID		64
+
+#ifdef WLAN_FEATURE_11BE
+#define MAX_RU_LOCATIONS	16
+#else
 #define MAX_RU_LOCATIONS	6
+#endif
 #define RU_26			1
 #define RU_52			2
 #define RU_106			4
@@ -159,12 +168,16 @@
  * 40          3dBm
  * 80          6dBm
  * 160/80P80   9dBm
+ * 320         12dBm
  */
 
 #define PKT_BW_GAIN_20MHZ 0
 #define PKT_BW_GAIN_40MHZ 3
 #define PKT_BW_GAIN_80MHZ 6
 #define PKT_BW_GAIN_160MHZ 9
+#ifdef WLAN_FEATURE_11BE
+#define PKT_BW_GAIN_320MHZ 12
+#endif
 
 /*
  * cdp_tx_transmit_type: Transmit type index
@@ -185,11 +198,43 @@ enum cdp_tx_transmit_type {
  *
  * RU_26_INDEX : 26-tone Resource Unit index
  * RU_52_INDEX : 52-tone Resource Unit index
+ * RU_52_26_INDEX : 52_26-tone Resource Unit index
  * RU_106_INDEX: 106-tone Resource Unit index
+ * RU_106_26_INDEX: 106_26-tone Resource Unit index
  * RU_242_INDEX: 242-tone Resource Unit index
  * RU_484_INDEX: 484-tone Resource Unit index
+ * RU_484_242_INDEX: 484_242-tone Resource Unit index
  * RU_996_INDEX: 996-tone Resource Unit index
+ * RU_996_484_INDEX: 996_484-tone Resource Unit index
+ * RU_996_484_242_INDEX: 996_484_242-tone Resource Unit index
+ * RU_2X996_INDEX: 2X996-tone Resource Unit index
+ * RU_2X996_484_INDEX: 2X996_484-tone Resource Unit index
+ * RU_3X996_INDEX: 3X996-tone Resource Unit index
+ * RU_3X996_484_INDEX: 3X996_484-tone Resource Unit index
+ * RU_4X996_INDEX: 4X996-tone Resource Unit index
  */
+
+#ifdef WLAN_FEATURE_11BE
+enum cdp_ru_index {
+	RU_26_INDEX = 0,
+	RU_52_INDEX,
+	RU_52_26_INDEX,
+	RU_106_INDEX,
+	RU_106_26_INDEX,
+	RU_242_INDEX,
+	RU_484_INDEX,
+	RU_484_242_INDEX,
+	RU_996_INDEX,
+	RU_996_484_INDEX,
+	RU_996_484_242_INDEX,
+	RU_2X996_INDEX,
+	RU_2X996_484_INDEX,
+	RU_3X996_INDEX,
+	RU_3X996_484_INDEX,
+	RU_4X996_INDEX,
+	RU_INDEX_MAX,
+};
+#else
 enum cdp_ru_index {
 	RU_26_INDEX = 0,
 	RU_52_INDEX,
@@ -199,11 +244,32 @@ enum cdp_ru_index {
 	RU_996_INDEX,
 	RU_INDEX_MAX,
 };
+#endif
 
 struct cdp_ru_debug {
 	char *ru_type;
 };
 
+#ifdef WLAN_FEATURE_11BE
+static const struct cdp_ru_debug cdp_ru_string[RU_INDEX_MAX] = {
+	{ "RU_26" },
+	{ "RU_52" },
+	{ "RU_52_26" },
+	{ "RU_106" },
+	{ "RU_106_26" },
+	{ "RU_242" },
+	{ "RU_484" },
+	{ "RU_484_242" },
+	{ "RU_996" },
+	{ "RU_996_484" },
+	{ "RU_996_484_242" },
+	{ "RU_2x996" },
+	{ "RU_2x996_484" },
+	{ "RU_3x996" },
+	{ "RU_3x996_484" },
+	{ "RU_4x996" },
+};
+#else
 static const struct cdp_ru_debug cdp_ru_string[RU_INDEX_MAX] = {
 	{ "RU_26" },
 	{ "RU_52" },
@@ -212,6 +278,7 @@ static const struct cdp_ru_debug cdp_ru_string[RU_INDEX_MAX] = {
 	{ "RU_484" },
 	{ "RU_996" }
 };
+#endif
 
 #ifdef FEATURE_TSO_STATS
 /* Number of TSO Packet Statistics captured */
@@ -229,7 +296,10 @@ enum cdp_packet_type {
 	DOT11_N = 2,
 	DOT11_AC = 3,
 	DOT11_AX = 4,
-	DOT11_MAX = 5,
+#ifdef WLAN_FEATURE_11BE
+	DOT11_BE = 5,
+#endif
+	DOT11_MAX,
 };
 
 #define MCS_VALID 1
@@ -247,6 +317,7 @@ struct cdp_rate_debug {
 	uint8_t valid;
 };
 
+#ifdef WLAN_FEATURE_11BE
 static const struct cdp_rate_debug cdp_rate_string[DOT11_MAX][MAX_MCS] = {
 	{
 		{"OFDM 48 Mbps", MCS_VALID},
@@ -262,6 +333,10 @@ static const struct cdp_rate_debug cdp_rate_string[DOT11_MAX][MAX_MCS] = {
 		{"INVALID ", MCS_INVALID},
 		{"INVALID ", MCS_INVALID},
 		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
 	},
 	{
 		{"CCK 11 Mbps Long  ", MCS_VALID},
@@ -277,6 +352,10 @@ static const struct cdp_rate_debug cdp_rate_string[DOT11_MAX][MAX_MCS] = {
 		{"INVALID ", MCS_INVALID},
 		{"INVALID ", MCS_INVALID},
 		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
 	},
 	{
 		{"HT MCS 0 (BPSK 1/2)  ", MCS_VALID},
@@ -292,6 +371,10 @@ static const struct cdp_rate_debug cdp_rate_string[DOT11_MAX][MAX_MCS] = {
 		{"INVALID ", MCS_INVALID},
 		{"INVALID ", MCS_INVALID},
 		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
 	},
 	{
 		{"VHT MCS 0 (BPSK 1/2)     ", MCS_VALID},
@@ -307,6 +390,9 @@ static const struct cdp_rate_debug cdp_rate_string[DOT11_MAX][MAX_MCS] = {
 		{"VHT MCS 10 (1024-QAM 3/4)", MCS_VALID},
 		{"VHT MCS 11 (1024-QAM 5/6)", MCS_VALID},
 		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
 	},
 	{
 		{"HE MCS 0 (BPSK 1/2)     ", MCS_VALID},
@@ -324,8 +410,110 @@ static const struct cdp_rate_debug cdp_rate_string[DOT11_MAX][MAX_MCS] = {
 		{"HE MCS 12 (4096-QAM 3/4)", MCS_VALID},
 		{"HE MCS 13 (4096-QAM 5/6)", MCS_VALID},
 		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+	},
+	{
+		{"EHT MCS 0 (BPSK 1/2)     ", MCS_VALID},
+		{"EHT MCS 1 (QPSK 1/2)     ", MCS_VALID},
+		{"EHT MCS 2 (QPSK 3/4)     ", MCS_VALID},
+		{"EHT MCS 3 (16-QAM 1/2)   ", MCS_VALID},
+		{"EHT MCS 4 (16-QAM 3/4)   ", MCS_VALID},
+		{"EHT MCS 5 (64-QAM 2/3)   ", MCS_VALID},
+		{"EHT MCS 6 (64-QAM 3/4)   ", MCS_VALID},
+		{"EHT MCS 7 (64-QAM 5/6)   ", MCS_VALID},
+		{"EHT MCS 8 (256-QAM 3/4)  ", MCS_VALID},
+		{"EHT MCS 9 (256-QAM 5/6)  ", MCS_VALID},
+		{"EHT MCS 10 (1024-QAM 3/4)", MCS_VALID},
+		{"EHT MCS 11 (1024-QAM 5/6)", MCS_VALID},
+		{"EHT MCS 12 (4096-QAM 3/4)", MCS_VALID},
+		{"EHT MCS 13 (4096-QAM 5/6)", MCS_VALID},
+		{"EHT MCS 14 (BPSK-DCM 1/2)", MCS_VALID},
+		{"EHT MCS 15 (BPSK-DCM 1/2)", MCS_VALID},
+		{"INVALID ", MCS_INVALID},
 	}
 };
+#else
+static const struct cdp_rate_debug cdp_rate_string[DOT11_MAX][MAX_MCS] = {
+	{
+		{"OFDM 48 Mbps", MCS_VALID},
+		{"OFDM 24 Mbps", MCS_VALID},
+		{"OFDM 12 Mbps", MCS_VALID},
+		{"OFDM 6 Mbps ", MCS_VALID},
+		{"OFDM 54 Mbps", MCS_VALID},
+		{"OFDM 36 Mbps", MCS_VALID},
+		{"OFDM 18 Mbps", MCS_VALID},
+		{"OFDM 9 Mbps ", MCS_VALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+	},
+	{
+		{"CCK 11 Mbps Long  ", MCS_VALID},
+		{"CCK 5.5 Mbps Long ", MCS_VALID},
+		{"CCK 2 Mbps Long   ", MCS_VALID},
+		{"CCK 1 Mbps Long   ", MCS_VALID},
+		{"CCK 11 Mbps Short ", MCS_VALID},
+		{"CCK 5.5 Mbps Short", MCS_VALID},
+		{"CCK 2 Mbps Short  ", MCS_VALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+	},
+	{
+		{"HT MCS 0 (BPSK 1/2)  ", MCS_VALID},
+		{"HT MCS 1 (QPSK 1/2)  ", MCS_VALID},
+		{"HT MCS 2 (QPSK 3/4)  ", MCS_VALID},
+		{"HT MCS 3 (16-QAM 1/2)", MCS_VALID},
+		{"HT MCS 4 (16-QAM 3/4)", MCS_VALID},
+		{"HT MCS 5 (64-QAM 2/3)", MCS_VALID},
+		{"HT MCS 6 (64-QAM 3/4)", MCS_VALID},
+		{"HT MCS 7 (64-QAM 5/6)", MCS_VALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+		{"INVALID ", MCS_INVALID},
+	},
+	{
+		{"VHT MCS 0 (BPSK 1/2)     ", MCS_VALID},
+		{"VHT MCS 1 (QPSK 1/2)     ", MCS_VALID},
+		{"VHT MCS 2 (QPSK 3/4)     ", MCS_VALID},
+		{"VHT MCS 3 (16-QAM 1/2)   ", MCS_VALID},
+		{"VHT MCS 4 (16-QAM 3/4)   ", MCS_VALID},
+		{"VHT MCS 5 (64-QAM 2/3)   ", MCS_VALID},
+		{"VHT MCS 6 (64-QAM 3/4)   ", MCS_VALID},
+		{"VHT MCS 7 (64-QAM 5/6)   ", MCS_VALID},
+		{"VHT MCS 8 (256-QAM 3/4)  ", MCS_VALID},
+		{"VHT MCS 9 (256-QAM 5/6)  ", MCS_VALID},
+		{"VHT MCS 10 (1024-QAM 3/4)", MCS_VALID},
+		{"VHT MCS 11 (1024-QAM 5/6)", MCS_VALID},
+		{"INVALID ", MCS_INVALID},
+	},
+	{
+		{"HE MCS 0 (BPSK 1/2)     ", MCS_VALID},
+		{"HE MCS 1 (QPSK 1/2)     ", MCS_VALID},
+		{"HE MCS 2 (QPSK 3/4)     ", MCS_VALID},
+		{"HE MCS 3 (16-QAM 1/2)   ", MCS_VALID},
+		{"HE MCS 4 (16-QAM 3/4)   ", MCS_VALID},
+		{"HE MCS 5 (64-QAM 2/3)   ", MCS_VALID},
+		{"HE MCS 6 (64-QAM 3/4)   ", MCS_VALID},
+		{"HE MCS 7 (64-QAM 5/6)   ", MCS_VALID},
+		{"HE MCS 8 (256-QAM 3/4)  ", MCS_VALID},
+		{"HE MCS 9 (256-QAM 5/6)  ", MCS_VALID},
+		{"HE MCS 10 (1024-QAM 3/4)", MCS_VALID},
+		{"HE MCS 11 (1024-QAM 5/6)", MCS_VALID},
+		{"HE MCS 12 (4096-QAM 3/4)", MCS_VALID},
+		{"HE MCS 13 (4096-QAM 5/6)", MCS_VALID},
+		{"INVALID ", MCS_INVALID},
+	}
+};
+#endif
 
 /*
  * cdp_mu_packet_type: MU Rx type index
@@ -1898,7 +2086,11 @@ struct cdp_htt_rx_pdev_stats {
 #define RX_PROTOCOL_TAG_ALL 0xff
 #endif /* WLAN_SUPPORT_RX_PROTOCOL_TYPE_TAG */
 
+#ifdef WLAN_FEATURE_11BE
+#define OFDMA_NUM_RU_SIZE 16
+#else
 #define OFDMA_NUM_RU_SIZE 7
+#endif
 
 #define OFDMA_NUM_USERS	37