qcacmn: MCL Buffer Replenishment

Add support for replenishing the rx buffers using the host to
firmware buffer ring.

This includes adding a flag QCA_HOST2FW_RXBUF_RING:
When QCA_HOST2FW_RXBUF_RING is enabled the host will do the following:
- Allocate the refill buffer ring (HTT_HOST1_TO_FW_RXBUF_RING) and
populate it with
 rx buffers
- Send the refill buffer ring configuration to the firmware
- Allocate the rx DMA ring (HTT_RXDMA_HOST_BUF_RING), leave it empty.
- Send the rx DMA ring configuration to the firmware

When QCA_HOST2FW_RXBUF_RING is disabled, the host will do the following:
- Allocate the rx DMA ring (HTT_RXDMA_HOST_BUF_RING), and populate it with
 rx buffers
- Send the rx DMA ring configuration to the firmware

CRs-Fixed: 1074199
Change-Id: Iec05a973cd9d628c742e3aaa16b8dabc7797625d
Esse commit está contido em:
Dhanashri Atre
2016-10-12 13:08:09 -07:00
commit de qcabuildsw
commit 7351d17b41
8 arquivos alterados com 63 adições e 23 exclusões

Ver arquivo

@@ -32,7 +32,7 @@ QDF_STATUS dp_rx_desc_pool_alloc(struct dp_soc *soc, uint32_t pool_id)
{
uint32_t i;
struct dp_pdev *dp_pdev = soc->pdev_list[pool_id];
struct dp_srng *rxdma_srng = &dp_pdev->rxdma_buf_ring;
struct dp_srng *rxdma_srng = &dp_pdev->rx_refill_buf_ring;
soc->rx_desc[pool_id].array = qdf_mem_malloc(
((rxdma_srng->alloc_size/hal_srng_get_entrysize(soc->hal_soc,