qcacmn: Move deletion of datapath vdev to vdev destroy handler

Move dp vdev detach flow to vdev destroy handler from vdev delete
sequence.

Change-Id: I727d70e77f8e913ca732b6ae56c60049161547de
This commit is contained in:
Akshay Kosigi
2019-03-13 18:35:12 +05:30
کامیت شده توسط nshrivas
والد 3f0962833f
کامیت ce7a81cbed
2فایلهای تغییر یافته به همراه13 افزوده شده و 12 حذف شده

مشاهده پرونده

@@ -30,6 +30,7 @@
#include "wlan_vdev_mlme_api.h"
#include "wlan_serialization_api.h"
#include "wlan_utility.h"
#include <cdp_txrx_cmn.h>
static QDF_STATUS mlme_vdev_obj_create_handler(struct wlan_objmgr_vdev *vdev,
void *arg)
@@ -106,6 +107,9 @@ static QDF_STATUS mlme_vdev_obj_destroy_handler(struct wlan_objmgr_vdev *vdev,
void *arg)
{
struct vdev_mlme_obj *vdev_mlme;
struct wlan_objmgr_psoc *psoc;
struct cdp_soc_t *soc_txrx_handle;
struct cdp_vdev *vdev_txrx_handle;
if (!vdev) {
mlme_err(" VDEV is NULL");
@@ -118,6 +122,15 @@ static QDF_STATUS mlme_vdev_obj_destroy_handler(struct wlan_objmgr_vdev *vdev,
return QDF_STATUS_SUCCESS;
}
psoc = wlan_vdev_get_psoc(vdev);
soc_txrx_handle = (struct cdp_soc_t *)wlan_psoc_get_dp_handle(psoc);
vdev_txrx_handle = wlan_vdev_get_dp_handle(vdev);
if (soc_txrx_handle && vdev_txrx_handle) {
wlan_vdev_set_dp_handle(vdev, NULL);
cdp_vdev_detach(soc_txrx_handle, vdev_txrx_handle,
NULL, NULL);
}
mlme_vdev_sm_destroy(vdev_mlme);
mlme_vdev_ops_ext_hdl_destroy(vdev_mlme);

مشاهده پرونده

@@ -202,9 +202,6 @@ QDF_STATUS tgt_vdev_mgr_delete_send(
QDF_STATUS status;
struct wlan_lmac_if_mlme_tx_ops *txops;
struct wlan_objmgr_vdev *vdev;
struct wlan_objmgr_psoc *psoc;
ol_txrx_soc_handle soc_txrx_handle;
struct cdp_vdev *vdev_txrx_handle;
uint8_t vdev_id;
if (!param) {
@@ -220,15 +217,6 @@ QDF_STATUS tgt_vdev_mgr_delete_send(
return QDF_STATUS_E_INVAL;
}
psoc = wlan_vdev_get_psoc(vdev);
soc_txrx_handle = wlan_psoc_get_dp_handle(psoc);
vdev_txrx_handle = wlan_vdev_get_dp_handle(vdev);
if (soc_txrx_handle && vdev_txrx_handle) {
wlan_vdev_set_dp_handle(vdev, NULL);
cdp_vdev_detach(soc_txrx_handle, vdev_txrx_handle,
NULL, NULL);
}
status = txops->vdev_delete_send(vdev, param);
if (QDF_IS_STATUS_ERROR(status))
mlme_err("VDEV_%d: Tx Ops Error : %d", vdev_id, status);