qcacmn: Break up DMA mem alloc for HW desc banks in multi pages

Break up the 2MB descriptor bank memory allocations for WBM
idle link ring. Use multiple page allocation and populate the
WBM idle link descriptor ring with physical addresses of each
DMA page allocated in the descriptor bank.
This is to ensure that no requests for contiguous memory
allocations are made that might result in allocation failures.

For MCL set the page size to 4KB and leave it to max_alloc_size
cfg ini param for WIN specific code.

Change-Id: Iec30321044827c0174366cc02df25a42d38309e0
CRs-Fixed: 2565817
Šī revīzija ir iekļauta:
Nisha Menon
2019-12-05 17:36:41 -08:00
revīziju iesūtīja nshrivas
vecāks 265b3cb98d
revīzija 3e5b005e4e
8 mainīti faili ar 193 papildinājumiem un 212 dzēšanām

Parādīt failu

@@ -39,6 +39,7 @@
* Return: aligned value.
*/
#define qdf_align(a, align_size) __qdf_align(a, align_size)
#define qdf_page_size __page_size
/**
* struct qdf_mem_dma_page_t - Allocated dmaable page
@@ -64,6 +65,7 @@ struct qdf_mem_multi_page_t {
uint16_t num_pages;
struct qdf_mem_dma_page_t *dma_pages;
void **cacheable_pages;
qdf_size_t page_size;
};