qcacmn: Copy 6G super domain code to the pdev_priv_obj

cfg80211tool wifiX getRegdomain does not display the current 6G super
domain code. This is because, when the WMI_REG_CHAN_LIST_CC_EXT_EVENT_ID
is received from the target, the 6G super domain code is not copied to
the pdev_priv_obj. Therefore, copy the 6G super domain code to the
pdev_priv_obj to display the current 6G super domain code.

Change-Id: If2e0bfc69cad3a4c47e73fdb35ad08eecb0cb48d
CRs-Fixed: 2856074
This commit is contained in:
Hariharan Basuthkar 2021-01-15 18:22:12 +05:30 • committed by snandini
commit cf6160e872
2 changed files with 7 additions and 4 deletions

View file

@ -671,6 +671,8 @@ static void reg_propagate_6g_mas_channel_list(
mas_chan_params->unspecified_ap_usable;
pdev_priv_obj->is_6g_channel_list_populated =
mas_chan_params->is_6g_channel_list_populated;
pdev_priv_obj->reg_6g_superid =
mas_chan_params->reg_6g_superid;
}
#else
static inline void reg_propagate_6g_mas_channel_list(
@ -1508,6 +1510,8 @@ static void reg_store_regulatory_ext_info_to_socpriv(
soc_reg->mas_chan_params[phy_id].ctry_code = regulat_info->ctry_code;
soc_reg->mas_chan_params[phy_id].reg_dmn_pair =
regulat_info->reg_dmn_pair;
soc_reg->mas_chan_params[phy_id].reg_6g_superid =
regulat_info->domain_code_6g_super_id;
qdf_mem_copy(soc_reg->mas_chan_params[phy_id].current_country,
regulat_info->alpha2,
REG_ALPHA2_LEN + 1);

View file

@ -912,7 +912,6 @@ struct cur_reg_rule {
* @num_phy: number of phy
* @phy_id: phy id
* @reg_dmn_pair: reg domain pair
* @reg_6g_superid: 6G super domain id
* @ctry_code: country code
* @alpha2: country alpha2
* @offload_enabled: offload enabled
@ -926,12 +925,12 @@ struct cur_reg_rule {
* @num_5g_reg_rules: number 5G and 6G reg rules
* @reg_rules_2g_ptr: ptr to 2G reg rules
* @reg_rules_5g_ptr: ptr to 5G reg rules
* @super_dmn_id: 6G super domain ID
* @client_type: type of client
* @rnr_tpe_usable: if RNR TPE octet is usable for country
* @unspecified_ap_usable: if not set, AP usable for country
* @domain_code_6g_ap: domain code for 6G AP
* @domain_code_6g_client: domain code for 6G client in SP mode
* @domain_code_6g_super_id: 6G super domain ID
* @min_bw_6g_ap: minimum 6G bw for AP
* @max_bw_6g_ap: maximum 6G bw for AP
* @min_bw_6g_client: list of minimum 6G bw for clients
@ -947,7 +946,6 @@ struct cur_regulatory_info {
uint8_t num_phy;
uint8_t phy_id;
uint16_t reg_dmn_pair;
uint16_t reg_6g_superid;
uint16_t ctry_code;
uint8_t alpha2[REG_ALPHA2_LEN + 1];
bool offload_enabled;
@ -961,7 +959,6 @@ struct cur_regulatory_info {
uint32_t num_5g_reg_rules;
struct cur_reg_rule *reg_rules_2g_ptr;
struct cur_reg_rule *reg_rules_5g_ptr;
uint16_t super_dmn_id;
enum reg_6g_client_type client_type;
bool rnr_tpe_usable;
bool unspecified_ap_usable;
@ -1135,6 +1132,7 @@ enum direction {
* @def_region_domain: default reg domain
* @def_country_code: default country code
* @reg_dmn_pair: reg domain pair
* @reg_6g_superid: 6G super domain ID
* @ctry_code: country code
* @reg_rules: regulatory rules
* @client_type: type of client
@ -1155,6 +1153,7 @@ struct mas_chan_params {
uint16_t def_region_domain;
uint16_t def_country_code;
uint32_t reg_dmn_pair;
uint16_t reg_6g_superid;
uint16_t ctry_code;
struct reg_rule_info reg_rules;
#ifdef CONFIG_BAND_6GHZ