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:
@@ -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)
|
||||
{
|
||||
|
@@ -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)
|
||||
{
|
||||
|
Referencia en una nueva incidencia
Block a user