From 2a2a8afda4e6e314446273b9225ff41d162a9ea9 Mon Sep 17 00:00:00 2001 From: Akshay Kosigi Date: Fri, 10 May 2019 15:03:43 +0530 Subject: [PATCH] qcacmn: Add change to restart target if timer Add code to restart timer for a new vdev command being sent to FW, while we are awaiting for a response from FW for a previous command. Change-Id: I1847968831cca6b0ee1e49d32b83196061341702 CRs-Fixed: 2450682 --- .../vdev_mgr/src/target_if_vdev_mgr_tx_ops.c | 25 +++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/target_if/mlme/vdev_mgr/src/target_if_vdev_mgr_tx_ops.c b/target_if/mlme/vdev_mgr/src/target_if_vdev_mgr_tx_ops.c index 5df2579c93c1..ee271bc88048 100644 --- a/target_if/mlme/vdev_mgr/src/target_if_vdev_mgr_tx_ops.c +++ b/target_if/mlme/vdev_mgr/src/target_if_vdev_mgr_tx_ops.c @@ -86,6 +86,25 @@ static QDF_STATUS target_if_vdev_mgr_rsp_timer_stop( return QDF_STATUS_E_FAILURE; } +#ifdef VDEV_ASSERT_MANAGEMENT +static void target_if_vdev_mgr_assert_mgmt( + struct wlan_objmgr_vdev *vdev, + struct vdev_response_timer *vdev_rsp, + uint8_t set_bit) +{ + target_if_vdev_mgr_rsp_timer_stop(vdev, vdev_rsp, + set_bit); +} +#else +static void target_if_vdev_mgr_assert_mgmt( + struct wlan_objmgr_vdev *vdev, + struct vdev_response_timer *vdev_rsp, + uint8_t set_bit) +{ + QDF_ASSERT(0); +} +#endif + static QDF_STATUS target_if_vdev_mgr_rsp_timer_start( struct wlan_objmgr_vdev *vdev, struct vdev_response_timer *vdev_rsp, @@ -111,7 +130,8 @@ static QDF_STATUS target_if_vdev_mgr_rsp_timer_start( mlme_err("PSOC_%d VDEV_%d: Response bit is set %d", wlan_psoc_get_id(psoc), vdev_id, vdev_rsp->rsp_status); - QDF_ASSERT(0); + target_if_vdev_mgr_assert_mgmt(vdev, vdev_rsp, + rsp_pos); } } } @@ -120,7 +140,8 @@ static QDF_STATUS target_if_vdev_mgr_rsp_timer_start( mlme_err("PSOC_%d VDEV_%d: Response bit is set %d", wlan_psoc_get_id(psoc), vdev_id, vdev_rsp->rsp_status); - QDF_ASSERT(0); + target_if_vdev_mgr_assert_mgmt(vdev, vdev_rsp, + set_bit); } /* reference taken for timer start, will be released with stop */