From 0b19b4b59f942495a21133fb50de4d172901201f Mon Sep 17 00:00:00 2001 From: Amir Patel Date: Thu, 3 May 2018 23:01:08 +0530 Subject: [PATCH] qcacmn: Update API signature for vdev and peer search to include pdev_id Add a pdev_id parameter to following API For peer: a. wlan_objmgr_get_peer() b. wlan_objmgr_get_peer_by_mac_n_vdev() c. wlan_objmgr_get_peer_by_mac_n_vdev_no_state() d. wlan_objmgr_get_peer_no_state() e. wlan_objmgr_get_peer_nolock() f. wlan_objmgr_populate_logically_ deleted_peerlist_by_mac_n_vdev() For vdev: wlan_objmgr_get_vdev_by_macaddr_from_psoc() Change-Id: I7480c5e17e24b5dfb1a7846cfa773821a86a27ca CRs-Fixed: 2210118 --- core/src/wlan_p2p_main.c | 4 +++- core/src/wlan_p2p_off_chan_tx.c | 18 ++++++++++++------ 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/core/src/wlan_p2p_main.c b/core/src/wlan_p2p_main.c index ba86929c088c..e76f06ffb40d 100644 --- a/core/src/wlan_p2p_main.c +++ b/core/src/wlan_p2p_main.c @@ -1164,6 +1164,7 @@ void p2p_peer_authorized(struct wlan_objmgr_vdev *vdev, uint8_t *mac_addr) QDF_STATUS status; struct wlan_objmgr_psoc *psoc; struct wlan_objmgr_peer *peer; + uint8_t pdev_id; if (!vdev) { p2p_err("vdev:%pK", vdev); @@ -1174,7 +1175,8 @@ void p2p_peer_authorized(struct wlan_objmgr_vdev *vdev, uint8_t *mac_addr) p2p_err("psoc:%pK", psoc); return; } - peer = wlan_objmgr_get_peer(psoc, mac_addr, WLAN_P2P_ID); + pdev_id = wlan_objmgr_pdev_get_pdev_id(wlan_vdev_get_pdev(vdev)); + peer = wlan_objmgr_get_peer(psoc, pdev_id, mac_addr, WLAN_P2P_ID); if (!peer) { p2p_debug("peer info not found"); return; diff --git a/core/src/wlan_p2p_off_chan_tx.c b/core/src/wlan_p2p_off_chan_tx.c index 6af91f761b67..65b514c4f2b8 100644 --- a/core/src/wlan_p2p_off_chan_tx.c +++ b/core/src/wlan_p2p_off_chan_tx.c @@ -466,16 +466,19 @@ static QDF_STATUS p2p_populate_mac_header( struct wlan_objmgr_psoc *psoc; void *mac_addr; uint16_t seq_num; + uint8_t pdev_id; psoc = tx_ctx->p2p_soc_obj->soc; wh = (struct wlan_frame_hdr *)tx_ctx->buf; mac_addr = wh->i_addr1; - peer = wlan_objmgr_get_peer(psoc, mac_addr, WLAN_P2P_ID); + pdev_id = wlan_get_pdev_id_from_vdev_id(psoc, tx_ctx->vdev_id, + WLAN_P2P_ID); + peer = wlan_objmgr_get_peer(psoc, pdev_id, mac_addr, WLAN_P2P_ID); if (!peer) { mac_addr = wh->i_addr2; - peer = wlan_objmgr_get_peer(psoc, mac_addr, - WLAN_P2P_ID); + peer = wlan_objmgr_get_peer(psoc, pdev_id, mac_addr, + WLAN_P2P_ID); } if (!peer) { @@ -877,6 +880,7 @@ static QDF_STATUS p2p_mgmt_tx(struct tx_action_context *tx_ctx, struct wmi_mgmt_params mgmt_param = { 0 }; struct wlan_objmgr_psoc *psoc; void *mac_addr; + uint8_t pdev_id; psoc = tx_ctx->p2p_soc_obj->soc; mgmt_param.tx_frame = packet; @@ -893,11 +897,13 @@ static QDF_STATUS p2p_mgmt_tx(struct tx_action_context *tx_ctx, wh = (struct wlan_frame_hdr *)frame; mac_addr = wh->i_addr1; - peer = wlan_objmgr_get_peer(psoc, mac_addr, WLAN_P2P_ID); + pdev_id = wlan_get_pdev_id_from_vdev_id(psoc, tx_ctx->vdev_id, + WLAN_P2P_ID); + peer = wlan_objmgr_get_peer(psoc, pdev_id, mac_addr, WLAN_P2P_ID); if (!peer) { mac_addr = wh->i_addr2; - peer = wlan_objmgr_get_peer(psoc, mac_addr, - WLAN_P2P_ID); + peer = wlan_objmgr_get_peer(psoc, pdev_id, mac_addr, + WLAN_P2P_ID); } if (!peer) {