qcacld-3.0: Add ini to support different versions of IGMP

Add bit mask ini support to decide IGMP version

Change-Id: I2676f9adb83c421c28a1d19efb8fe13a64f34de9
CRs-Fixed: 2907553
This commit is contained in:
sheenam monga 2021-03-24 23:57:22 +05:30 • committed by snandini
commit c4bea427da
3 changed files with 43 additions and 1 deletions

View file

@ -171,6 +171,21 @@ static void wlan_pmo_ra_filtering_init_cfg(struct wlan_objmgr_psoc *psoc,
}
#endif
#ifdef WLAN_FEATURE_IGMP_OFFLOAD
static void
wlan_pmo_get_igmp_version_support_cfg(struct wlan_objmgr_psoc *psoc,
struct pmo_psoc_cfg *psoc_cfg)
{
psoc_cfg->igmp_version_support =
cfg_get(psoc, CFG_IGMP_VERSION_SUPPORT);
}
#else
static void
wlan_pmo_get_igmp_version_support_cfg(struct wlan_objmgr_psoc *psoc,
struct pmo_psoc_cfg *psoc_cfg)
{}
#endif
static void wlan_pmo_init_cfg(struct wlan_objmgr_psoc *psoc,
struct pmo_psoc_cfg *psoc_cfg)
{
@ -183,6 +198,7 @@ static void wlan_pmo_init_cfg(struct wlan_objmgr_psoc *psoc,
psoc_cfg->ns_offload_enable_dynamic =
cfg_get(psoc, CFG_PMO_ENABLE_HOST_NSOFFLOAD);
psoc_cfg->sta_dynamic_dtim = cfg_get(psoc, CFG_PMO_ENABLE_DYNAMIC_DTIM);
wlan_pmo_get_igmp_version_support_cfg(psoc, psoc_cfg);
psoc_cfg->sta_mod_dtim = cfg_get(psoc, CFG_PMO_ENABLE_MODULATED_DTIM);
psoc_cfg->enable_mc_list = cfg_get(psoc, CFG_PMO_MC_ADDR_LIST_ENABLE);
psoc_cfg->power_save_mode = cfg_get(psoc, CFG_PMO_POWERSAVE_MODE);

View file

@ -482,6 +482,27 @@
0, \
"This ini is used to enable bus suspend in P2PGO mode")
/*
* <ini>
* igmp_version_support - Configure igmp version
* @Min: 0x00000000
* @Max: 0x7
* @Default: 0x0000000
*
* This ini is used to configure version while offloading igmp
*
* Bit 0: support igmp version 1
* Bit 1: support igmp version 2
* Bit 2: support igmp version 3
*/
#define CFG_IGMP_VERSION_SUPPORT CFG_INI_UINT( \
"igmp_version_support", \
0x00000000, \
0x7, \
0x7, \
CFG_VALUE_OR_DEFAULT, \
"configure igmp offload support version")
#define CFG_PMO_COMMON_ALL \
CFG(CFG_ENABLE_SAP_SUSPEND) \
CFG(CFG_PMO_ENABLE_HOST_ARPOFFLOAD) \
@ -501,6 +522,7 @@
CFG(CFG_RA_RATE_LIMIT_INTERVAL) \
CFG(CFG_PMO_MOD_DTIM_ON_SYS_SUSPEND) \
CFG(CFG_ENABLE_BUS_SUSPEND_IN_SAP_MODE) \
CFG(CFG_ENABLE_BUS_SUSPEND_IN_GO_MODE)
CFG(CFG_ENABLE_BUS_SUSPEND_IN_GO_MODE)\
CFG(CFG_IGMP_VERSION_SUPPORT)
#endif /* WLAN_PMO_COMMON_CFG_H__ */

View file

@ -310,6 +310,7 @@ enum active_apf_mode {
* @ito_repeat_count: Indicates ito repeated count
* @is_mod_dtim_on_sys_suspend_enabled: true when mod dtim is enabled for
* system suspend wow else false
* @igmp_version_support: igmp version support
*/
struct pmo_psoc_cfg {
bool ptrn_match_enable_all_vdev;
@ -377,6 +378,9 @@ struct pmo_psoc_cfg {
bool is_mod_dtim_on_sys_suspend_enabled;
bool is_bus_suspend_enabled_in_sap_mode;
bool is_bus_suspend_enabled_in_go_mode;
#ifdef WLAN_FEATURE_IGMP_OFFLOAD
uint32_t igmp_version_support;
#endif
};
/**