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:
Ripan Deuri
2022-11-16 22:45:38 +05:30
revīziju iesūtīja Madan Koyyalamudi
vecāks 075b483358
revīzija 85e7faff70
3 mainīti faili ar 62 papildinājumiem un 27 dzēšanām

Parādīt failu

@@ -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,

Parādīt failu

@@ -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)

Parādīt failu

@@ -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_ */