qcacmn: Handle RADAR detect in RESTART state
If MLME gets RADAR detected event while waiting for RESTART response from FW(RESTART_PROGRESS substate), it sets PDEV RADAR detect deferred flag. Once VDEV SM moves from START to other state, it invokes MLME SM callback, which checks whether “RADAR detect defer” is set. If it is set, SM callback posts message to scheduler to notify all VDEVs on RADAR detection.(from here, flow goes as regular radar detected event) Change-Id: Icaa2aee900be60c12c5b38b1d199bb01ba31f722 CRs-Fixed: 2390019
This commit is contained in:
@@ -452,6 +452,8 @@ enum vdev_start_resp_type {
|
||||
* peer delete completion
|
||||
* @mlme_vdev_down_send: callback to initiate actions of VDEV
|
||||
* MLME down operation
|
||||
* @mlme_vdev_notify_start_state_exit: callback to notify on vdev start
|
||||
* start state exit
|
||||
*/
|
||||
struct vdev_mlme_ops {
|
||||
QDF_STATUS (*mlme_vdev_validate_basic_params)(
|
||||
@@ -519,6 +521,8 @@ struct vdev_mlme_ops {
|
||||
QDF_STATUS (*mlme_vdev_ext_start_rsp)(
|
||||
struct vdev_mlme_obj *vdev_mlme,
|
||||
struct vdev_start_response *rsp);
|
||||
QDF_STATUS (*mlme_vdev_notify_start_state_exit)(
|
||||
struct vdev_mlme_obj *vdev_mlme);
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -986,4 +990,25 @@ static inline QDF_STATUS mlme_vdev_notify_down_complete(
|
||||
return ret;
|
||||
}
|
||||
|
||||
/**
|
||||
* mlme_vdev_notify_start_state_exit - VDEV SM start state exit notification
|
||||
* @vdev_mlme_obj: VDEV MLME comp object
|
||||
*
|
||||
* API notifies on start state exit
|
||||
*
|
||||
* Return: SUCCESS on successful completion of notification
|
||||
* FAILURE, if it fails due to any
|
||||
*/
|
||||
static inline QDF_STATUS mlme_vdev_notify_start_state_exit(
|
||||
struct vdev_mlme_obj *vdev_mlme)
|
||||
{
|
||||
QDF_STATUS ret = QDF_STATUS_SUCCESS;
|
||||
|
||||
if ((vdev_mlme->ops) &&
|
||||
vdev_mlme->ops->mlme_vdev_notify_start_state_exit)
|
||||
ret = vdev_mlme->ops->mlme_vdev_notify_start_state_exit(
|
||||
vdev_mlme);
|
||||
|
||||
return ret;
|
||||
}
|
||||
#endif
|
||||
|
Reference in New Issue
Block a user