/linux-4.4.14/mm/ |
D | cma_debug.c | 37 struct cma *cma = data; in cma_used_get() local 40 mutex_lock(&cma->lock); in cma_used_get() 42 used = bitmap_weight(cma->bitmap, (int)cma_bitmap_maxno(cma)); in cma_used_get() 43 mutex_unlock(&cma->lock); in cma_used_get() 44 *val = (u64)used << cma->order_per_bit; in cma_used_get() 52 struct cma *cma = data; in cma_maxchunk_get() local 55 unsigned long bitmap_maxno = cma_bitmap_maxno(cma); in cma_maxchunk_get() 57 mutex_lock(&cma->lock); in cma_maxchunk_get() 59 start = find_next_zero_bit(cma->bitmap, bitmap_maxno, end); in cma_maxchunk_get() 60 if (start >= cma->count) in cma_maxchunk_get() [all …]
|
D | cma.c | 42 struct cma cma_areas[MAX_CMA_AREAS]; 46 phys_addr_t cma_get_base(const struct cma *cma) in cma_get_base() argument 48 return PFN_PHYS(cma->base_pfn); in cma_get_base() 51 unsigned long cma_get_size(const struct cma *cma) in cma_get_size() argument 53 return cma->count << PAGE_SHIFT; in cma_get_size() 56 static unsigned long cma_bitmap_aligned_mask(const struct cma *cma, in cma_bitmap_aligned_mask() argument 59 if (align_order <= cma->order_per_bit) in cma_bitmap_aligned_mask() 61 return (1UL << (align_order - cma->order_per_bit)) - 1; in cma_bitmap_aligned_mask() 68 static unsigned long cma_bitmap_aligned_offset(const struct cma *cma, in cma_bitmap_aligned_offset() argument 71 if (align_order <= cma->order_per_bit) in cma_bitmap_aligned_offset() [all …]
|
D | cma.h | 4 struct cma { struct 16 extern struct cma cma_areas[MAX_CMA_AREAS]; argument 19 static inline unsigned long cma_bitmap_maxno(struct cma *cma) in cma_bitmap_maxno() argument 21 return cma->count >> cma->order_per_bit; in cma_bitmap_maxno()
|
D | Makefile | 77 obj-$(CONFIG_CMA) += cma.o
|
/linux-4.4.14/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 | 16 struct cma; 19 extern phys_addr_t cma_get_base(const struct cma *cma); 20 extern unsigned long cma_get_size(const struct cma *cma); 25 bool fixed, struct cma **res_cma); 28 struct cma **res_cma); 29 extern struct page *cma_alloc(struct cma *cma, size_t count, unsigned int align); 30 extern bool cma_release(struct cma *cma, const struct page *pages, unsigned int count);
|
D | device.h | 815 struct cma *cma_area; /* contiguous memory area for dma
|
/linux-4.4.14/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-4.4.14/drivers/base/ |
D | dma-contiguous.c | 37 struct cma *dma_contiguous_default_area; 163 phys_addr_t limit, struct cma **res_cma, in dma_contiguous_reserve_area() 248 struct cma *cma; in rmem_cma_setup() local 260 err = cma_init_reserved_mem(rmem->base, rmem->size, 0, &cma); in rmem_cma_setup() 269 dma_contiguous_set_default(cma); in rmem_cma_setup() 272 rmem->priv = cma; in rmem_cma_setup() 279 RESERVEDMEM_OF_DECLARE(cma, "shared-dma-pool", rmem_cma_setup);
|
D | Kconfig | 258 You can disable CMA by specifying "cma=0" on the kernel's command 275 default, but it can be enabled by passing cma=size[MG] to the kernel. 287 enabled by passing cma=size[MG] to the kernel.
|
/linux-4.4.14/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-4.4.14/drivers/staging/android/ |
D | TODO | 23 - Add dt-binding to expose cma regions as ion heaps, with the rule that any 24 such cma regions must already be used by some device for dma. I.e. ion only 25 exposes existing cma regions and doesn't reserve unecessarily memory when
|
/linux-4.4.14/Documentation/devicetree/bindings/reserved-memory/ |
D | reserved-memory.txt | 68 - If a "linux,cma-default" property is present, then Linux will use the 81 one default of all device drivers (named linux,cma@72000000 and 64MiB in size), 99 linux,cma { 104 linux,cma-default;
|
/linux-4.4.14/drivers/gpu/drm/nouveau/include/nvkm/subdev/ |
D | pci.h | 17 bool cma; member
|
/linux-4.4.14/Documentation/DocBook/ |
D | gpu.xml.db | 75 API-drm-gem-cma-create 76 API-drm-gem-cma-free-object 77 API-drm-gem-cma-dumb-create-internal 78 API-drm-gem-cma-dumb-create 79 API-drm-gem-cma-dumb-map-offset 80 API-drm-gem-cma-mmap 81 API-drm-gem-cma-describe 82 API-drm-gem-cma-prime-get-sg-table 83 API-drm-gem-cma-prime-import-sg-table 84 API-drm-gem-cma-prime-mmap [all …]
|
/linux-4.4.14/include/trace/events/ |
D | cma.h | 2 #define TRACE_SYSTEM cma
|
/linux-4.4.14/drivers/infiniband/core/ |
D | Makefile | 25 rdma_cm-y := cma.o
|
/linux-4.4.14/arch/arm/mach-shmobile/ |
D | setup-rcar-gen2.c | 185 struct cma *rcar_gen2_dma_contiguous;
|
/linux-4.4.14/drivers/gpu/drm/nouveau/ |
D | nouveau_drm.h | 119 bool cma; member
|
D | nouveau_ttm.c | 351 drm->agp.cma = pci->agp.cma; in nouveau_ttm_init()
|
D | nouveau_bo.c | 1373 mem->bus.is_iomem = !drm->agp.cma; in nouveau_ttm_io_mem_reserve()
|
/linux-4.4.14/drivers/gpu/drm/nouveau/nvkm/subdev/pci/ |
D | agp.c | 135 pci->agp.cma = info.cant_use_aperture; in nvkm_agp_ctor()
|
/linux-4.4.14/arch/powerpc/kvm/ |
D | book3s_hv_builtin.c | 41 static struct cma *kvm_cma;
|
/linux-4.4.14/Documentation/arm/OMAP/ |
D | DSS | 290 allocator, and if CMA is enabled, you use "cma=" kernel parameter to increase
|
/linux-4.4.14/Documentation/ |
D | kernel-parameters.txt | 666 cma=nn[MG]@[start[MG][-end[MG]]]
|