qcacmn: Rx path changes for multichip MLO

Rx patch changes for multichip MLO

1. Create ini for rx ring mask for each chip
2. Configure hash based routing for each chip based
   on lmac_peer_id_msb
3. Peer setup changes to configure lmac_peer_id_msb
   to enable hash based routing
4. Rx Replenish changes to provide buffers back to owner
   SOC of reo ring

Change-Id: Ibbe6e81f9e62d88d9bb289a082dd14b4362252c4
This commit is contained in:
Chaithanya Garrepalli
2021-11-23 15:34:30 +05:30
کامیت شده توسط Madan Koyyalamudi
والد bbe062b4b7
کامیت c42af1f62f
23فایلهای تغییر یافته به همراه658 افزوده شده و 57 حذف شده

مشاهده پرونده

@@ -289,3 +289,26 @@ dp_link_peer_hash_find_by_chip_id(struct dp_soc *soc,
}
qdf_export_symbol(dp_link_peer_hash_find_by_chip_id);
struct dp_soc *
dp_rx_replensih_soc_get(struct dp_soc *soc, uint8_t reo_ring_num)
{
struct dp_soc_be *be_soc = dp_get_be_soc_from_dp_soc(soc);
struct dp_mlo_ctxt *mlo_ctxt = be_soc->ml_ctxt;
uint8_t chip_id;
uint8_t rx_ring_mask;
if (!be_soc->mlo_enabled || !mlo_ctxt)
return soc;
for (chip_id = 0; chip_id < WLAN_MAX_MLO_CHIPS; chip_id++) {
rx_ring_mask =
wlan_cfg_mlo_rx_ring_map_get_by_chip_id
(soc->wlan_cfg_ctx, chip_id);
if (rx_ring_mask & (1 << reo_ring_num))
return dp_mlo_get_soc_ref_by_chip_id(mlo_ctxt, chip_id);
}
return soc;
}

مشاهده پرونده

@@ -20,7 +20,7 @@
#include <dp_peer.h>
/* Max number of chips that can participate in MLO */
#define DP_MAX_MLO_CHIPS 3
#define DP_MAX_MLO_CHIPS WLAN_MAX_MLO_CHIPS
/* Max number of peers supported */
#define DP_MAX_MLO_PEER 512