Home
last modified time | relevance | path

Searched full:cma (Results 1 – 25 of 113) sorted by relevance

12345

/linux/mm/
H A Dcma_debug.c3 * CMA DebugFS Interface
10 #include <linux/cma.h>
16 #include "cma.h"
36 struct cma *cma = data; in cma_used_get() local
38 spin_lock_irq(&cma->lock); in cma_used_get()
39 *val = cma->count - cma->available_count; in cma_used_get()
40 spin_unlock_irq(&cma->lock); in cma_used_get()
48 struct cma *cma = data; in cma_maxchunk_get() local
55 spin_lock_irq(&cma->lock); in cma_maxchunk_get()
56 for (r = 0; r < cma->nranges; r++) { in cma_maxchunk_get()
[all …]
H A Dcma.c15 #define pr_fmt(fmt) "cma: " fmt
28 #include <linux/cma.h>
32 #include <trace/events/cma.h>
35 #include "cma.h"
37 struct cma cma_areas[MAX_CMA_AREAS];
40 phys_addr_t cma_get_base(const struct cma *cma) in cma_get_base() argument
42 WARN_ON_ONCE(cma->nranges != 1); in cma_get_base()
43 return PFN_PHYS(cma->ranges[0].base_pfn); in cma_get_base()
46 unsigned long cma_get_size(const struct cma *cma) in cma_get_size() argument
48 return cma->count << PAGE_SHIFT; in cma_get_size()
[all …]
H A Dcma_sysfs.c3 * CMA SysFS Interface
8 #include <linux/cma.h>
12 #include "cma.h"
17 void cma_sysfs_account_success_pages(struct cma *cma, unsigned long nr_pages) in cma_sysfs_account_success_pages() argument
19 atomic64_add(nr_pages, &cma->nr_pages_succeeded); in cma_sysfs_account_success_pages()
22 void cma_sysfs_account_fail_pages(struct cma *cma, unsigned long nr_pages) in cma_sysfs_account_fail_pages() argument
24 atomic64_add(nr_pages, &cma->nr_pages_failed); in cma_sysfs_account_fail_pages()
27 void cma_sysfs_account_release_pages(struct cma *cma, unsigned long nr_pages) in cma_sysfs_account_release_pages() argument
29 atomic64_add(nr_pages, &cma->nr_pages_released); in cma_sysfs_account_release_pages()
32 static inline struct cma *cma_from_kobj(struct kobject *kobj) in cma_from_kobj()
[all …]
H A Dcma.h10 struct cma *cma; member
39 struct cma { struct
53 /* the number of CMA page successful allocations */
55 /* the number of CMA page allocation failures */
57 /* the number of CMA page released */
74 extern struct cma cma_areas[MAX_CMA_AREAS]; argument
77 static inline unsigned long cma_bitmap_maxno(struct cma *cma, in cma_bitmap_maxno() argument
80 return cmr->count >> cma->order_per_bit; in cma_bitmap_maxno()
84 void cma_sysfs_account_success_pages(struct cma *cma, unsigned long nr_pages);
85 void cma_sysfs_account_fail_pages(struct cma *cma, unsigned long nr_pages);
[all …]
H A Dhugetlb_cma.c4 #include <linux/cma.h>
16 static struct cma *hugetlb_cma[MAX_NUMNODES] __ro_after_init;
62 struct cma *cma; in hugetlb_cma_alloc_bootmem() local
66 cma = hugetlb_cma[*nid]; in hugetlb_cma_alloc_bootmem()
67 m = cma_reserve_early(cma, huge_page_size(h)); in hugetlb_cma_alloc_bootmem()
73 cma = hugetlb_cma[node]; in hugetlb_cma_alloc_bootmem()
74 if (!cma || node == *nid) in hugetlb_cma_alloc_bootmem()
76 m = cma_reserve_early(cma, huge_page_size(h)); in hugetlb_cma_alloc_bootmem()
86 m->cma = cma; in hugetlb_cma_alloc_bootmem()
159 * HugeTLB CMA reservation is required for gigantic in hugetlb_cma_reserve()
[all …]
/linux/Documentation/driver-api/cxl/allocation/
H A Dhugepages.rst9 CXL Memory onlined as SystemRAM during early boot is eligible for use by CMA,
10 as the NUMA node hosting that capacity will be `Online` at the time CMA
14 capacity allocated by CMA - as the NUMA node hosting the capacity is `Offline`
15 at :code:`__init` time - when CMA carves out contiguous capacity.
/linux/kernel/dma/
H A Dpool.c6 #include <linux/cma.h>
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()
70 /* CMA can't cross zone boundaries, see cma_activate_area() */ in cma_in_zone()
71 end = cma_get_base(cma) + size - 1; in cma_in_zone()
/linux/arch/xtensa/boot/dts/
H A Dkc705.dts22 linux,cma {
28 linux,cma-default;
/linux/Documentation/devicetree/bindings/media/
H A Dnuvoton,npcm-vcd.yaml46 CMA pool to use for buffers allocation instead of the default CMA pool.
H A Dallwinner,sun4i-a10-video-engine.yaml63 CMA pool to use for buffers allocation instead of the default
64 CMA pool.
/linux/Documentation/ABI/testing/
H A Dsysfs-kernel-kexec-kdump58 the Contiguous Memory Allocator (CMA) area that are allocated
60 addresses of CMA regions assigned for crashkernel use.
/linux/arch/loongarch/boot/dts/
H A Dloongson-2k2000-ref.dts33 linux,cma {
37 linux,cma-default;
/linux/include/linux/
H A Dkexec.h181 * @cma: CMA page if the buffer is backed by CMA.
194 struct page *cma; member
/linux/arch/arm64/boot/dts/freescale/
H A Dimx91-tqma9131.dtsi26 /* default CMA, must not exceed assembled memory */
27 linux,cma {
32 linux,cma-default;
H A Dtqma8xx.dtsi37 linux,cma {
42 linux,cma-default;
H A Dimx91-phycore-som.dtsi27 linux,cma {
32 linux,cma-default;
H A Dimx93-tqma9352.dtsi25 linux,cma {
30 linux,cma-default;
/linux/Documentation/ABI/obsolete/
H A Dsysfs-kernel-kexec-kdump68 the Contiguous Memory Allocator (CMA) area that are allocated
70 addresses of CMA regions assigned for crashkernel use.
/linux/arch/arm/boot/dts/nxp/imx/
H A Dimx6ul-ccimx6ulsom.dtsi20 linux,cma {
24 linux,cma-default;
/linux/drivers/gpu/drm/etnaviv/
H A DKconfig12 select CMA if HAVE_DMA_CONTIGUOUS
/linux/drivers/gpu/drm/ingenic/
H A DKconfig5 depends on CMA
/linux/drivers/s390/char/
H A Dvmcp.c22 #include <linux/cma.h>
41 static struct cma *vmcp_cma;
/linux/Documentation/features/io/dma-contiguous/
H A Darch-support.txt4 # description: arch supports the DMA CMA (continuous memory allocator)
/linux/arch/arm/boot/dts/broadcom/
H A Dbcm283x.dtsi38 cma: linux,cma { label
42 linux,cma-default;
/linux/Documentation/arch/arm/omap/
H A Ddss.rst298 allocator, and if CMA is enabled, you use "cma=" kernel parameter to increase
299 the global memory area for CMA.

12345