Эх сурвалжийг харах

qcacmn: Rectify errors in the 6G host regulatory database

Make the following code changes in the 6G host regulatory database:

1) Fix the multiple compilation errors that are seen when the flag
COMPILE_REGDB_6G is enabled.

2) Change the order of 6G AP type in the structure
sixghz_super_to_subdomains g_6g_reg_dmn_9_tuples and
enum sixghz_super_to_subdomains, from SP-LPI-VLP to LPI-SP-VLP, to keep
it in line with  enum reg_6g_ap_type.

3)Rename the members under reg_super_domain_6g to contain the hexcode
in the member names.

Change-Id: Ia28c214b217ae3fb21420d058872cff17e11a5b6
CRs-Fixed: 2857865
Hariharan Basuthkar 4 жил өмнө
parent
commit
319773094b

+ 58 - 49
umac/regulatory/core/src/reg_db.c

@@ -356,7 +356,7 @@ const struct country_code_to_reg_domain g_all_countries[] = {
 	CE(CAYMAN_ISLANDS, FCC3_WORLD, 0, KY, 40, 160, 0, 0),
 	CE(CENTRAL_AFRICA_REPUBLIC, FCC3_WORLD, 0, CF, 40, 40, 0, 0),
 	CE(CHAD, ETSI1_WORLD, 0, TD, 40, 160, 0, 0),
-	CE(CHILE, FCC14_WORLD, FCC1_6G_CL, CL, 40, 160, 160, 0),
+	CE(CHILE, FCC14_WORLD, FCC1_6G_05, CL, 40, 160, 160, 0),
 	CE(CHINA, APL14_WORLD, 0, CN, 40, 160, 0, 0),
 	CE(CHRISTMAS_ISLAND, FCC3_WORLD, 0, CX, 40, 160, 0, 0),
 	CE(COLOMBIA, FCC3_WORLD, 0, CO, 40, 160, 0, 0),
@@ -415,7 +415,7 @@ const struct country_code_to_reg_domain g_all_countries[] = {
 	CE(JORDAN, APL4_WORLD, 0, JO, 40, 160, 0, 0),
 	CE(KAZAKHSTAN, MKK5_MKKC, 0, KZ, 40, 160, 0, 0),
 	CE(KENYA, ETSI13_WORLD, 0, KE, 40, 160, 0, 0),
-	CE(KOREA_ROC, APL9_MKKC, APL1_6G, KR, 40, 160, 160, 0),
+	CE(KOREA_ROC, APL9_MKKC, APL1_6G_04, KR, 40, 160, 160, 0),
 	CE(KUWAIT, ETSI1_WORLD, 0, KW, 40, 160, 0, 0),
 	CE(LATVIA, ETSI1_WORLD, 0, LV, 40, 160, 0, 0),
 	CE(LEBANON, FCC3_WORLD, 0, LB, 40, 160, 0, 0),
@@ -508,8 +508,8 @@ const struct country_code_to_reg_domain g_all_countries[] = {
 	CE(UGANDA, FCC3_WORLD, 0, UG, 40, 160, 0, 0),
 	CE(UKRAINE, ETSI9_WORLD, 0, UA, 40, 160, 0, REGULATORY_PHYMODE_NO11AX),
 	CE(UAE, ETSI13_WORLD, 0, AE, 40, 160, 0, 0),
-	CE(UNITED_KINGDOM, ETSI1_WORLD, ETSI2_6G, GB, 40, 160, 160, 0),
-	CE(UNITED_STATES, FCC8_FCCA, FCC1_6G, US, 40, 160, 160, 0),
+	CE(UNITED_KINGDOM, ETSI1_WORLD, ETSI2_6G_03, GB, 40, 160, 160, 0),
+	CE(UNITED_STATES, FCC8_FCCA, FCC1_6G_01, US, 40, 160, 160, 0),
 	CE(UNITED_STATES_MINOR_OUTLYING_ISLANDS, FCC8_FCCA, 0, UM, 40, 160, 0,
 	   0),
 	CE(URUGUAY, FCC2_WORLD, 0, UY, 40, 160, 0, 0),
@@ -561,7 +561,7 @@ const struct country_code_to_reg_domain g_all_countries[] = {
 	CE(CAYMAN_ISLANDS, FCC3_WORLD, 0, KY, 40, 160, 0, 0),
 	CE(CENTRAL_AFRICA_REPUBLIC, FCC3_WORLD, 0, CF, 40, 40, 0, 0),
 	CE(CHAD, ETSI1_WORLD, 0, TD, 40, 160, 0, 0),
-	CE(CHILE, FCC14_WORLD, FCC1_6G_CL, CL, 40, 160, 160, 0),
+	CE(CHILE, FCC14_WORLD, FCC1_6G_05, CL, 40, 160, 160, 0),
 	CE(CHINA, APL14_WORLD, 0, CN, 40, 160, 0, 0),
 	CE(CHRISTMAS_ISLAND, FCC3_WORLD, 0, CX, 40, 160, 0, 0),
 	CE(COLOMBIA, FCC3_WORLD, 0, CO, 40, 160, 0, 0),
@@ -621,7 +621,7 @@ const struct country_code_to_reg_domain g_all_countries[] = {
 	CE(JORDAN, APL4_WORLD, 0, JO, 40, 160, 0, 0),
 	CE(KAZAKHSTAN, MKK5_MKKC, 0, KZ, 40, 160, 0, 0),
 	CE(KENYA, ETSI13_WORLD, 0, KE, 40, 160, 0, 0),
-	CE(KOREA_ROC, APL9_MKKC, APL1_6G, KR, 40, 160, 160, 0),
+	CE(KOREA_ROC, APL9_MKKC, APL1_6G_04, KR, 40, 160, 160, 0),
 	CE(KUWAIT, ETSI13_WORLD, 0, KW, 40, 160, 0, 0),
 	CE(LATVIA, ETSI10_WORLD, 0, LV, 40, 160, 0, 0),
 	CE(LEBANON, FCC3_WORLD, 0, LB, 40, 160, 0, 0),
@@ -714,8 +714,8 @@ const struct country_code_to_reg_domain g_all_countries[] = {
 	CE(UGANDA, FCC3_WORLD, 0, UG, 40, 160, 0, 0),
 	CE(UKRAINE, ETSI9_WORLD, 0, UA, 40, 160, 0, REGULATORY_PHYMODE_NO11AX),
 	CE(UAE, FCC3_WORLD, 0, AE, 40, 160, 0, 0),
-	CE(UNITED_KINGDOM, ETSI1_WORLD, ETSI2_6G, GB, 40, 160, 160, 0),
-	CE(UNITED_STATES, FCC8_FCCA, FCC1_6G, US, 40, 160, 160, 0),
+	CE(UNITED_KINGDOM, ETSI1_WORLD, ETSI2_6G_03, GB, 40, 160, 160, 0),
+	CE(UNITED_STATES, FCC8_FCCA, FCC1_6G_01, US, 40, 160, 160, 0),
 	CE(UNITED_STATES_MINOR_OUTLYING_ISLANDS, FCC10_FCCA, 0, UM, 40, 160, 0,
 	   0),
 	CE(URUGUAY, FCC2_WORLD, 0, UY, 40, 160, 0, 0),
@@ -766,7 +766,7 @@ const struct country_code_to_reg_domain g_all_countries[] = {
 	CE(CAYMAN_ISLANDS, FCC3_WORLD, 0, KY, 40, 160, 0, 0),
 	CE(CENTRAL_AFRICA_REPUBLIC, FCC3_WORLD, 0, CF, 40, 40, 0, 0),
 	CE(CHAD, ETSI1_WORLD, 0, TD, 40, 160, 0, 0),
-	CE(CHILE, FCC14_WORLD, FCC1_6G_CL, CL, 40, 160, 160, 0),
+	CE(CHILE, FCC14_WORLD, FCC1_6G_05, CL, 40, 160, 160, 0),
 	CE(CHINA, APL14_WORLD, 0, CN, 40, 160, 0, 0),
 	CE(CHRISTMAS_ISLAND, FCC3_WORLD, 0, CX, 40, 160, 0, 0),
 	CE(COLOMBIA, FCC3_WORLD, 0, CO, 40, 160, 0, 0),
@@ -826,7 +826,7 @@ const struct country_code_to_reg_domain g_all_countries[] = {
 	CE(JORDAN, APL4_WORLD, 0, JO, 40, 160, 0, 0),
 	CE(KAZAKHSTAN, MKK5_MKKC, 0, KZ, 40, 160, 0, 0),
 	CE(KENYA, ETSI13_WORLD, 0, KE, 40, 160, 0, 0),
-	CE(KOREA_ROC, APL9_MKKC, APL1_6G, KR, 40, 160, 160, 0),
+	CE(KOREA_ROC, APL9_MKKC, APL1_6G_04, KR, 40, 160, 160, 0),
 	CE(KUWAIT, ETSI13_WORLD, 0, KW, 40, 160, 0, 0),
 	CE(LATVIA, ETSI13_WORLD, 0, LV, 40, 160, 0, 0),
 	CE(LEBANON, FCC3_WORLD, 0, LB, 40, 160, 0, 0),
@@ -919,8 +919,8 @@ const struct country_code_to_reg_domain g_all_countries[] = {
 	CE(UGANDA, FCC3_WORLD, 0, UG, 40, 160, 0, 0),
 	CE(UKRAINE, ETSI9_WORLD, 0, UA, 40, 160, 0, REGULATORY_PHYMODE_NO11AX),
 	CE(UAE, ETSI13_WORLD, 0, AE, 40, 160, 0, 0),
-	CE(UNITED_KINGDOM, ETSI1_WORLD, ETSI2_6G, GB, 40, 160, 160, 0),
-	CE(UNITED_STATES, FCC8_FCCA, FCC1_6G, US, 40, 160, 160, 0),
+	CE(UNITED_KINGDOM, ETSI1_WORLD, ETSI2_6G_03, GB, 40, 160, 160, 0),
+	CE(UNITED_STATES, FCC8_FCCA, FCC1_6G_01, US, 40, 160, 160, 0),
 	CE(UNITED_STATES_MINOR_OUTLYING_ISLANDS, FCC3_FCCA, 0, UM, 40, 160, 0,
 	   0),
 	CE(URUGUAY, FCC2_WORLD, 0, UY, 40, 160, 0, 0),
@@ -1627,35 +1627,44 @@ const struct regdomain regdomains_5g[] = {
  * both AP and STA (eg ETSI1_VLP_6G).
  */
 enum reg_subdomains_6g {
-	FCC1_CLIENT_LPI_REGULAR_6G = 0x01,
-	FCC1_CLIENT_SP_6G = 0x02,
+	FCC1_CLI_LPI_REGULAR_6G = 0x01,
+	FCC1_CLI_SP_6G = 0x02,
 	FCC1_AP_LPI_6G = 0x03,
-	FCC1_CLIENT_LPI_SUBORDINATE = FCC1_AP_LPI_6G,
+	FCC1_CLI_LPI_SUBORDINATE = FCC1_AP_LPI_6G,
 	FCC1_AP_SP_6G = 0x04,
-	ETSI1_LPI_6G = 0x10,
-	ETSI1_VLP_6G = 0x11,
-	ETSI2_LPI_6G = 0x12,
-	ETSI2_VLP_6G = 0x13,
-	APL1_LPI_6G = 0x20,
-	APL1_VLP_6G = 0x21,
+	ETSI1_AP_LPI_6G = 0x10,
+	ETSI1_CLI_LPI_6G = ETSI1_AP_LPI_6G,
+	ETSI1_AP_VLP_6G = 0x11,
+	ETSI1_CLI_VLP_6G = ETSI1_AP_VLP_6G,
+	ETSI2_AP_LPI_6G = 0x12,
+	ETSI2_CLI_LPI_6G = ETSI2_AP_LPI_6G,
+	ETSI2_AP_VLP_6G = 0x13,
+	ETSI2_CLI_VLP_6G = ETSI2_AP_VLP_6G,
+	APL1_AP_LPI_6G = 0x20,
+	APL1_CLI_LPI_6G = APL1_AP_LPI_6G,
+	APL1_AP_VLP_6G = 0x21,
+	APL1_CLI_VLP_6G = APL1_AP_VLP_6G,
 };
 
 /**
  * Table of 6G super domain to sub domain.
  */
 static const struct sixghz_super_to_subdomains g_6g_reg_dmn_9_tuples[] = {
-	{FCC1_6G, 0, FCC1_AP_LPI_6G, 0,
-	 {FCC1_CLIENT_SP_6G, FCC1_CLIENT_SP_6G},
-	 {FCC1_CLIENT_LPI_REGULAR_6G, FCC1_AP_LPI_6G},
+	{FCC1_6G_01, FCC1_AP_LPI_6G, FCC1_AP_SP_6G, 0,
+	 {FCC1_CLI_LPI_REGULAR_6G, FCC1_CLI_LPI_SUBORDINATE},
+	 {FCC1_CLI_SP_6G, FCC1_CLI_SP_6G},
 	 {0, 0} },
-	{ETSI1_6G, 0, ETSI1_LPI_6G, ETSI1_VLP_6G,
-	 {0, 0}, {ETSI1_LPI_6G, ETSI1_LPI_6G}, {ETSI1_VLP_6G, ETSI1_VLP_6G} },
-	{ETSI2_6G, 0, ETSI2_LPI_6G, ETSI2_VLP_6G,
-	 {0, 0}, {ETSI2_LPI_6G, ETSI2_LPI_6G}, {ETSI2_VLP_6G, ETSI2_VLP_6G} },
-	{APL1_6G, 0, APL1_LPI_6G, APL1_VLP_6G,
-	 {0, 0}, {APL1_LPI_6G, APL1_LPI_6G}, {APL1_VLP_6G, APL1_VLP_6G} },
-	{FCC1_6G_CL, 0, FCC1_AP_LPI_6G, 0,
-	 {0, 0}, {FCC1_CLIENT_LPI_REGULAR_6G, FCC1_CLIENT_LPI_SUBORDINATE},
+	{ETSI1_6G_02, ETSI1_AP_LPI_6G, 0, ETSI1_AP_VLP_6G,
+	 {ETSI1_CLI_LPI_6G, ETSI1_CLI_LPI_6G}, {0, 0},
+	 {ETSI1_CLI_VLP_6G, ETSI1_CLI_VLP_6G} },
+	{ETSI2_6G_03, ETSI2_AP_LPI_6G, 0, ETSI2_AP_VLP_6G,
+	 {ETSI2_CLI_LPI_6G, ETSI2_CLI_LPI_6G}, {0, 0},
+	 {ETSI2_CLI_VLP_6G, ETSI2_CLI_VLP_6G} },
+	{APL1_6G_04, APL1_AP_LPI_6G, 0, APL1_AP_VLP_6G,
+	 {APL1_CLI_LPI_6G, APL1_CLI_LPI_6G}, {0, 0},
+	 {APL1_CLI_VLP_6G, APL1_CLI_VLP_6G} },
+	{FCC1_6G_05, FCC1_AP_LPI_6G, 0, 0,
+	 {FCC1_CLI_LPI_REGULAR_6G, FCC1_CLI_LPI_SUBORDINATE}, {0, 0},
 	 {0, 0} },
 };
 
@@ -1683,7 +1692,7 @@ enum reg_rules_6g {
 	CHAN_6525_6875_5,
 	CHAN_6875_7125_1,
 	CHAN_6875_7125_2,
-	CHAN_6875_7125_3.
+	CHAN_6875_7125_3,
 };
 
 /**
@@ -1731,27 +1740,27 @@ static const struct regulatory_rule_ext reg_rules_6g[] = {
  * Mapping of 6G sub domain and 6G reg rules.
  */
 static const struct sub_6g_regdomain sub_regdomains_6g[] = {
-	[FCC1_AP_LPI_6G] = {2, 160, 4, {CHAN_5945_6425_1
+	[FCC1_AP_LPI_6G] = {2, 160, 4, {CHAN_5945_6425_1,
 					CHAN_6425_6525_1,
 					CHAN_6525_6875_1,
 					CHAN_6875_7125_1} },
 	[FCC1_AP_SP_6G] = {2, 160, 2, {CHAN_5945_6425_2,
 				       CHAN_6525_6875_2} },
-	[FCC1_CLIENT_SP_6G] = {2, 160, 2, {CHAN_5945_6425_3,
-					   CHAN_6525_6875_3} },
-	[FCC1_CLIENT_LPI_REGULAR_6G] = {2, 160,  4, {CHAN_5945_6425_4,
-						     CHAN_6425_6525_2,
-						     CHAN_6525_6875_4,
-						     CHAN_6875_7125_2} },
-	[ETSI1_LPI_6G] = {2, 160, 1, {CHAN_5945_6425_5} },
-	[ETSI1_VLP_6G] = {2, 160, 1, {CHAN_5945_6425_6} },
-	[ETSI2_LPI_6G] = {2, 160, 1, {CHAN_5945_6425_7} },
-	[ETSI2_VLP_6G] = {2, 160, 1, {CHAN_5945_6425_8} },
-	[APL1_LPI_6G]  = {2, 160, 4, {CHAN_5945_6425_9,
-				      CHAN_6425_6525_3,
-				      CHAN_6525_6875_5,
-				      CHAN_6875_7125_3} },
-	[APL1_VLP_6G]  = {2, 160, 1, {CHAN_5945_6425_10} },
+	[FCC1_CLI_SP_6G] = {2, 160, 2, {CHAN_5945_6425_3,
+					CHAN_6525_6875_3} },
+	[FCC1_CLI_LPI_REGULAR_6G] = {2, 160,  4, {CHAN_5945_6425_4,
+						  CHAN_6425_6525_2,
+						  CHAN_6525_6875_4,
+						  CHAN_6875_7125_2} },
+	[ETSI1_AP_LPI_6G] = {2, 160, 1, {CHAN_5945_6425_5} },
+	[ETSI1_AP_VLP_6G] = {2, 160, 1, {CHAN_5945_6425_6} },
+	[ETSI2_AP_LPI_6G] = {2, 160, 1, {CHAN_5945_6425_7} },
+	[ETSI2_AP_VLP_6G] = {2, 160, 1, {CHAN_5945_6425_8} },
+	[APL1_AP_LPI_6G]  = {2, 160, 4, {CHAN_5945_6425_9,
+					 CHAN_6425_6525_3,
+					 CHAN_6525_6875_5,
+					 CHAN_6875_7125_3} },
+	[APL1_AP_VLP_6G]  = {2, 160, 1, {CHAN_5945_6425_10} },
 };
 #endif
 #ifdef CONFIG_REG_CLIENT

+ 16 - 16
umac/regulatory/core/src/reg_db.h

@@ -163,39 +163,39 @@ struct reg_domain_pair {
 #if defined(CONFIG_BAND_6GHZ)
 /**
  * enum reg_super_domain_6g - 6G Super Domain enumeration
- * @FCC1_6G: Super domain FCC1_6G for US
- * @ETSI1_6G: Super domain ETSI1_6G
- * @ETSI2_6G: Super domain ETSI2_6G
- * @APL1_6G: Super domain APL1_6G
- * @FCC1_6G_CL: Super domain FCC1_6G for Chile
+ * @FCC1_6G_01: Super domain FCC1_6G_01 for US
+ * @ETSI1_6G_02: Super domain ETSI1_6G_02 for EU
+ * @ETSI2_6G_03: Super domain ETSI2_6G_03 for UK
+ * @APL1_6G_04: Super domain APL1_6G_04 for Korea
+ * @FCC1_6G_05: Super domain FCC1_6G_05 for Chile
  */
 enum reg_super_domain_6g {
-	FCC1_6G = 0x01,
-	ETSI1_6G = 0x02,
-	ETSI2_6G = 0x03,
-	APL1_6G = 0x04,
-	FCC1_6G_CL = 0x05,
+	FCC1_6G_01 = 0x01,
+	ETSI1_6G_02 = 0x02,
+	ETSI2_6G_03 = 0x03,
+	APL1_6G_04 = 0x04,
+	FCC1_6G_05 = 0x05,
 };
 
 #if defined(COMPILE_REGDB_6G)
 /**
  * struct sixghz_super_to_subdomains
  * @reg_6ghz_super_dmn_id: 6G super domain id.
- * @reg_domain_6g_id_ap_sp: 6G domain id for SP AP.
  * @reg_domain_6g_id_ap_lpi: 6G domain id for LPI AP.
+ * @reg_domain_6g_id_ap_sp: 6G domain id for SP AP.
  * @reg_domain_6g_id_ap_vlp: 6G domain id for VLP AP.
- * @reg_domain_6g_id_client_sp: 6G domain id for clients of the SP AP.
  * @reg_domain_6g_id_client_lpi: 6G domain id for clients of the LPI AP.
+ * @reg_domain_6g_id_client_sp: 6G domain id for clients of the SP AP.
  * @reg_domain_6g_id_client_vlp: 6G domain id for clients of the VLP AP.
  */
 struct sixghz_super_to_subdomains {
 	uint16_t reg_6ghz_super_dmn_id;
-	uint8_t reg_domain_6g_id_ap_sp;
 	uint8_t reg_domain_6g_id_ap_lpi;
+	uint8_t reg_domain_6g_id_ap_sp;
 	uint8_t reg_domain_6g_id_ap_vlp;
-	uint8_t reg_domain_6g_id_client_sp[REG_MAX_CLIENT_TYPE - 1];
-	uint8_t reg_domain_6g_id_client_lpi[REG_MAX_CLIENT_TYPE - 1];
-	uint8_t reg_domain_6g_id_client_vlp[REG_MAX_CLIENT_TYPE - 1];
+	uint8_t reg_domain_6g_id_client_lpi[REG_MAX_CLIENT_TYPE];
+	uint8_t reg_domain_6g_id_client_sp[REG_MAX_CLIENT_TYPE];
+	uint8_t reg_domain_6g_id_client_vlp[REG_MAX_CLIENT_TYPE];
 };
 #endif
 #endif

+ 2 - 2
umac/regulatory/core/src/reg_utils.c

@@ -751,8 +751,8 @@ enum reg_6g_ap_type reg_decide_6g_ap_pwr_type(struct wlan_objmgr_pdev *pdev)
 
 	if (reg_is_afc_available(pdev))
 		ap_pwr_type = REG_STANDARD_POWER_AP;
-	else if (pdev_priv_obj->reg_6g_superid != FCC1_6G &&
-		 pdev_priv_obj->reg_6g_superid != FCC1_6G_CL)
+	else if (pdev_priv_obj->reg_6g_superid != FCC1_6G_01 &&
+		 pdev_priv_obj->reg_6g_superid != FCC1_6G_05)
 		ap_pwr_type = REG_VERY_LOW_POWER_AP;
 
 	reg_set_ap_pwr_and_update_chan_list(pdev, ap_pwr_type);