qcacld-3.0: Don't populate twt_res bit for non assoc link

In MLO STA case, even though twt_responder ini is disable but
still this bit is getting populated in he_cap for non assoc link.
Reason:
1. twt_res is getting set from populate_dot11f_twt_he_cap()
for assoc link. For non assoc link, it's getting set from
mac context.
2. populate_dot11f_twt_he_cap() api doesn't have the interseted
value of ini and firmware caps according to twt component api.

As part of fix,
1. twt_req and twt_res should have intersected value in
populate_dot11f_twt_he_cap()
2. Update twt_res from populate_dot11f_twt_he_cap() for non
assoc link also as it will update the intersection of ini and
fw caps

Change-Id: I6ef34723f879aead4517c28cf6cfad2fa11165fe
CRs-Fixed: 3524903
This commit is contained in:
Jyoti Kumari
2023-06-09 14:27:26 +05:30
committed by Rahul Choudhary
parent 54dd5b71e7
commit 3eec9dc69b
5 changed files with 79 additions and 20 deletions

View File

@@ -96,6 +96,29 @@ wlan_twt_get_responder_cfg(struct wlan_objmgr_psoc *psoc, bool *val);
QDF_STATUS
wlan_twt_get_rtwt_support(struct wlan_objmgr_psoc *psoc, bool *val);
/**
* wlan_twt_get_bcast_requestor_cfg() - Get requestor broadcast TWT
* configuration
* @psoc: Pointer to psoc object
* @val: Pointer to value
*
* Return: QDF_STATUS
*/
QDF_STATUS
wlan_twt_get_bcast_requestor_cfg(struct wlan_objmgr_psoc *psoc, bool *val);
/**
* wlan_twt_get_bcast_responder_cfg() - Get responder broadcast TWT
* configuration
* @psoc: Pointer to psoc object
* @val: Pointer to value
*
* Return: QDF_STATUS
*/
QDF_STATUS
wlan_twt_get_bcast_responder_cfg(struct wlan_objmgr_psoc *psoc, bool *val);
#ifdef FEATURE_SET
/**
* wlan_twt_get_feature_info() - Get TWT feature set information
@@ -146,5 +169,18 @@ wlan_twt_get_responder_cfg(struct wlan_objmgr_psoc *psoc, bool *val)
{
return QDF_STATUS_SUCCESS;
}
static inline QDF_STATUS
wlan_twt_get_bcast_requestor_cfg(struct wlan_objmgr_psoc *psoc, bool *val)
{
return QDF_STATUS_SUCCESS;
}
static inline QDF_STATUS
wlan_twt_get_bcast_responder_cfg(struct wlan_objmgr_psoc *psoc, bool *val)
{
return QDF_STATUS_SUCCESS;
}
#endif
#endif

View File

@@ -61,6 +61,18 @@ wlan_twt_get_rtwt_support(struct wlan_objmgr_psoc *psoc, bool *val)
return wlan_twt_get_restricted_support(psoc, val);
}
QDF_STATUS
wlan_twt_get_bcast_requestor_cfg(struct wlan_objmgr_psoc *psoc, bool *val)
{
return wlan_twt_cfg_get_bcast_requestor(psoc, val);
}
QDF_STATUS
wlan_twt_get_bcast_responder_cfg(struct wlan_objmgr_psoc *psoc, bool *val)
{
return wlan_twt_cfg_get_bcast_responder(psoc, val);
}
#ifdef FEATURE_SET
void wlan_twt_get_feature_info(struct wlan_objmgr_psoc *psoc,
struct wlan_twt_features *twt_feature_set)