1
0

qcacmn: Add target_if changes for dynamic hw-mode config

This feature enables a user to change HW mode dynamically
from DBS to DBS_SBS mode and vice-versa. Currently, HW
mode configuration is only possible through INI setting
requiring a subsequent reboot.

Primary target_if changes are:

1. Add structure definition wlan_psoc_host_hal_reg_cap_ext
to parse and store the new extended regulatory capability
info in WMI_MAC_PHY_CAPABILITIES tlv sent in EXT service
ready WMI event
2. Add API target_psoc_get_num_radios_for_mode to retrieve
the number of radios corresponding to a hw-mode
3. Add API target_psoc_get_mac_phy_cap_for_mode to retrieve
the pointer to the mac_phy_cap info of the first radio
corresponding to the input hw-mode.

Change-Id: Ia10f0fd5e50c0ce0cbe99f9281147266aedce4e9
CRs-fixed: 2490212
Este cometimento está contido em:
Gyanranjan Hazarika
2019-06-05 00:43:38 -07:00
cometido por nshrivas
ascendente 9e02e1e104
cometimento 8e0ae99446
8 ficheiros modificados com 130 adições e 21 eliminações

Ver ficheiro

@@ -367,6 +367,7 @@ typedef bool (*qdf_irqlocked_func_t)(void *);
* @QDF_MODULE_ID_INTEROP_ISSUES_AP: interop issues ap module ID
* @QDF_MODULE_ID_BLACKLIST_MGR: Blacklist Manager module
* @QDF_MODULE_ID_QLD: QCA Live Debug module ID
* @QDF_MODULE_ID_DYNAMIC_MODE_CHG: Dynamic mode change module ID
* @QDF_MODULE_ID_ANY: anything
* @QDF_MODULE_ID_MAX: Max place holder module ID
*/
@@ -484,6 +485,7 @@ typedef enum {
QDF_MODULE_ID_INTEROP_ISSUES_AP,
QDF_MODULE_ID_BLACKLIST_MGR,
QDF_MODULE_ID_QLD,
QDF_MODULE_ID_DYNAMIC_MODE_CHG,
QDF_MODULE_ID_ANY,
QDF_MODULE_ID_MAX,
} QDF_MODULE_ID;

Ver ficheiro

@@ -2712,6 +2712,7 @@ struct category_name_info g_qdf_category_name[MAX_SUPPORTED_CATEGORY] = {
[QDF_MODULE_ID_INTEROP_ISSUES_AP] = {"INTEROP_ISSUES_AP"},
[QDF_MODULE_ID_BLACKLIST_MGR] = {"blm"},
[QDF_MODULE_ID_QLD] = {"QLD"},
[QDF_MODULE_ID_DYNAMIC_MODE_CHG] = {"Dynamic Mode Change"},
[QDF_MODULE_ID_ANY] = {"ANY"},
};
qdf_export_symbol(g_qdf_category_name);
@@ -3171,6 +3172,7 @@ static void set_default_trace_levels(struct category_info *cinfo)
[QDF_MODULE_ID_INTEROP_ISSUES_AP] = QDF_TRACE_LEVEL_NONE,
[QDF_MODULE_ID_BLACKLIST_MGR] = QDF_TRACE_LEVEL_NONE,
[QDF_MODULE_ID_QLD] = QDF_TRACE_LEVEL_ERROR,
[QDF_MODULE_ID_DYNAMIC_MODE_CHG] = QDF_TRACE_LEVEL_INFO,
[QDF_MODULE_ID_ANY] = QDF_TRACE_LEVEL_INFO,
};