qcacld-3.0: update mlme caps for the EHT

update the mlme data structures with eht capabilities.

Change-Id: I3d6b450d673d07560086383a6e32f5602d59ae41
CRs-Fixed: 2911882
This commit is contained in:
Arun Kumar Khandavalli
2021-02-26 20:51:23 +05:30
committed by snandini
parent 061fe45f3c
commit 40e2d02202
5 changed files with 53 additions and 1 deletions

View File

@@ -344,6 +344,7 @@ struct wait_for_key_timer {
* @rso_cfg: per vdev RSO config to be sent to FW * @rso_cfg: per vdev RSO config to be sent to FW
* @connect_info: mlme connect information * @connect_info: mlme connect information
* @wait_key_timer: wait key timer * @wait_key_timer: wait key timer
* @eht_config: Eht capability configuration
*/ */
struct mlme_legacy_priv { struct mlme_legacy_priv {
bool chan_switch_in_progress; bool chan_switch_in_progress;
@@ -381,6 +382,9 @@ struct mlme_legacy_priv {
#endif #endif
struct mlme_connect_info connect_info; struct mlme_connect_info connect_info;
struct wait_for_key_timer wait_key_timer; struct wait_for_key_timer wait_key_timer;
#ifdef WLAN_FEATURE_11BE
tDot11fIEeht_cap eht_config;
#endif
}; };
/** /**

View File

@@ -3129,4 +3129,14 @@ bool wlan_mlme_is_local_tpe_pref(struct wlan_objmgr_psoc *psoc);
*/ */
bool bool
wlan_mlme_is_data_stall_recovery_fw_supported(struct wlan_objmgr_psoc *psoc); wlan_mlme_is_data_stall_recovery_fw_supported(struct wlan_objmgr_psoc *psoc);
/**
* mlme_cfg_get_eht_caps() - Get the EHT capability info
* @psoc: pointer to psoc object
* @eht_cap: Caps that needs to be filled.
*
* Return: QDF Status
*/
QDF_STATUS mlme_cfg_get_eht_caps(struct wlan_objmgr_psoc *psoc,
tDot11fIEeht_cap *eht_cap);
#endif /* _WLAN_MLME_API_H_ */ #endif /* _WLAN_MLME_API_H_ */

View File

@@ -1066,7 +1066,7 @@ struct wlan_mlme_he_caps {
*/ */
struct wlan_mlme_eht_caps { struct wlan_mlme_eht_caps {
tDot11fIEeht_cap dot11_eht_cap; tDot11fIEeht_cap dot11_eht_cap;
tDot11fIEeht_cap eht_cap_orig;
/* Add members to store INI configuration corresponding to 11be */ /* Add members to store INI configuration corresponding to 11be */
}; };
#endif #endif

View File

@@ -4143,4 +4143,17 @@ ucfg_mlme_is_sta_mon_conc_supported(struct wlan_objmgr_psoc *psoc)
return wlan_mlme_is_sta_mon_conc_supported(psoc); return wlan_mlme_is_sta_mon_conc_supported(psoc);
} }
/**
* ucfg_mlme_cfg_get_eht_caps() - Get the EHT capability info
* @psoc: pointer to psoc object
* @eht_cap: Caps that needs to be filled.
*
* Return: QDF Status
*/
static inline
QDF_STATUS ucfg_mlme_cfg_get_eht_caps(struct wlan_objmgr_psoc *psoc,
tDot11fIEeht_cap *eht_cap)
{
return mlme_cfg_get_eht_caps(psoc, eht_cap);
}
#endif /* _WLAN_MLME_UCFG_API_H_ */ #endif /* _WLAN_MLME_UCFG_API_H_ */

View File

@@ -901,6 +901,15 @@ QDF_STATUS mlme_update_tgt_he_caps_in_cfg(struct wlan_objmgr_psoc *psoc,
QDF_STATUS mlme_update_tgt_eht_caps_in_cfg(struct wlan_objmgr_psoc *psoc, QDF_STATUS mlme_update_tgt_eht_caps_in_cfg(struct wlan_objmgr_psoc *psoc,
struct wma_tgt_cfg *wma_cfg) struct wma_tgt_cfg *wma_cfg)
{ {
struct wlan_mlme_psoc_ext_obj *mlme_obj = mlme_get_psoc_ext_obj(psoc);
tDot11fIEeht_cap *eht_cap = &wma_cfg->eht_cap;
if (!mlme_obj)
return QDF_STATUS_E_FAILURE;
mlme_obj->cfg.eht_caps.dot11_eht_cap.present = 1;
qdf_mem_copy(&mlme_obj->cfg.eht_caps.dot11_eht_cap, eht_cap,
sizeof(tDot11fIEeht_cap));
return QDF_STATUS_SUCCESS; return QDF_STATUS_SUCCESS;
} }
#endif #endif
@@ -4731,3 +4740,19 @@ bool wlan_mlme_is_local_tpe_pref(struct wlan_objmgr_psoc *psoc)
return mlme_obj->cfg.power.use_local_tpe; return mlme_obj->cfg.power.use_local_tpe;
} }
#ifdef WLAN_FEATURE_11BE
QDF_STATUS mlme_cfg_get_eht_caps(struct wlan_objmgr_psoc *psoc,
tDot11fIEeht_cap *eht_cap)
{
struct wlan_mlme_psoc_ext_obj *mlme_obj;
mlme_obj = mlme_get_psoc_ext_obj(psoc);
if (!mlme_obj)
return QDF_STATUS_E_FAILURE;
*eht_cap = mlme_obj->cfg.eht_caps.dot11_eht_cap;
return QDF_STATUS_SUCCESS;
}
#endif