qcacmn: Change buffer replenishment model for SDX+Pine
For IPQ products, there is 1 refill ring which is of hardware type and host replenishes the buffers onto this ring so that hardware can use these buffers for Rx. In IPA offload mode, the buffer replenishment model is different from the one mentioned above. There are 3 refill rings, out of which, 2 are software refill rings (1 for host and 1 for IPA), and last ring is hardware ring given to FW. Ring given to IPA is to refill the buffers after processing the regular Rx packets and ring given to host is to refill the buffers after processing of exception packets. Since there are 2 entities to refill the buffers, the hardware ring given to FW multiplexes these 2 software rings and provides the buffers to hardware. Make changes to follow above replenishment model for SDX+Pine integration. Change-Id: I0d9e4ec811a3023a258e0a6b9ee22ccdffcebafa CRs-Fixed: 3049633
Esse commit está contido em:

commit de
Madan Koyyalamudi

pai
30c0b8b4cd
commit
30482aa5c4
@@ -157,6 +157,7 @@ dp_rxdma_ring_sel_cfg_li(struct dp_soc *soc)
|
||||
int i;
|
||||
int mac_id;
|
||||
struct htt_rx_ring_tlv_filter htt_tlv_filter = {0};
|
||||
struct dp_srng *rx_mac_srng;
|
||||
QDF_STATUS status = QDF_STATUS_SUCCESS;
|
||||
|
||||
htt_tlv_filter.mpdu_start = 1;
|
||||
@@ -220,9 +221,9 @@ dp_rxdma_ring_sel_cfg_li(struct dp_soc *soc)
|
||||
dp_get_lmac_id_for_pdev_id(soc, mac_id,
|
||||
pdev->pdev_id);
|
||||
|
||||
rx_mac_srng = dp_get_rxdma_ring(pdev, lmac_id);
|
||||
htt_h2t_rx_ring_cfg(soc->htt_handle, mac_for_pdev,
|
||||
soc->rx_refill_buf_ring[lmac_id].
|
||||
hal_srng,
|
||||
rx_mac_srng->hal_srng,
|
||||
RXDMA_BUF, RX_DATA_BUFFER_SIZE,
|
||||
&htt_tlv_filter);
|
||||
}
|
||||
|
Referência em uma nova issue
Block a user