qcacld-3.0: Add logic to handle country code change

Update the HDD callback to check for phymode change or
channel change when country code updates and stop/restart
the adapter accordingly. Include cases for STA mode,
SAP mode, P2P-CLI mode, and P2P-GO mode.

Add conditional compilation flag for MCC specific API in
qcacmn.

Change-Id: I88edb401146e3cef48d757393f89fa48cb6ac895
CRs-fixed: 2658294
This commit is contained in:
Lincoln Tran
2020-03-26 14:10:34 -07:00
committed by nshrivas
vanhempi 745f9e7d1f
commit e4f18a9065
8 muutettua tiedostoa jossa 269 lisäystä ja 14 poistoa

Näytä tiedosto

@@ -1648,6 +1648,7 @@ struct hdd_fw_ver_info {
* @psoc_idle_timeout_work: delayed work for psoc idle shutdown
* @dynamic_nss_chains_support: Per vdev dynamic nss chains update capability
* @sar_cmd_params: SAR command params to be configured to the FW
* @country_change_work: work for updating vdev when country changes
*/
struct hdd_context {
struct wlan_objmgr_psoc *psoc;
@@ -1972,6 +1973,7 @@ struct hdd_context {
#ifdef FW_THERMAL_THROTTLE_SUPPORT
uint8_t dutycycle_off_percent;
#endif
qdf_work_t country_change_work;
};
/**

Näytä tiedosto

@@ -40,6 +40,15 @@ struct hdd_context;
int hdd_update_regulatory_config(struct hdd_context *hdd_ctx);
int hdd_regulatory_init(struct hdd_context *hdd_ctx, struct wiphy *wiphy);
/**
* hdd_regulatory_deinit() - cleanup all components of regulatory
* @hdd_ctx: HDD context
*
* Return: None
*/
void hdd_regulatory_deinit(struct hdd_context *hdd_ctx);
void hdd_program_country_code(struct hdd_context *hdd_ctx);
void hdd_reset_global_reg_params(void);