| /kernel/linux/linux-5.10/kernel/dma/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 9 default y 88 # Should be selected if we can mmap non-coherent mappings to userspace. 93 default y if !MMU 112 depends on HAVE_DMA_CONTIGUOUS && CMA 115 to allocate big physically-contiguous blocks of memory for use with 116 hardware components that do not support I/O map nor scatter-gather. 118 You can disable CMA by specifying "cma=0" on the kernel's command 128 default NUMA && ARM64 130 Enable this option to get pernuma CMA areas so that devices like [all …]
|
| D | contiguous.c | 1 // SPDX-License-Identifier: GPL-2.0+ 4 * Copyright (c) 2010-2011 by Samsung Electronics. 11 * The Contiguous Memory Allocator (CMA) makes it possible to 17 * Various devices on embedded systems have no scatter-getter and/or 32 * CMA tries to solve this issue by operating on memory regions 38 #define pr_fmt(fmt) "cma: " fmt 51 #include <linux/dma-map-ops.h> 52 #include <linux/cma.h> 60 struct cma *dma_contiguous_default_area; 63 * Default global CMA area size can be defined in kernel's .config. [all …]
|
| D | pool.c | 1 // SPDX-License-Identifier: GPL-2.0 6 #include <linux/cma.h> 8 #include <linux/dma-map-ops.h> 9 #include <linux/dma-direct.h> 63 struct cma *cma; in cma_in_zone() local 65 cma = dev_get_cma_area(NULL); in cma_in_zone() 66 if (!cma) in cma_in_zone() 69 size = cma_get_size(cma); in cma_in_zone() 73 /* CMA can't cross zone boundaries, see cma_activate_area() */ in cma_in_zone() 74 end = cma_get_base(cma) + size - 1; in cma_in_zone() [all …]
|
| /kernel/linux/linux-6.6/kernel/dma/ |
| D | contiguous.c | 1 // SPDX-License-Identifier: GPL-2.0+ 4 * Copyright (c) 2010-2011 by Samsung Electronics. 11 * The Contiguous Memory Allocator (CMA) makes it possible to 17 * Various devices on embedded systems have no scatter-getter and/or 32 * CMA tries to solve this issue by operating on memory regions 38 #define pr_fmt(fmt) "cma: " fmt 51 #include <linux/dma-map-ops.h> 52 #include <linux/cma.h> 61 struct cma *dma_contiguous_default_area; 64 * Default global CMA area size can be defined in kernel's .config. [all …]
|
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 9 default y 84 # by default. 95 default n 100 pools as needed. To reduce run-time kernel memory requirements, you 119 <Documentation/devicetree/bindings/reserved-memory/reserved-memory.txt> 124 # Should be selected if we can mmap non-coherent mappings to userspace. 129 default y if !MMU 147 depends on HAVE_DMA_CONTIGUOUS && CMA 150 to allocate big physically-contiguous blocks of memory for use with [all …]
|
| D | pool.c | 1 // SPDX-License-Identifier: GPL-2.0 6 #include <linux/cma.h> 8 #include <linux/dma-map-ops.h> 9 #include <linux/dma-direct.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() [all …]
|
| /kernel/linux/linux-5.10/mm/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 12 default DISCONTIGMEM_MANUAL if ARCH_DISCONTIGMEM_DEFAULT 13 default SPARSEMEM_MANUAL if ARCH_SPARSEMEM_DEFAULT 14 default FLATMEM_MANUAL 25 This option is best suited for non-NUMA systems with 56 memory hot-plug systems. This is normal. 60 hot-plug and hot-remove. 69 default n 78 default n 80 File-LRU is a mechanism that put file page in global lru list, [all …]
|
| /kernel/linux/linux-5.10/include/drm/ |
| D | drm_gem_cma_helper.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 12 * struct drm_gem_cma_object - GEM object backed by CMA memory allocations 25 /* For objects with DMA memory allocated by GEM CMA */ 40 * DEFINE_DRM_GEM_CMA_FOPS() - macro to generate file operations for CMA drivers 43 * This macro autogenerates a suitable &struct file_operations for CMA based 48 * Note that the declaration is already marked as static - if you need a 49 * non-static version of this you're probably doing it wrong and will break the 113 * DRM_GEM_CMA_DRIVER_OPS_WITH_DUMB_CREATE - CMA GEM driver operations 116 * This macro provides a shortcut for setting the default GEM operations in the 120 * override the default implementation of &struct rm_driver.dumb_create. Use [all …]
|
| /kernel/linux/linux-6.6/mm/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 18 default y 33 compress them into a dynamically allocated RAM-based memory pool. 39 bool "CMA reuse feature" 40 depends on CMA 43 allocations with __GFP_CMA flag will use cma areas prior to 46 It improves the utilization ratio of cma areas. 49 bool "Enable the compressed cache for swap pages by default" 72 swapped out again, it will be re-compressed. 75 prompt "Default compressor" [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/ |
| D | drm_gem_cma_helper.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * drm gem CMA (contiguous memory allocator) helper functions 12 #include <linux/dma-buf.h> 13 #include <linux/dma-mapping.h> 26 * DOC: cma helpers 31 * The DRM GEM/CMA helpers use this allocator as a means to provide buffer 37 * __drm_gem_cma_create - Create a GEM CMA object without allocating memory 41 * This function creates and initializes a GEM CMA object of the given size, 45 * A struct drm_gem_cma_object * on success or an ERR_PTR()-encoded negative 55 if (drm->driver->gem_create_object) in __drm_gem_cma_create() [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/reserved-memory/ |
| D | shared-dma-pool.yaml | 1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/reserved-memory/shared-dma-pool.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: /reserved-memory DMA pool 10 - devicetree-spec@vger.kernel.org 13 - $ref: reserved-memory.yaml 18 - const: shared-dma-pool 25 - const: restricted-dma-pool 30 When using this, the no-map and reusable properties must not [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/reserved-memory/ |
| D | reserved-memory.txt | 3 Reserved memory is specified as a node under the /reserved-memory node. 12 /reserved-memory node 13 --------------------- 14 #address-cells, #size-cells (required) - standard definition 15 - Should use the same values as the root node 16 ranges (required) - standard definition 17 - Should be empty 19 /reserved-memory/ child nodes 20 ----------------------------- 21 Each child of the reserved-memory node specifies one or more regions of [all …]
|
| /kernel/linux/linux-6.6/arch/xtensa/boot/dts/ |
| D | kc705.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 /include/ "xtfpga-flash-128m.dtsi" 7 compatible = "cdns,xtensa-kc705"; 16 reserved-memory { 17 #address-cells = <1>; 18 #size-cells = <1>; 22 linux,cma { 23 compatible = "shared-dma-pool"; 27 alloc-ranges = <0x00000000 0x20000000>; [all …]
|
| /kernel/linux/linux-5.10/arch/xtensa/boot/dts/ |
| D | kc705.dts | 1 // SPDX-License-Identifier: GPL-2.0 2 /dts-v1/; 4 /include/ "xtfpga-flash-128m.dtsi" 7 compatible = "cdns,xtensa-kc705"; 16 reserved-memory { 17 #address-cells = <1>; 18 #size-cells = <1>; 22 linux,cma { 23 compatible = "shared-dma-pool"; 27 alloc-ranges = <0x00000000 0x20000000>; [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/media/ |
| D | allwinner,sun4i-a10-video-engine.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 3 --- 4 $id: http://devicetree.org/schemas/media/allwinner,sun4i-a10-video-engine.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Chen-Yu Tsai <wens@csie.org> 11 - Maxime Ripard <mripard@kernel.org> 16 - allwinner,sun4i-a10-video-engine 17 - allwinner,sun5i-a13-video-engine 18 - allwinner,sun7i-a20-video-engine 19 - allwinner,sun8i-a33-video-engine [all …]
|
| /kernel/linux/linux-5.10/include/linux/ |
| D | dma-map-ops.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 9 #include <linux/dma-mapping.h> 12 struct cma; 75 #include <asm/dma-mapping.h> 79 if (dev->dma_ops) in get_dma_ops() 80 return dev->dma_ops; in get_dma_ops() 81 return get_arch_dma_ops(dev->bus); in get_dma_ops() 87 dev->dma_ops = dma_ops; in set_dma_ops() 101 extern struct cma *dma_contiguous_default_area; 103 static inline struct cma *dev_get_cma_area(struct device *dev) in dev_get_cma_area() [all …]
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/media/ |
| D | allwinner,sun4i-a10-video-engine.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 3 --- 4 $id: http://devicetree.org/schemas/media/allwinner,sun4i-a10-video-engine.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Chen-Yu Tsai <wens@csie.org> 11 - Maxime Ripard <mripard@kernel.org> 16 - allwinner,sun4i-a10-video-engine 17 - allwinner,sun5i-a13-video-engine 18 - allwinner,sun7i-a20-video-engine 19 - allwinner,sun8i-a33-video-engine [all …]
|
| /kernel/linux/linux-6.6/Documentation/powerpc/ |
| D | firmware-assisted-dump.rst | 2 Firmware-Assisted Dump 7 The goal of firmware-assisted dump is to enable the dump of 8 a crashed system, and to do so from a fully-reset system, and 12 - Firmware-Assisted Dump (FADump) infrastructure is intended to replace 14 - Fadump uses the same firmware interfaces and memory reservation model 16 - Unlike phyp dump, FADump exports the memory dump through /proc/vmcore 19 - Unlike phyp dump, userspace tool does not need to refer any sysfs 21 - Unlike phyp dump, FADump allows user to release all the memory reserved 23 - Once enabled through kernel boot parameter, FADump can be 28 Comparing with kdump or other strategies, firmware-assisted [all …]
|
| /kernel/linux/linux-5.10/Documentation/powerpc/ |
| D | firmware-assisted-dump.rst | 2 Firmware-Assisted Dump 7 The goal of firmware-assisted dump is to enable the dump of 8 a crashed system, and to do so from a fully-reset system, and 12 - Firmware-Assisted Dump (FADump) infrastructure is intended to replace 14 - Fadump uses the same firmware interfaces and memory reservation model 16 - Unlike phyp dump, FADump exports the memory dump through /proc/vmcore 19 - Unlike phyp dump, userspace tool does not need to refer any sysfs 21 - Unlike phyp dump, FADump allows user to release all the memory reserved 23 - Once enabled through kernel boot parameter, FADump can be 28 Comparing with kdump or other strategies, firmware-assisted [all …]
|
| /kernel/linux/linux-6.6/arch/arm64/boot/dts/freescale/ |
| D | imx93-11x11-evk.dts | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 6 /dts-v1/; 12 compatible = "fsl,imx93-11x11-evk", "fsl,imx93"; 15 stdout-path = &lpuart1; 18 reserved-memory { 19 #address-cells = <2>; 20 #size-cells = <2>; 23 linux,cma { 24 compatible = "shared-dma-pool"; 26 alloc-ranges = <0 0x80000000 0 0x40000000>; [all …]
|
| D | imx93-tqma9352.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0-or-later OR MIT) 3 * Copyright (c) 2022 TQ-Systems GmbH <linux@ew.tq-group.com>, 4 * D-82229 Seefeld, Germany. 11 model = "TQ-Systems i.MX93 TQMa93xxLA/TQMa93xxCA SOM"; 12 compatible = "tq,imx93-tqma9352", "fsl,imx93"; 14 reserved-memory { 15 #address-cells = <2>; 16 #size-cells = <2>; 19 linux,cma { 20 compatible = "shared-dma-pool"; [all …]
|
| D | imx8ulp-evk.dts | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 6 /dts-v1/; 12 compatible = "fsl,imx8ulp-evk", "fsl,imx8ulp"; 15 stdout-path = &lpuart5; 23 reserved-memory { 24 #address-cells = <2>; 25 #size-cells = <2>; 28 linux,cma { 29 compatible = "shared-dma-pool"; 32 linux,cma-default; [all …]
|
| /kernel/linux/linux-5.10/arch/arm/boot/dts/ |
| D | imx6ul-ccimx6ulsom.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Digi International's ConnectCore 6UL System-On-Module device tree source 12 reg = <0x80000000 0>; /* will be filled by U-Boot */ 15 reserved-memory { 16 #address-cells = <1>; 17 #size-cells = <1>; 20 linux,cma { 21 compatible = "shared-dma-pool"; 24 linux,cma-default; 30 vref-supply = <&vdda_adc_3v3>; [all …]
|
| /kernel/linux/linux-6.6/arch/arm/boot/dts/nxp/imx/ |
| D | imx6ul-ccimx6ulsom.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 * Digi International's ConnectCore 6UL System-On-Module device tree source 12 reg = <0x80000000 0>; /* will be filled by U-Boot */ 15 reserved-memory { 16 #address-cells = <1>; 17 #size-cells = <1>; 20 linux,cma { 21 compatible = "shared-dma-pool"; 24 linux,cma-default; 30 vref-supply = <&vdda_adc_3v3>; [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/etnaviv/ |
| D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 12 select CMA if HAVE_DMA_CONTIGUOUS 21 default y
|