Lines Matching refs:cma
56 struct cma *dma_contiguous_default_area;
106 static struct cma *dma_contiguous_numa_area[MAX_NUMNODES];
108 static struct cma *dma_contiguous_pernuma_area[MAX_NUMNODES];
176 struct cma **cma; in dma_numa_cma_reserve() local
186 cma = &dma_contiguous_pernuma_area[nid]; in dma_numa_cma_reserve()
189 0, false, name, cma, nid); in dma_numa_cma_reserve()
197 cma = &dma_contiguous_numa_area[nid]; in dma_numa_cma_reserve()
200 name, cma, nid); in dma_numa_cma_reserve()
296 phys_addr_t limit, struct cma **res_cma, in dma_contiguous_reserve_area()
350 static struct page *cma_alloc_aligned(struct cma *cma, size_t size, gfp_t gfp) in cma_alloc_aligned() argument
354 return cma_alloc(cma, size >> PAGE_SHIFT, align, gfp & __GFP_NOWARN); in cma_alloc_aligned()
388 struct cma *cma = dma_contiguous_pernuma_area[nid]; in dma_alloc_contiguous() local
391 if (cma) { in dma_alloc_contiguous()
392 page = cma_alloc_aligned(cma, size, gfp); in dma_alloc_contiguous()
397 cma = dma_contiguous_numa_area[nid]; in dma_alloc_contiguous()
398 if (cma) { in dma_alloc_contiguous()
399 page = cma_alloc_aligned(cma, size, gfp); in dma_alloc_contiguous()
482 struct cma *cma; in rmem_cma_setup() local
494 err = cma_init_reserved_mem(rmem->base, rmem->size, 0, rmem->name, &cma); in rmem_cma_setup()
501 dma_contiguous_default_area = cma; in rmem_cma_setup()
504 rmem->priv = cma; in rmem_cma_setup()
509 err = dma_heap_cma_register_heap(cma); in rmem_cma_setup()
515 RESERVEDMEM_OF_DECLARE(cma, "shared-dma-pool", rmem_cma_setup);