qcacld-3.0: Use wma callback to get vdev dp handle

PMO should not know about vdev data path handle, but
pmo_unpause_all_vdev() need it, so register a wma callback to retrieve
the vdev dp handle instead of keep a copy in pmo vdev private context.

Refine current code to retrieve vdev dp handle using a wma callback

Change-Id: I1f668fff633a5e5cdfc478e7f619e9600930b333
CRs-Fixed: 2227384
Este commit está contenido en:
Will Huang
2018-06-15 11:27:50 +08:00
cometido por nshrivas
padre 69d0780f6e
commit ad01577f26
Se han modificado 10 ficheros con 128 adiciones y 49 borrados

Ver fichero

@@ -744,6 +744,47 @@ pmo_unregister_is_device_in_low_pwr_mode(struct wlan_objmgr_psoc *psoc)
return QDF_STATUS_SUCCESS;
}
QDF_STATUS pmo_register_get_vdev_dp_handle(struct wlan_objmgr_psoc *psoc,
pmo_get_vdev_dp_handle handler)
{
struct pmo_psoc_priv_obj *psoc_ctx;
if (!psoc) {
QDF_BUG(psoc);
pmo_err("psoc is null");
return QDF_STATUS_E_NULL_VALUE;
}
if (!handler) {
QDF_BUG(handler);
pmo_err("pmo_get_vdev_dp_handle is null");
return QDF_STATUS_E_NULL_VALUE;
}
pmo_psoc_with_ctx(psoc, psoc_ctx) {
psoc_ctx->get_vdev_dp_handle = handler;
}
return QDF_STATUS_SUCCESS;
}
QDF_STATUS pmo_unregister_get_vdev_dp_handle(struct wlan_objmgr_psoc *psoc)
{
struct pmo_psoc_priv_obj *psoc_ctx;
if (!psoc) {
QDF_BUG(psoc);
pmo_err("psoc is null");
return QDF_STATUS_E_NULL_VALUE;
}
pmo_psoc_with_ctx(psoc, psoc_ctx) {
psoc_ctx->get_vdev_dp_handle = NULL;
}
return QDF_STATUS_SUCCESS;
}
QDF_STATUS pmo_register_get_cfg_int_callback(struct wlan_objmgr_psoc *psoc,
pmo_get_cfg_int handler)
{

Ver fichero

@@ -273,12 +273,6 @@ void pmo_ucfg_psoc_update_dp_handle(struct wlan_objmgr_psoc *psoc,
pmo_core_psoc_update_dp_handle(psoc, dp_handle);
}
void pmo_ucfg_vdev_update_dp_handle(struct wlan_objmgr_vdev *vdev,
void *dp_handle)
{
pmo_core_vdev_update_dp_handle(vdev, dp_handle);
}
void pmo_ucfg_psoc_update_htc_handle(struct wlan_objmgr_psoc *psoc,
void *htc_handle)
{