/linux-5.10/drivers/dma/ |
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 3 # DMA engine configuration 7 bool "DMA Engine support" 10 DMA engines can do asynchronous data transfers without 14 DMA Device drivers supported by the configured arch, it may 18 bool "DMA Engine debugging" 22 say N here. This enables DMA engine core and driver debugging. 25 bool "DMA Engine verbose debugging" 30 the DMA engine core and drivers. 35 comment "DMA Devices" [all …]
|
D | of-dma.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Device tree helpers for DMA request / controller 7 * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ 24 * of_dma_find_controller - Get a DMA controller in DT DMA helpers list 25 * @dma_spec: pointer to DMA specifier as found in the device tree 27 * Finds a DMA controller with matching device node and number for dma cells 28 * in a list of registered DMA controllers. If a match is found a valid pointer 29 * to the DMA data stored is retuned. A NULL pointer is returned if no match is 37 if (ofdma->of_node == dma_spec->np) in of_dma_find_controller() 40 pr_debug("%s: can't find DMA controller %pOF\n", __func__, in of_dma_find_controller() [all …]
|
D | acpi-dma.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * ACPI helpers for DMA request / controller 5 * Based on of-dma.c 13 #include <linux/dma-mapping.h> 29 * acpi_dma_parse_resource_group - match device and parse resource group 32 * @adma: struct acpi_dma of the given DMA controller 50 if (grp->shared_info_length != sizeof(struct acpi_csrt_shared_info)) in acpi_dma_parse_resource_group() 51 return -ENODEV; in acpi_dma_parse_resource_group() 59 if (resource_type(rentry->res) == IORESOURCE_MEM) in acpi_dma_parse_resource_group() 60 mem = rentry->res->start; in acpi_dma_parse_resource_group() [all …]
|
/linux-5.10/Documentation/devicetree/bindings/powerpc/fsl/ |
D | dma.txt | 1 * Freescale DMA Controllers 3 ** Freescale Elo DMA Controller 4 This is a little-endian 4-channel DMA controller, used in Freescale mpc83xx 9 - compatible : must include "fsl,elo-dma" 10 - reg : DMA General Status Register, i.e. DGSR which contains 11 status for all the 4 DMA channels 12 - ranges : describes the mapping between the address space of the 13 DMA channels and the address space of the DMA controller 14 - cell-index : controller index. 0 for controller @ 0x8100 15 - interrupts : interrupt specifier for DMA IRQ [all …]
|
/linux-5.10/Documentation/devicetree/bindings/dma/ |
D | mmp-dma.txt | 1 * MARVELL MMP DMA controller 3 Marvell Peripheral DMA Controller 7 - compatible: Should be "marvell,pdma-1.0" 8 - reg: Should contain DMA registers location and length. 9 - interrupts: Either contain all of the per-channel DMA interrupts 13 - #dma-channels: Number of DMA channels supported by the controller (defaults 15 - #dma-requests: Number of DMA requestor lines supported by the controller 18 "marvell,pdma-1.0" 26 * while DMA controller may not able to distinguish the irq channel 27 * Using this method, interrupt-parent is required as demuxer [all …]
|
D | ste-dma40.txt | 1 * DMA40 DMA Controller 4 - compatible: "stericsson,dma40" 5 - reg: Address range of the DMAC registers 6 - reg-names: Names of the above areas to use during resource look-up 7 - interrupt: Should contain the DMAC interrupt number 8 - #dma-cells: must be <3> 9 - memcpy-channels: Channels to be used for memcpy 12 - dma-channels: Number of channels supported by hardware - if not present 14 - disabled-channels: Channels which can not be used 18 dma: dma-controller@801c0000 { [all …]
|
D | mpc512x-dma.txt | 1 * Freescale MPC512x and MPC8308 DMA Controller 3 The DMA controller in Freescale MPC512x and MPC8308 SoCs can move 7 Refer to "Generic DMA Controller and DMA request bindings" in 8 the dma/dma.txt file for a more detailed description of binding. 11 - compatible: should be "fsl,mpc5121-dma" or "fsl,mpc8308-dma"; 12 - reg: should contain the DMA controller registers location and length; 13 - interrupt for the DMA controller: syntax of interrupt client node 14 is described in interrupt-controller/interrupts.txt file. 15 - #dma-cells: the length of the DMA specifier, must be <1>. 16 Each channel of this DMA controller has a peripheral request line, [all …]
|
D | owl-dma.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/dma/owl-dma.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Actions Semi Owl SoCs DMA controller 10 The OWL DMA is a general-purpose direct memory access controller capable of 11 supporting 10 and 12 independent DMA channels for S700 and S900 SoCs 15 - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> 18 - $ref: "dma-controller.yaml#" 23 - actions,s900-dma [all …]
|
D | st,stm32-dma.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/dma/st,stm32-dma.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: STMicroelectronics STM32 DMA Controller bindings 10 The STM32 DMA is a general-purpose direct memory access controller capable of 11 supporting 8 independent DMA channels. Each channel can have up to 8 requests. 12 DMA clients connected to the STM32 DMA controller must use the format 13 described in the dma.txt file, using a four-cell specifier for each 14 channel: a phandle to the DMA controller plus the following four integer cells: [all …]
|
D | sprd-dma.txt | 1 * Spreadtrum DMA controller 3 This binding follows the generic DMA bindings defined in dma.txt. 6 - compatible: Should be "sprd,sc9860-dma". 7 - reg: Should contain DMA registers location and length. 8 - interrupts: Should contain one interrupt shared by all channel. 9 - #dma-cells: must be <1>. Used to represent the number of integer 11 - #dma-channels : Number of DMA channels supported. Should be 32. 12 - clock-names: Should contain the clock of the DMA controller. 13 - clocks: Should contain a clock specifier for each entry in clock-names. 17 Controller: [all …]
|
D | sirfsoc-dma.txt | 1 * CSR SiRFSoC DMA controller 3 See dma.txt first 6 - compatible: Should be "sirf,prima2-dmac", "sirf,atlas7-dmac" or 7 "sirf,atlas7-dmac-v2" 8 - reg: Should contain DMA registers location and length. 9 - interrupts: Should contain one interrupt shared by all channel 10 - #dma-cells: must be <1>. used to represent the number of integer 12 - clocks: clock required 16 Controller: 17 dmac0: dma-controller@b00b0000 { [all …]
|
D | ti-dma-crossbar.txt | 1 Texas Instruments DMA Crossbar (DMA request router) 4 - compatible: "ti,dra7-dma-crossbar" for DRA7xx DMA crossbar 5 "ti,am335x-edma-crossbar" for AM335x and AM437x 6 - reg: Memory map for accessing module 7 - #dma-cells: Should be set to to match with the DMA controller's dma-cells 8 for ti,dra7-dma-crossbar and <3> for ti,am335x-edma-crossbar. 9 - dma-requests: Number of DMA requests the crossbar can receive 10 - dma-masters: phandle pointing to the DMA controller 12 The DMA controller node need to have the following poroperties: 13 - dma-requests: Number of DMA requests the controller can handle [all …]
|
D | arm-pl330.txt | 1 * ARM PrimeCell PL330 DMA Controller 3 The ARM PrimeCell PL330 DMA controller can move blocks of memory contents 7 - compatible: should include both "arm,pl330" and "arm,primecell". 8 - reg: physical base address of the controller and length of memory mapped 10 - interrupts: interrupt number to the cpu. 13 - dma-coherent : Present if dma operations are coherent 14 - #dma-cells: must be <1>. used to represent the number of integer 16 - dma-channels: contains the total number of DMA channels supported by the DMAC 17 - dma-requests: contains the total number of DMA requests supported by the DMAC 18 - arm,pl330-broken-no-flushp: quirk for avoiding to execute DMAFLUSHP [all …]
|
D | snps,dma-spear1340.yaml | 1 # SPDX-License-Identifier: GPL-2.0-only 3 --- 4 $id: http://devicetree.org/schemas/dma/snps,dma-spear1340.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Synopsys Designware DMA Controller 10 - Viresh Kumar <vireshk@kernel.org> 11 - Andy Shevchenko <andriy.shevchenko@linux.intel.com> 14 - $ref: "dma-controller.yaml#" 18 const: snps,dma-spear1340 20 "#dma-cells": [all …]
|
D | fsl-imx-dma.txt | 1 * Freescale Direct Memory Access (DMA) Controller for i.MX 3 This document will only describe differences to the generic DMA Controller and 4 DMA request bindings as described in dma/dma.txt . 6 * DMA controller 9 - compatible : Should be "fsl,<chip>-dma". chip can be imx1, imx21 or imx27 10 - reg : Should contain DMA registers location and length 11 - interrupts : First item should be DMA interrupt, second one is optional and 12 should contain DMA Error interrupt 13 - #dma-cells : Has to be 1. imx-dma does not support anything else. 16 - #dma-channels : Number of DMA channels supported. Should be 16. [all …]
|
D | ingenic,dma.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/dma/ingenic,dma.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Ingenic SoCs DMA Controller DT bindings 10 - Paul Cercueil <paul@crapouillou.net> 13 - $ref: "dma-controller.yaml#" 18 - ingenic,jz4740-dma 19 - ingenic,jz4725b-dma 20 - ingenic,jz4770-dma [all …]
|
D | atmel-xdma.txt | 1 * Atmel Extensible Direct Memory Access Controller (XDMAC) 3 * XDMA Controller 5 - compatible: Should be "atmel,sama5d4-dma" or "microchip,sam9x60-dma". 6 - reg: Should contain DMA registers location and length. 7 - interrupts: Should contain DMA interrupt. 8 - #dma-cells: Must be <1>, used to represent the number of integer cells in 10 - The 1st cell specifies the channel configuration register: 11 - bit 13: SIF, source interface identifier, used to get the memory 13 - bit 14: DIF, destination interface identifier, used to get the peripheral 15 - bit 30-24: PERID, peripheral identifier. [all …]
|
/linux-5.10/Documentation/core-api/ |
D | dma-isa-lpc.rst | 2 DMA with ISA and LPC devices 7 This document describes how to do DMA transfers using the old ISA DMA 8 controller. Even though ISA is more or less dead today the LPC bus 9 uses the same DMA system so it will be around for quite some time. 12 ------------------------ 14 To do ISA style DMA you need to include two headers:: 16 #include <linux/dma-mapping.h> 17 #include <asm/dma.h> 19 The first is the generic DMA API used to convert virtual addresses to 20 bus addresses (see :doc:`/core-api/dma-api` for details). [all …]
|
/linux-5.10/drivers/usb/musb/ |
D | cppi_dma.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (C) 2005-2006 by Texas Instruments 5 * This file implements a DMA interface using TI's CPPI DMA. 6 * For now it's DaVinci-only, but CPPI isn't specific to DaVinci or USB. 21 /* CPPI DMA status 7-mar-2006: 23 * - See musb_{host,gadget}.c for more info 25 * - Correct RX DMA generally forces the engine into irq-per-packet mode, 26 * which can easily saturate the CPU under non-mass-storage loads. 28 * NOTES 24-aug-2006 (2.6.18-rc4): 30 * - peripheral RXDMA wedged in a test with packets of length 512/512/1. [all …]
|
D | musb_dma.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * MUSB OTG driver DMA controller abstraction 6 * Copyright (C) 2005-2006 by Texas Instruments 7 * Copyright (C) 2006-2007 Nokia Corporation 16 * DMA Controller Abstraction 18 * DMA Controllers are abstracted to allow use of a variety of different 19 * implementations of DMA, as allowed by the Inventra USB cores. On the 20 * host side, usbcore sets up the DMA mappings and flushes caches; on the 21 * peripheral side, the gadget controller driver does. Responsibilities 22 * of a DMA controller driver include: [all …]
|
D | tusb6010_omap.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * TUSB6010 USB 2.0 OTG Dual Role controller OMAP DMA interface 13 #include <linux/dma-mapping.h> 20 #define to_chdat(c) ((struct tusb_omap_dma_ch *)(c)->private_data) 51 struct dma_controller controller; member 63 u32 reg = musb_readl(chdat->tbase, TUSB_DMA_EP_MAP); in tusb_omap_use_shared_dmareq() 66 dev_dbg(chdat->musb->controller, "ep%i dmareq0 is busy for ep%i\n", in tusb_omap_use_shared_dmareq() 67 chdat->epnum, reg & 0xf); in tusb_omap_use_shared_dmareq() 68 return -EAGAIN; in tusb_omap_use_shared_dmareq() 71 if (chdat->tx) in tusb_omap_use_shared_dmareq() [all …]
|
/linux-5.10/Documentation/devicetree/bindings/mtd/ |
D | qcom_nandc.txt | 1 * Qualcomm NAND controller 4 - compatible: must be one of the following: 5 * "qcom,ipq806x-nand" - for EBI2 NAND controller being used in IPQ806x 6 SoC and it uses ADM DMA 7 * "qcom,ipq4019-nand" - for QPIC NAND controller v1.4.0 being used in 8 IPQ4019 SoC and it uses BAM DMA 9 * "qcom,ipq8074-nand" - for QPIC NAND controller v1.5.0 being used in 10 IPQ8074 SoC and it uses BAM DMA 12 - reg: MMIO address range 13 - clocks: must contain core clock and always on clock [all …]
|
/linux-5.10/include/linux/dma/ |
D | sprd-dma.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 15 * The Spreadtrum DMA controller supports channel 2-stage tansfer, that means 16 * we can request 2 dma channels, one for source channel, and another one for 22 * To support 2-stage tansfer, we must configure the channel mode and trigger 27 * enum sprd_dma_chn_mode: define the DMA channel mode for 2-stage transfer 29 * support the 2-stage transfer. 35 * Now the DMA controller can supports 2 groups 2-stage transfer. 46 * enum sprd_dma_trg_mode: define the DMA channel trigger mode for 2-stage 56 * automatically once the source channel's link-list request is done. 67 * enum sprd_dma_req_mode: define the DMA request mode [all …]
|
/linux-5.10/sound/soc/fsl/ |
D | fsl_dma.c | 1 // SPDX-License-Identifier: GPL-2.0 3 // Freescale DMA ALSA SoC PCM driver 7 // Copyright 2007-2010 Freescale Semiconductor, Inc. 9 // This driver implements ASoC support for the Elo DMA controller, which is 10 // the DMA controller on Freescale 83xx, 85xx, and 86xx SOCs. In ALSA terms, 11 // the PCM driver is what handles the DMA buffer. 16 #include <linux/dma-mapping.h> 39 * The formats that the DMA controller supports, which is anything 67 * The number of DMA links to use. Two is the bare minimum, but if you 72 /** fsl_dma_private: p-substream DMA data [all …]
|
/linux-5.10/drivers/dma/mediatek/ |
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 4 tristate "MediaTek High-Speed DMA controller support" 9 Enable support for High-Speed DMA controller on MediaTek 12 This controller provides the channels which is dedicated to 13 memory-to-memory transfer to offload from CPU through ring- 17 tristate "MediaTek Command-Queue DMA controller support" 23 Enable support for Command-Queue DMA controller on MediaTek 26 This controller provides the channels which is dedicated to 27 memory-to-memory transfer to offload from CPU. 35 Support for the UART DMA engine found on MediaTek MTK SoCs. [all …]
|