/Linux-v4.19/mm/ |
D | cma.c | 43 struct cma cma_areas[MAX_CMA_AREAS]; 47 phys_addr_t cma_get_base(const struct cma *cma) in cma_get_base() argument 49 return PFN_PHYS(cma->base_pfn); in cma_get_base() 52 unsigned long cma_get_size(const struct cma *cma) in cma_get_size() argument 54 return cma->count << PAGE_SHIFT; in cma_get_size() 57 const char *cma_get_name(const struct cma *cma) in cma_get_name() argument 59 return cma->name ? cma->name : "(undefined)"; in cma_get_name() 62 static unsigned long cma_bitmap_aligned_mask(const struct cma *cma, in cma_bitmap_aligned_mask() argument 65 if (align_order <= cma->order_per_bit) in cma_bitmap_aligned_mask() 67 return (1UL << (align_order - cma->order_per_bit)) - 1; in cma_bitmap_aligned_mask() [all …]
|
D | cma_debug.c | 38 struct cma *cma = data; in cma_used_get() local 41 mutex_lock(&cma->lock); in cma_used_get() 43 used = bitmap_weight(cma->bitmap, (int)cma_bitmap_maxno(cma)); in cma_used_get() 44 mutex_unlock(&cma->lock); in cma_used_get() 45 *val = (u64)used << cma->order_per_bit; in cma_used_get() 53 struct cma *cma = data; in cma_maxchunk_get() local 56 unsigned long bitmap_maxno = cma_bitmap_maxno(cma); in cma_maxchunk_get() 58 mutex_lock(&cma->lock); in cma_maxchunk_get() 60 start = find_next_zero_bit(cma->bitmap, bitmap_maxno, end); in cma_maxchunk_get() 61 if (start >= cma->count) in cma_maxchunk_get() [all …]
|
D | cma.h | 5 struct cma { struct 18 extern struct cma cma_areas[MAX_CMA_AREAS]; argument 21 static inline unsigned long cma_bitmap_maxno(struct cma *cma) in cma_bitmap_maxno() argument 23 return cma->count >> cma->order_per_bit; in cma_bitmap_maxno()
|
D | Makefile | 96 obj-$(CONFIG_CMA) += cma.o
|
/Linux-v4.19/include/linux/ |
D | dma-contiguous.h | 58 struct cma; 63 extern struct cma *dma_contiguous_default_area; 65 static inline struct cma *dev_get_cma_area(struct device *dev) in dev_get_cma_area() 72 static inline void dev_set_cma_area(struct device *dev, struct cma *cma) in dev_set_cma_area() argument 75 dev->cma_area = cma; in dev_set_cma_area() 78 static inline void dma_contiguous_set_default(struct cma *cma) in dma_contiguous_set_default() argument 80 dma_contiguous_default_area = cma; in dma_contiguous_set_default() 86 phys_addr_t limit, struct cma **res_cma, 105 struct cma *cma; in dma_declare_contiguous() local 107 ret = dma_contiguous_reserve_area(size, base, limit, &cma, true); in dma_declare_contiguous() [all …]
|
D | cma.h | 20 struct cma; 23 extern phys_addr_t cma_get_base(const struct cma *cma); 24 extern unsigned long cma_get_size(const struct cma *cma); 25 extern const char *cma_get_name(const struct cma *cma); 30 bool fixed, const char *name, struct cma **res_cma); 34 struct cma **res_cma); 35 extern struct page *cma_alloc(struct cma *cma, size_t count, unsigned int align, 37 extern bool cma_release(struct cma *cma, const struct page *pages, unsigned int count); 39 extern int cma_for_each_area(int (*it)(struct cma *cma, void *data), void *data);
|
/Linux-v4.19/drivers/staging/android/ion/ |
D | ion_cma_heap.c | 21 struct cma *cma; member 42 pages = cma_alloc(cma_heap->cma, nr_pages, align, false); in ion_cma_allocate() 79 cma_release(cma_heap->cma, pages, nr_pages); in ion_cma_allocate() 90 cma_release(cma_heap->cma, pages, nr_pages); in ion_cma_free() 104 static struct ion_heap *__ion_cma_heap_create(struct cma *cma) in __ion_cma_heap_create() argument 118 cma_heap->cma = cma; in __ion_cma_heap_create() 123 static int __ion_add_cma_heaps(struct cma *cma, void *data) in __ion_add_cma_heaps() argument 127 heap = __ion_cma_heap_create(cma); in __ion_add_cma_heaps() 131 heap->name = cma_get_name(cma); in __ion_add_cma_heaps()
|
/Linux-v4.19/Documentation/cma/ |
D | debugfs.txt | 4 Each CMA zone represents a directory under <debugfs>/cma/, indexed by the 7 <debugfs>/cma/cma-0 17 echo 5 > <debugfs>/cma/cma-2/alloc 19 would try to allocate 5 pages from the cma-2 area.
|
/Linux-v4.19/kernel/dma/ |
D | contiguous.c | 33 struct cma *dma_contiguous_default_area; 159 phys_addr_t limit, struct cma **res_cma, in dma_contiguous_reserve_area() 246 struct cma *cma; in rmem_cma_setup() local 258 err = cma_init_reserved_mem(rmem->base, rmem->size, 0, rmem->name, &cma); in rmem_cma_setup() 267 dma_contiguous_set_default(cma); in rmem_cma_setup() 270 rmem->priv = cma; in rmem_cma_setup() 277 RESERVEDMEM_OF_DECLARE(cma, "shared-dma-pool", rmem_cma_setup);
|
/Linux-v4.19/drivers/isdn/hardware/eicon/ |
D | di.c | 570 byte *cma = NULL; in isdn_ind() local 609 (int)a->rx_stream[this->Id], (void **)&cma, &d); in isdn_ind() 611 cma = &a->stream_buffer[0]; in isdn_ind() 612 cma[0] = cma[1] = cma[2] = cma[3] = 0; in isdn_ind() 614 this->RLength = MLength = (word)*(dword *)cma; in isdn_ind() 615 cma += 4; in isdn_ind() 618 cma = &a->stream_buffer[0]; in isdn_ind() 621 cma, in isdn_ind() 631 memcpy(IoAdapter->RBuffer.P, cma, IoAdapter->RBuffer.length); in isdn_ind() 635 if (!cma) { in isdn_ind() [all …]
|
/Linux-v4.19/arch/s390/mm/ |
D | init.c | 183 static int s390_cma_check_range(struct cma *cma, void *data) in s390_cma_check_range() argument 189 start = cma_get_base(cma); in s390_cma_check_range() 190 end = start + cma_get_size(cma); in s390_cma_check_range()
|
/Linux-v4.19/arch/xtensa/boot/dts/ |
D | kc705.dts | 22 linux,cma { 28 linux,cma-default;
|
/Linux-v4.19/Documentation/devicetree/bindings/reserved-memory/ |
D | reserved-memory.txt | 68 - If a "linux,cma-default" property is present, then Linux will use the 84 one default of all device drivers (named linux,cma@72000000 and 64MiB in size), 102 linux,cma { 107 linux,cma-default;
|
/Linux-v4.19/arch/arm/boot/dts/ |
D | imx6ul-ccimx6ulsom.dtsi | 15 linux,cma { 19 linux,cma-default;
|
/Linux-v4.19/include/trace/events/ |
D | cma.h | 3 #define TRACE_SYSTEM cma
|
/Linux-v4.19/drivers/gpu/drm/nouveau/include/nvkm/subdev/ |
D | pci.h | 24 bool cma; member
|
/Linux-v4.19/drivers/infiniband/core/ |
D | Makefile | 26 rdma_cm-y := cma.o
|
/Linux-v4.19/drivers/gpu/drm/nouveau/ |
D | nouveau_ttm.c | 296 drm->agp.cma = pci->agp.cma; in nouveau_ttm_init()
|
D | nouveau_drv.h | 144 bool cma; member
|
/Linux-v4.19/arch/arm/mach-shmobile/ |
D | setup-rcar-gen2.c | 170 static struct cma *rcar_gen2_dma_contiguous; in rcar_gen2_reserve()
|
/Linux-v4.19/drivers/gpu/drm/nouveau/nvkm/subdev/pci/ |
D | agp.c | 135 pci->agp.cma = info.cant_use_aperture; in nvkm_agp_ctor()
|
/Linux-v4.19/drivers/base/ |
D | Kconfig | 202 You can disable CMA by specifying "cma=0" on the kernel's command 219 default, but it can be enabled by passing cma=size[MG] to the kernel. 231 enabled by passing cma=size[MG] to the kernel.
|
/Linux-v4.19/drivers/s390/char/ |
D | vmcp.c | 42 static struct cma *vmcp_cma;
|
/Linux-v4.19/arch/powerpc/kvm/ |
D | book3s_64_mmu_hv.c | 84 int cma = 0; in kvmppc_allocate_hpt() local 96 cma = 1; in kvmppc_allocate_hpt() 112 if (cma) in kvmppc_allocate_hpt() 121 info->cma = cma; in kvmppc_allocate_hpt() 194 if (info->cma) in kvmppc_free_hpt()
|
/Linux-v4.19/arch/arm64/boot/dts/hisilicon/ |
D | hi6220-hikey.dts | 63 linux,cma { 67 linux,cma-default;
|