qcacmn: Add function to check WDS ext peer
Add function to check WDS ext peer. Change-Id: Ic29cb04fc2830240854921fe3eeadd03e8171979 CRs-Fixed: 3340244
Šī revīzija ir iekļauta:

revīziju iesūtīja
Madan Koyyalamudi

vecāks
075b483358
revīzija
85e7faff70
@@ -2127,17 +2127,6 @@ QDF_STATUS dp_register_peer(struct cdp_soc_t *soc_hdl, uint8_t pdev_id,
|
||||
QDF_STATUS dp_clear_peer(struct cdp_soc_t *soc_hdl, uint8_t pdev_id,
|
||||
struct qdf_mac_addr peer_addr);
|
||||
|
||||
/*
|
||||
* dp_find_peer_exist - find peer if already exists
|
||||
* @soc: datapath soc handle
|
||||
* @pdev_id: physical device instance id
|
||||
* @peer_mac_addr: peer mac address
|
||||
*
|
||||
* Return: true or false
|
||||
*/
|
||||
bool dp_find_peer_exist(struct cdp_soc_t *soc_hdl, uint8_t pdev_id,
|
||||
uint8_t *peer_addr);
|
||||
|
||||
/*
|
||||
* dp_find_peer_exist_on_vdev - find if peer exists on the given vdev
|
||||
* @soc: datapath soc handle
|
||||
@@ -2258,6 +2247,17 @@ void dp_set_peer_as_tdls_peer(struct cdp_soc_t *soc_hdl, uint8_t vdev_id,
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* dp_find_peer_exist - find peer if already exists
|
||||
* @soc: datapath soc handle
|
||||
* @pdev_id: physical device instance id
|
||||
* @peer_mac_addr: peer mac address
|
||||
*
|
||||
* Return: true or false
|
||||
*/
|
||||
bool dp_find_peer_exist(struct cdp_soc_t *soc_hdl, uint8_t pdev_id,
|
||||
uint8_t *peer_addr);
|
||||
|
||||
int dp_addba_resp_tx_completion_wifi3(struct cdp_soc_t *cdp_soc,
|
||||
uint8_t *peer_mac, uint16_t vdev_id,
|
||||
uint8_t tid,
|
||||
|
@@ -222,6 +222,32 @@ void dp_soc_wds_detach(struct dp_soc *soc)
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef QCA_SUPPORT_WDS_EXTENDED
|
||||
bool dp_peer_check_wds_ext_peer(struct dp_peer *peer)
|
||||
{
|
||||
struct dp_vdev *vdev = peer->vdev;
|
||||
struct dp_txrx_peer *txrx_peer;
|
||||
|
||||
if (!vdev->wds_ext_enabled)
|
||||
return false;
|
||||
|
||||
txrx_peer = dp_get_txrx_peer(peer);
|
||||
if (!txrx_peer)
|
||||
return false;
|
||||
|
||||
if (qdf_atomic_test_bit(WDS_EXT_PEER_INIT_BIT,
|
||||
&txrx_peer->wds_ext.init))
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
#else
|
||||
bool dp_peer_check_wds_ext_peer(struct dp_peer *peer)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef REO_QDESC_HISTORY
|
||||
static inline void
|
||||
dp_rx_reo_qdesc_history_add(struct reo_desc_list_node *free_desc,
|
||||
@@ -5792,22 +5818,6 @@ bool dp_find_peer_exist_on_other_vdev(struct cdp_soc_t *soc_hdl,
|
||||
return false;
|
||||
}
|
||||
|
||||
bool dp_find_peer_exist(struct cdp_soc_t *soc_hdl, uint8_t pdev_id,
|
||||
uint8_t *peer_addr)
|
||||
{
|
||||
struct dp_soc *soc = cdp_soc_t_to_dp_soc(soc_hdl);
|
||||
struct dp_peer *peer = NULL;
|
||||
|
||||
peer = dp_peer_find_hash_find(soc, peer_addr, 0, DP_VDEV_ALL,
|
||||
DP_MOD_ID_CDP);
|
||||
if (peer) {
|
||||
dp_peer_unref_delete(peer, DP_MOD_ID_CDP);
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
void dp_set_peer_as_tdls_peer(struct cdp_soc_t *soc_hdl, uint8_t vdev_id,
|
||||
uint8_t *peer_mac, bool val)
|
||||
{
|
||||
@@ -5830,6 +5840,22 @@ void dp_set_peer_as_tdls_peer(struct cdp_soc_t *soc_hdl, uint8_t vdev_id,
|
||||
}
|
||||
#endif
|
||||
|
||||
bool dp_find_peer_exist(struct cdp_soc_t *soc_hdl, uint8_t pdev_id,
|
||||
uint8_t *peer_addr)
|
||||
{
|
||||
struct dp_soc *soc = cdp_soc_t_to_dp_soc(soc_hdl);
|
||||
struct dp_peer *peer = NULL;
|
||||
|
||||
peer = dp_peer_find_hash_find(soc, peer_addr, 0, DP_VDEV_ALL,
|
||||
DP_MOD_ID_CDP);
|
||||
if (peer) {
|
||||
dp_peer_unref_delete(peer, DP_MOD_ID_CDP);
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
#ifdef IPA_OFFLOAD
|
||||
int dp_peer_get_rxtid_stats_ipa(struct dp_peer *peer,
|
||||
dp_rxtid_stats_cmd_cb dp_stats_cmd_cb)
|
||||
|
@@ -2083,4 +2083,13 @@ void dp_peer_rx_reo_shared_qaddr_delete(struct dp_soc *soc,
|
||||
static inline void dp_peer_rx_reo_shared_qaddr_delete(struct dp_soc *soc,
|
||||
struct dp_peer *peer) {}
|
||||
#endif
|
||||
|
||||
/**
|
||||
* dp_peer_check_wds_ext_peer() - Check WDS ext peer
|
||||
*
|
||||
* @peer: DP peer
|
||||
*
|
||||
* Return: True for WDS ext peer, false otherwise
|
||||
*/
|
||||
bool dp_peer_check_wds_ext_peer(struct dp_peer *peer);
|
||||
#endif /* _DP_PEER_H_ */
|
||||
|
Atsaukties uz šo jaunā problēmā
Block a user