qcacmn: Add UMAC vdev into DP vdev structure

Add and initialize UMAC vdev handle into DP vdev structure.

Change-Id: If0895bfdc773569cc9b40d735b6237522692cd57
CRs-Fixed: 2236237
This commit is contained in:
Akshay Kosigi 2018-05-03 23:39:27 +05:30 • committed by nshrivas
commit dbbaef4f81
5 changed files with 16 additions and 4 deletions

View file

@ -597,7 +597,8 @@ cdp_set_monitor_filter(ol_txrx_soc_handle soc, struct cdp_pdev *pdev,
*****************************************************************************/
static inline void
cdp_vdev_register(ol_txrx_soc_handle soc, struct cdp_vdev *vdev,
void *osif_vdev, struct ol_txrx_ops *txrx_ops)
void *osif_vdev, struct cdp_ctrl_objmgr_vdev *ctrl_vdev,
struct ol_txrx_ops *txrx_ops)
{
if (!soc || !soc->ops) {
QDF_TRACE(QDF_MODULE_ID_CDP, QDF_TRACE_LEVEL_DEBUG,
@ -611,7 +612,7 @@ cdp_vdev_register(ol_txrx_soc_handle soc, struct cdp_vdev *vdev,
return;
soc->ops->cmn_drv_ops->txrx_vdev_register(vdev,
osif_vdev, txrx_ops);
osif_vdev, ctrl_vdev, txrx_ops);
}
static inline int

View file

@ -37,4 +37,10 @@ struct cdp_soc;
* cdp_ctrl_objmgr_pdev - opaque handle for UMAC pdev object
*/
struct cdp_ctrl_objmgr_pdev;
/**
* cdp_ctrl_objmgr_vdev - opaque handle for UMAC vdev object
*/
struct cdp_ctrl_objmgr_vdev;
#endif

View file

@ -159,7 +159,8 @@ struct cdp_cmn_ops {
********************************************************************/
void (*txrx_vdev_register)(struct cdp_vdev *vdev,
void *osif_vdev, struct ol_txrx_ops *txrx_ops);
void *osif_vdev, struct cdp_ctrl_objmgr_vdev *ctrl_vdev,
struct ol_txrx_ops *txrx_ops);
int (*txrx_mgmt_send)(struct cdp_vdev *vdev,
qdf_nbuf_t tx_mgmt_frm, uint8_t type);

View file

@ -3367,16 +3367,18 @@ fail0:
* dp_vdev_register_wifi3() - Register VDEV operations from osif layer
* @vdev: Datapath VDEV handle
* @osif_vdev: OSIF vdev handle
* @ctrl_vdev: UMAC vdev handle
* @txrx_ops: Tx and Rx operations
*
* Return: DP VDEV handle on success, NULL on failure
*/
static void dp_vdev_register_wifi3(struct cdp_vdev *vdev_handle,
void *osif_vdev,
void *osif_vdev, struct cdp_ctrl_objmgr_vdev *ctrl_vdev,
struct ol_txrx_ops *txrx_ops)
{
struct dp_vdev *vdev = (struct dp_vdev *)vdev_handle;
vdev->osif_vdev = osif_vdev;
vdev->ctrl_vdev = ctrl_vdev;
vdev->osif_rx = txrx_ops->rx.rx;
vdev->osif_rsim_rx_decap = txrx_ops->rx.rsim_rx_decap;
vdev->osif_get_key = txrx_ops->get_key;

View file

@ -1191,6 +1191,8 @@ struct dp_vdev {
/* Handle to the OS shim SW's virtual device */
ol_osif_vdev_handle osif_vdev;
/* Handle to the UMAC handle */
struct cdp_ctrl_objmgr_vdev *ctrl_vdev;
/* vdev_id - ID used to specify a particular vdev to the target */
uint8_t vdev_id;