qcacld-3.0: Add TWT nudge support to componentization
In TWT component, add support for TWT nudge command i.e when host wants to suspend the TWT session. Change-Id: I176fdaf0f2ccc2d0656f9108484fc80b409268ef CRs-Fixed: 3085999
This commit is contained in:

zatwierdzone przez
Madan Koyyalamudi

rodzic
82b323d139
commit
8d529074a0
@@ -111,6 +111,21 @@ QDF_STATUS ucfg_twt_resume_req(struct wlan_objmgr_psoc *psoc,
|
||||
struct twt_resume_dialog_cmd_param *params,
|
||||
void *context);
|
||||
|
||||
/**
|
||||
* ucfg_twt_nudge_req() - Process TWT nudge req
|
||||
* @psoc: psoc
|
||||
* @params: nudge dialog cmd param
|
||||
* @context: context
|
||||
*
|
||||
* Perform validations and set WLAN_TWT_NUDGE
|
||||
* in progress
|
||||
*
|
||||
* Return: QDF_STATUS
|
||||
*/
|
||||
QDF_STATUS ucfg_twt_nudge_req(struct wlan_objmgr_psoc *psoc,
|
||||
struct twt_nudge_dialog_cmd_param *params,
|
||||
void *context);
|
||||
|
||||
/**
|
||||
* ucfg_twt_is_max_sessions_reached() - Check if the maximum number of
|
||||
* TWT sessions reached or not excluding the given dialog_id
|
||||
|
@@ -58,7 +58,7 @@ static QDF_STATUS
|
||||
tgt_twt_nudge_complete_resp_handler(struct wlan_objmgr_psoc *psoc,
|
||||
struct twt_nudge_dialog_complete_event_param *event)
|
||||
{
|
||||
return QDF_STATUS_SUCCESS;
|
||||
return wlan_twt_nudge_complete_event_handler(psoc, event);
|
||||
}
|
||||
|
||||
static QDF_STATUS
|
||||
|
@@ -148,6 +148,28 @@ QDF_STATUS
|
||||
tgt_twt_nudge_req_send(struct wlan_objmgr_psoc *psoc,
|
||||
struct twt_nudge_dialog_cmd_param *req)
|
||||
{
|
||||
return QDF_STATUS_SUCCESS;
|
||||
struct wlan_lmac_if_twt_tx_ops *tx_ops;
|
||||
QDF_STATUS status;
|
||||
|
||||
if (!psoc) {
|
||||
twt_err("psoc is null");
|
||||
return QDF_STATUS_E_INVAL;
|
||||
}
|
||||
|
||||
if (!req) {
|
||||
twt_err("Invalid input");
|
||||
return QDF_STATUS_E_INVAL;
|
||||
}
|
||||
|
||||
tx_ops = wlan_twt_get_tx_ops(psoc);
|
||||
if (!tx_ops || !tx_ops->nudge_req) {
|
||||
twt_err("nudge tx_ops is null");
|
||||
status = QDF_STATUS_E_NULL_VALUE;
|
||||
return status;
|
||||
}
|
||||
|
||||
status = tx_ops->nudge_req(psoc, req);
|
||||
|
||||
return status;
|
||||
}
|
||||
|
||||
|
@@ -78,6 +78,14 @@ ucfg_twt_resume_req(struct wlan_objmgr_psoc *psoc,
|
||||
return wlan_twt_resume_req(psoc, params, context);
|
||||
}
|
||||
|
||||
QDF_STATUS
|
||||
ucfg_twt_nudge_req(struct wlan_objmgr_psoc *psoc,
|
||||
struct twt_nudge_dialog_cmd_param *params,
|
||||
void *context)
|
||||
{
|
||||
return wlan_twt_nudge_req(psoc, params, context);
|
||||
}
|
||||
|
||||
bool ucfg_twt_is_max_sessions_reached(struct wlan_objmgr_psoc *psoc,
|
||||
struct qdf_mac_addr *peer_mac,
|
||||
uint8_t dialog_id)
|
||||
|
Reference in New Issue
Block a user