qcacmn: cdp: Converge cdp_ctrl_ops

Currently cdp ops are given pdev/vdev handle
as its arguments, which is directly accessed
in those APIs. This can cause a race-condition
in access of the respective handles if it has
been deleted in parallel.

Hence as a part of cdp convergence, pass only
the pdev_id/vdev_id which will be used to get the
respective handles, and hence avoiding unwanted
access of the handles if it has been deleted.
Also deleting few ops which stores and retrieves
such handles and adding ops to set/get pdev params.

- txrx_get_psoc_param
- wdi_event_sub
- wdi_event_unsub

Change-Id: Id089d9b6b4737d700d2436e2081291a3741affb5
CRs-Fixed: 2541658
此提交包含在:
Vevek Venkatesan
2019-09-16 23:50:10 +05:30
提交者 nshrivas
父節點 13aabf095c
當前提交 4a07e3949d
共有 8 個檔案被更改,包括 140 行新增111 行删除

查看文件

@@ -1403,7 +1403,15 @@ int dp_wdi_event_attach(struct dp_pdev *txrx_pdev);
int dp_wdi_event_detach(struct dp_pdev *txrx_pdev);
int dp_set_pktlog_wifi3(struct dp_pdev *pdev, uint32_t event,
bool enable);
void *dp_get_pldev(struct cdp_pdev *txrx_pdev);
/**
* dp_get_pldev() - function to get pktlog device handle
* @soc_hdl: datapath soc handle
* @pdev_id: physical device id
*
* Return: pktlog device handle or NULL
*/
void *dp_get_pldev(struct cdp_soc_t *soc_hdl, uint8_t pdev_id);
void dp_pkt_log_init(struct cdp_soc_t *soc_hdl, uint8_t pdev_id, void *scn);
static inline void