/linux/mm/ |
A D | cma.c | 41 phys_addr_t cma_get_base(const struct cma *cma) in cma_get_base() argument 46 unsigned long cma_get_size(const struct cma *cma) in cma_get_size() argument 51 const char *cma_get_name(const struct cma *cma) in cma_get_name() argument 87 bitmap_no = (pfn - cma->base_pfn) >> cma->order_per_bit; in cma_clear_bitmap() 95 static void __init cma_activate_area(struct cma *cma) in cma_activate_area() argument 170 struct cma *cma; in cma_init_reserved_mem() local 388 static void cma_debug_show_areas(struct cma *cma) in cma_debug_show_areas() argument 437 if (!cma || !cma->count || !cma->bitmap) in cma_alloc() 520 if (cma) in cma_alloc() 537 if (pfn < cma->base_pfn || pfn >= cma->base_pfn + cma->count) { in cma_pages_valid() [all …]
|
A D | cma_debug.c | 36 struct cma *cma = data; in cma_used_get() local 41 used = bitmap_weight(cma->bitmap, (int)cma_bitmap_maxno(cma)); in cma_used_get() 51 struct cma *cma = data; in cma_maxchunk_get() local 71 static void cma_add_to_cma_mem_list(struct cma *cma, struct cma_mem *mem) in cma_add_to_cma_mem_list() argument 78 static struct cma_mem *cma_get_entry_from_list(struct cma *cma) in cma_get_entry_from_list() argument 92 static int cma_free_mem(struct cma *cma, int count) in cma_free_mem() argument 125 struct cma *cma = data; in cma_free_write() local 131 static int cma_alloc_mem(struct cma *cma, int count) in cma_alloc_mem() argument 157 struct cma *cma = data; in cma_alloc_write() local 182 cma->dfs_bitmap.array = (u32 *)cma->bitmap; in cma_debugfs_add_one() [all …]
|
A D | cma_sysfs.c | 17 void cma_sysfs_account_success_pages(struct cma *cma, unsigned long nr_pages) in cma_sysfs_account_success_pages() argument 22 void cma_sysfs_account_fail_pages(struct cma *cma, unsigned long nr_pages) in cma_sysfs_account_fail_pages() argument 35 struct cma *cma = cma_from_kobj(kobj); in alloc_pages_success_show() local 45 struct cma *cma = cma_from_kobj(kobj); in alloc_pages_fail_show() local 53 struct cma *cma = cma_from_kobj(kobj); in cma_kobj_release() local 57 cma->cma_kobj = NULL; in cma_kobj_release() 65 ATTRIBUTE_GROUPS(cma); 77 struct cma *cma; in cma_sysfs_init() local 91 cma = &cma_areas[i]; in cma_sysfs_init() 93 cma_kobj->cma = cma; in cma_sysfs_init() [all …]
|
A D | cma.h | 10 struct cma *cma; member 13 struct cma { struct 35 extern struct cma cma_areas[MAX_CMA_AREAS]; argument 38 static inline unsigned long cma_bitmap_maxno(struct cma *cma) in cma_bitmap_maxno() argument 40 return cma->count >> cma->order_per_bit; in cma_bitmap_maxno() 44 void cma_sysfs_account_success_pages(struct cma *cma, unsigned long nr_pages); 45 void cma_sysfs_account_fail_pages(struct cma *cma, unsigned long nr_pages); 47 static inline void cma_sysfs_account_success_pages(struct cma *cma, in cma_sysfs_account_success_pages() argument 49 static inline void cma_sysfs_account_fail_pages(struct cma *cma, in cma_sysfs_account_fail_pages() argument
|
A D | .cma.o.cmd | 1 …cma.o := /usr/bin/ccache /home/test/workspace/code/optee_3.16/build/../toolchains/aarch64/bin/aarc… 3 source_mm/cma.o := mm/cma.c 5 deps_mm/cma.o := \ 918 include/linux/cma.h \ 1096 include/trace/events/cma.h \ 1147 mm/cma.h \ 1155 mm/cma.o: $(deps_mm/cma.o) 1157 $(deps_mm/cma.o):
|
A D | built-in.a | 73 cma.o/
|
/linux/include/linux/ |
A D | cma.h | 23 struct cma; 26 extern phys_addr_t cma_get_base(const struct cma *cma); 27 extern unsigned long cma_get_size(const struct cma *cma); 28 extern const char *cma_get_name(const struct cma *cma); 33 bool fixed, const char *name, struct cma **res_cma, 38 bool fixed, const char *name, struct cma **res_cma) in cma_declare_contiguous() 46 struct cma **res_cma); 47 extern struct page *cma_alloc(struct cma *cma, unsigned long count, unsigned int align, 49 extern bool cma_pages_valid(struct cma *cma, const struct page *pages, unsigned long count); 50 extern bool cma_release(struct cma *cma, const struct page *pages, unsigned long count); [all …]
|
A D | dma-map-ops.h | 12 struct cma; 102 extern struct cma *dma_contiguous_default_area; 104 static inline struct cma *dev_get_cma_area(struct device *dev) in dev_get_cma_area() 113 phys_addr_t limit, struct cma **res_cma, bool fixed); 124 static inline struct cma *dev_get_cma_area(struct device *dev) in dev_get_cma_area() 132 phys_addr_t base, phys_addr_t limit, struct cma **res_cma, in dma_contiguous_reserve_area()
|
/linux/kernel/dma/ |
A D | contiguous.c | 60 struct cma *dma_contiguous_default_area; 141 struct cma **cma = &dma_contiguous_pernuma_area[nid]; in dma_pernuma_cma_reserve() local 145 0, false, name, cma, nid); in dma_pernuma_cma_reserve() 228 phys_addr_t limit, struct cma **res_cma, in dma_contiguous_reserve_area() 282 static struct page *cma_alloc_aligned(struct cma *cma, size_t size, gfp_t gfp) in cma_alloc_aligned() argument 320 struct cma *cma = dma_contiguous_pernuma_area[nid]; in dma_alloc_contiguous() local 323 if (cma) { in dma_alloc_contiguous() 324 page = cma_alloc_aligned(cma, size, gfp); in dma_alloc_contiguous() 406 struct cma *cma; in rmem_cma_setup() local 433 dma_contiguous_default_area = cma; in rmem_cma_setup() [all …]
|
A D | pool.c | 60 struct cma *cma; in cma_in_zone() local 62 cma = dev_get_cma_area(NULL); in cma_in_zone() 63 if (!cma) in cma_in_zone() 66 size = cma_get_size(cma); in cma_in_zone() 71 end = cma_get_base(cma) + size - 1; in cma_in_zone()
|
A D | Kconfig | 131 You can disable CMA by specifying "cma=0" on the kernel's command 159 default, but it can be enabled by passing cma=size[MG] to the kernel. 171 enabled by passing cma=size[MG] to the kernel.
|
/linux/Documentation/ABI/testing/ |
A D | sysfs-kernel-mm-cma | 1 What: /sys/kernel/mm/cma/ 5 /sys/kernel/mm/cma/ contains a subdirectory for each CMA 9 /sys/kernel/mm/cma/<cma-heap-name> directory) contains the 15 What: /sys/kernel/mm/cma/<cma-heap-name>/alloc_pages_success 21 What: /sys/kernel/mm/cma/<cma-heap-name>/alloc_pages_fail
|
/linux/Documentation/admin-guide/mm/ |
A D | cma_debugfs.rst | 8 Each CMA zone represents a directory under <debugfs>/cma/, indexed by the 11 <debugfs>/cma/cma-0 21 echo 5 > <debugfs>/cma/cma-2/alloc 23 would try to allocate 5 pages from the cma-2 area.
|
/linux/drivers/dma-buf/heaps/ |
A D | cma_heap.c | 28 struct cma *cma; member 257 cma_release(cma_heap->cma, buffer->cma_pages, buffer->pagecount); in cma_heap_dma_buf_release() 301 cma_pages = cma_alloc(cma_heap->cma, pagecount, align, false); in cma_heap_allocate() 357 cma_release(cma_heap->cma, cma_pages, pagecount); in cma_heap_allocate() 368 static int __add_cma_heap(struct cma *cma, void *data) in __add_cma_heap() argument 376 cma_heap->cma = cma; in __add_cma_heap() 378 exp_info.name = cma_get_name(cma); in __add_cma_heap() 395 struct cma *default_cma = dev_get_cma_area(NULL); in add_default_cma_heap()
|
/linux/arch/s390/mm/ |
A D | init.c | 241 static int s390_cma_check_range(struct cma *cma, void *data) in s390_cma_check_range() argument 247 start = cma_get_base(cma); in s390_cma_check_range() 248 end = start + cma_get_size(cma); in s390_cma_check_range()
|
/linux/arch/xtensa/boot/dts/ |
A D | kc705.dts | 22 linux,cma { 28 linux,cma-default;
|
/linux/Documentation/devicetree/bindings/reserved-memory/ |
A D | shared-dma-pool.yaml | 47 linux,cma-default: 69 linux,cma { 74 linux,cma-default;
|
/linux/arch/arm64/boot/dts/amlogic/ |
A D | meson-a1.dtsi | 52 linux,cma { 57 linux,cma-default;
|
/linux/arch/arm/boot/dts/ |
A D | imx6ul-ccimx6ulsom.dtsi | 20 linux,cma { 24 linux,cma-default;
|
A D | bcm283x.dtsi | 38 cma: linux,cma { label 42 linux,cma-default;
|
/linux/arch/arm/mach-davinci/ |
A D | devices-da8xx.c | 887 struct cma *cma; in da8xx_rproc_reserve_cma() local 901 ret = dma_contiguous_reserve_area(rproc_size, rproc_base, 0, &cma, in da8xx_rproc_reserve_cma() 908 da8xx_dsp.dev.cma_area = cma; in da8xx_rproc_reserve_cma()
|
/linux/drivers/gpu/drm/nouveau/include/nvkm/subdev/ |
A D | pci.h | 24 bool cma; member
|
/linux/drivers/infiniband/core/ |
A D | Makefile | 25 rdma_cm-y := cma.o cma_trace.o
|
/linux/drivers/gpu/drm/nouveau/ |
A D | nouveau_ttm.c | 275 drm->agp.cma = pci->agp.cma; in nouveau_ttm_init()
|
/linux/include/trace/events/ |
A D | cma.h | 3 #define TRACE_SYSTEM cma
|