| /kernel/linux/linux-4.19/arch/arm/kernel/ |
| D | dma.c | 2 * linux/arch/arm/kernel/dma.c 10 * Front-end to the DMA handling. This handles the allocation/freeing 11 * of DMA channels, and provides a unified interface to the machines 12 * DMA facilities. 22 #include <asm/dma.h> 24 #include <asm/mach/dma.h> 39 int __init isa_dma_add(unsigned int chan, dma_t *dma) in isa_dma_add() argument 41 if (!dma->d_ops) in isa_dma_add() 44 sg_init_table(&dma->buf, 1); in isa_dma_add() 48 dma_chan[chan] = dma; in isa_dma_add() [all …]
|
| /kernel/linux/linux-5.10/arch/arm/kernel/ |
| D | dma.c | 3 * linux/arch/arm/kernel/dma.c 7 * Front-end to the DMA handling. This handles the allocation/freeing 8 * of DMA channels, and provides a unified interface to the machines 9 * DMA facilities. 19 #include <asm/dma.h> 21 #include <asm/mach/dma.h> 36 int __init isa_dma_add(unsigned int chan, dma_t *dma) in isa_dma_add() argument 38 if (!dma->d_ops) in isa_dma_add() 41 sg_init_table(&dma->buf, 1); in isa_dma_add() 45 dma_chan[chan] = dma; in isa_dma_add() [all …]
|
| /kernel/linux/linux-4.19/drivers/tty/serial/8250/ |
| D | 8250_dma.c | 3 * 8250_dma.c - DMA Engine API support for 8250.c 10 #include <linux/dma-mapping.h> 17 struct uart_8250_dma *dma = p->dma; in __dma_tx_complete() local 22 dma_sync_single_for_cpu(dma->txchan->device->dev, dma->tx_addr, in __dma_tx_complete() 27 dma->tx_running = 0; in __dma_tx_complete() 29 xmit->tail += dma->tx_size; in __dma_tx_complete() 31 p->port.icount.tx += dma->tx_size; in __dma_tx_complete() 48 struct uart_8250_dma *dma = p->dma; in __dma_rx_complete() local 53 dma->rx_running = 0; in __dma_rx_complete() 54 dmaengine_tx_status(dma->rxchan, dma->rx_cookie, &state); in __dma_rx_complete() [all …]
|
| /kernel/linux/linux-5.10/drivers/tty/serial/8250/ |
| D | 8250_dma.c | 3 * 8250_dma.c - DMA Engine API support for 8250.c 10 #include <linux/dma-mapping.h> 17 struct uart_8250_dma *dma = p->dma; in __dma_tx_complete() local 22 dma_sync_single_for_cpu(dma->txchan->device->dev, dma->tx_addr, in __dma_tx_complete() 27 dma->tx_running = 0; in __dma_tx_complete() 29 xmit->tail += dma->tx_size; in __dma_tx_complete() 31 p->port.icount.tx += dma->tx_size; in __dma_tx_complete() 46 struct uart_8250_dma *dma = p->dma; in __dma_rx_complete() local 51 dma->rx_running = 0; in __dma_rx_complete() 52 dmaengine_tx_status(dma->rxchan, dma->rx_cookie, &state); in __dma_rx_complete() [all …]
|
| /kernel/linux/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 13 DMA channels and the address space of the DMA controller 15 - interrupts : interrupt specifier for DMA IRQ 17 - DMA channel nodes: 18 - compatible : must include "fsl,elo-dma-channel" [all …]
|
| /kernel/linux/linux-4.19/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 13 DMA channels and the address space of the DMA controller 15 - interrupts : interrupt specifier for DMA IRQ 17 - DMA channel nodes: 18 - compatible : must include "fsl,elo-dma-channel" [all …]
|
| /kernel/linux/linux-4.19/Documentation/devicetree/bindings/dma/ |
| D | dma.txt | 1 * Generic DMA Controller and DMA request bindings 3 Generic binding to provide a way for a driver using DMA Engine to retrieve the 4 DMA request or channel information that goes from a hardware device to a DMA 8 * DMA controller 11 - #dma-cells: Must be at least 1. Used to provide DMA controller 12 specific information. See DMA client binding below for 16 - dma-channels: Number of DMA channels supported by the controller. 17 - dma-requests: Number of DMA request signals supported by the 22 dma: dma@48000000 { 29 #dma-cells = <1>; [all …]
|
| D | ti-dma-crossbar.txt | 1 Texas Instruments DMA Crossbar (DMA request router) 4 - compatible: "ti,dra7-dma-crossbar" for DRA7xx DMA crossbar 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 16 - ti,dma-safe-map: Safe routing value for unused request lines 17 - ti,reserved-dma-request-ranges: DMA request ranges which should not be used [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 | sun6i-dma.txt | 1 Allwinner A31 DMA Controller 3 This driver follows the generic DMA bindings defined in dma.txt. 8 "allwinner,sun6i-a31-dma" 9 "allwinner,sun8i-a23-dma" 10 "allwinner,sun8i-a83t-dma" 11 "allwinner,sun8i-h3-dma" 12 "allwinner,sun8i-v3s-dma" 18 - #dma-cells : Should be 1, a single cell holding a line request number 21 dma: dma-controller@1c02000 { 22 compatible = "allwinner,sun6i-a31-dma"; [all …]
|
| D | stm32-dmamux.txt | 1 STM32 DMA MUX (DMA request router) 6 - #dma-cells: Should be set to <3>. 8 Second is DMA channel configuration 11 stm32-dma.txt documentation binding file 12 - dma-masters: Phandle pointing to the DMA controllers. 13 Several controllers are allowed. Only "st,stm32-dma" DMA 17 - dma-channels : Number of DMA requests supported. 18 - dma-requests : Number of DMAMUX requests supported. 19 - resets: Reference to a reset controller asserting the DMA controller 24 /* DMA controller 1 */ [all …]
|
| /kernel/linux/linux-4.19/drivers/i2c/busses/ |
| D | i2c-stm32.c | 12 /* Functions for DMA support */ 18 struct stm32_i2c_dma *dma; in stm32_i2c_dma_request() local 22 dma = devm_kzalloc(dev, sizeof(*dma), GFP_KERNEL); in stm32_i2c_dma_request() 23 if (!dma) in stm32_i2c_dma_request() 26 /* Request and configure I2C TX dma channel */ in stm32_i2c_dma_request() 27 dma->chan_tx = dma_request_chan(dev, "tx"); in stm32_i2c_dma_request() 28 if (IS_ERR(dma->chan_tx)) { in stm32_i2c_dma_request() 29 dev_dbg(dev, "can't request DMA tx channel\n"); in stm32_i2c_dma_request() 30 ret = PTR_ERR(dma->chan_tx); in stm32_i2c_dma_request() 39 ret = dmaengine_slave_config(dma->chan_tx, &dma_sconfig); in stm32_i2c_dma_request() [all …]
|
| /kernel/linux/linux-5.10/drivers/i2c/busses/ |
| D | i2c-stm32.c | 11 /* Functions for DMA support */ 17 struct stm32_i2c_dma *dma; in stm32_i2c_dma_request() local 21 dma = devm_kzalloc(dev, sizeof(*dma), GFP_KERNEL); in stm32_i2c_dma_request() 22 if (!dma) in stm32_i2c_dma_request() 25 /* Request and configure I2C TX dma channel */ in stm32_i2c_dma_request() 26 dma->chan_tx = dma_request_chan(dev, "tx"); in stm32_i2c_dma_request() 27 if (IS_ERR(dma->chan_tx)) { in stm32_i2c_dma_request() 28 ret = PTR_ERR(dma->chan_tx); in stm32_i2c_dma_request() 31 "can't request DMA tx channel\n"); in stm32_i2c_dma_request() 40 ret = dmaengine_slave_config(dma->chan_tx, &dma_sconfig); in stm32_i2c_dma_request() [all …]
|
| /kernel/linux/linux-5.10/drivers/media/platform/xilinx/ |
| D | xilinx-dma.c | 3 * Xilinx Video DMA 12 #include <linux/dma/xilinx_dma.h> 23 #include <media/videobuf2-dma-contig.h> 25 #include "xilinx-dma.h" 58 static int xvip_dma_verify_format(struct xvip_dma *dma) in xvip_dma_verify_format() argument 64 subdev = xvip_dma_remote_subdev(&dma->pad, &fmt.pad); in xvip_dma_verify_format() 73 if (dma->fmtinfo->code != fmt.format.code || in xvip_dma_verify_format() 74 dma->format.height != fmt.format.height || in xvip_dma_verify_format() 75 dma->format.width != fmt.format.width || in xvip_dma_verify_format() 76 dma->format.colorspace != fmt.format.colorspace) in xvip_dma_verify_format() [all …]
|
| /kernel/linux/linux-5.10/drivers/dma/ |
| D | Kconfig | 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" 74 provide DMA engine support. This includes the original ARM [all …]
|
| /kernel/linux/linux-4.19/drivers/media/platform/xilinx/ |
| D | xilinx-dma.c | 2 * Xilinx Video DMA 15 #include <linux/dma/xilinx_dma.h> 26 #include <media/videobuf2-dma-contig.h> 28 #include "xilinx-dma.h" 61 static int xvip_dma_verify_format(struct xvip_dma *dma) in xvip_dma_verify_format() argument 67 subdev = xvip_dma_remote_subdev(&dma->pad, &fmt.pad); in xvip_dma_verify_format() 76 if (dma->fmtinfo->code != fmt.format.code || in xvip_dma_verify_format() 77 dma->format.height != fmt.format.height || in xvip_dma_verify_format() 78 dma->format.width != fmt.format.width || in xvip_dma_verify_format() 79 dma->format.colorspace != fmt.format.colorspace) in xvip_dma_verify_format() [all …]
|
| /kernel/linux/linux-4.19/drivers/dma/ |
| D | Kconfig | 2 # DMA engine configuration 6 bool "DMA Engine support" 9 DMA engines can do asynchronous data transfers without 13 DMA Device drivers supported by the configured arch, it may 17 bool "DMA Engine debugging" 21 say N here. This enables DMA engine core and driver debugging. 24 bool "DMA Engine verbose debugging" 29 the DMA engine core and drivers. 34 comment "DMA Devices" 72 provide DMA engine support. This includes the original ARM [all …]
|
| /kernel/linux/linux-5.10/drivers/media/v4l2-core/ |
| D | videobuf-dma-sg.c | 3 * helper functions for SG DMA video4linux capture buffers 26 #include <linux/dma-mapping.h> 32 #include <media/videobuf-dma-sg.h> 47 MODULE_DESCRIPTION("helper module to manage video4linux dma sg buffers"); 106 /* DMA to highmem pages might not work */ in videobuf_pages_to_sg() 141 return &mem->dma; in videobuf_to_dma() 145 static void videobuf_dma_init(struct videobuf_dmabuf *dma) in videobuf_dma_init() argument 147 memset(dma, 0, sizeof(*dma)); in videobuf_dma_init() 148 dma->magic = MAGIC_DMABUF; in videobuf_dma_init() 151 static int videobuf_dma_init_user_locked(struct videobuf_dmabuf *dma, in videobuf_dma_init_user_locked() argument [all …]
|
| /kernel/linux/linux-5.10/Documentation/devicetree/bindings/dma/ |
| D | ti-dma-crossbar.txt | 1 Texas Instruments DMA Crossbar (DMA request router) 4 - compatible: "ti,dra7-dma-crossbar" for DRA7xx DMA crossbar 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 16 - ti,dma-safe-map: Safe routing value for unused request lines 17 - ti,reserved-dma-request-ranges: DMA request ranges which should not be used [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 …]
|
| /kernel/linux/linux-5.10/drivers/staging/comedi/drivers/ |
| D | comedi_isadma.c | 3 * COMEDI ISA DMA support functions 10 #include <linux/dma-mapping.h> 11 #include <asm/dma.h> 18 * comedi_isadma_program - program and enable an ISA DMA transfer 19 * @desc: the ISA DMA cookie to program and enable 36 * comedi_isadma_disable - disable the ISA DMA channel 37 * @dma_chan: the DMA channel to disable 39 * Returns the residue (remaining bytes) left in the DMA transfer. 56 * comedi_isadma_disable_on_sample - disable the ISA DMA channel 57 * @dma_chan: the DMA channel to disable [all …]
|
| /kernel/linux/linux-4.19/drivers/staging/comedi/drivers/ |
| D | comedi_isadma.c | 3 * COMEDI ISA DMA support functions 10 #include <linux/dma-mapping.h> 11 #include <asm/dma.h> 18 * comedi_isadma_program - program and enable an ISA DMA transfer 19 * @desc: the ISA DMA cookie to program and enable 36 * comedi_isadma_disable - disable the ISA DMA channel 37 * @dma_chan: the DMA channel to disable 39 * Returns the residue (remaining bytes) left in the DMA transfer. 56 * comedi_isadma_disable_on_sample - disable the ISA DMA channel 57 * @dma_chan: the DMA channel to disable [all …]
|
| /kernel/linux/linux-5.10/sound/core/ |
| D | isadma.c | 3 * ISA DMA support functions 9 * ISA DMA controllers. 16 #include <asm/dma.h> 19 * snd_dma_program - program an ISA DMA transfer 20 * @dma: the dma number 22 * @size: the DMA transfer size 23 * @mode: the DMA transfer mode, DMA_MODE_XXX 25 * Programs an ISA DMA transfer for the given buffer. 27 void snd_dma_program(unsigned long dma, in snd_dma_program() argument 34 disable_dma(dma); in snd_dma_program() [all …]
|
| /kernel/linux/linux-4.19/drivers/media/v4l2-core/ |
| D | videobuf-dma-sg.c | 2 * helper functions for SG DMA video4linux capture buffers 28 #include <linux/dma-mapping.h> 35 #include <media/videobuf-dma-sg.h> 50 MODULE_DESCRIPTION("helper module to manage video4linux dma sg buffers"); 109 /* DMA to highmem pages might not work */ in videobuf_pages_to_sg() 144 return &mem->dma; in videobuf_to_dma() 148 static void videobuf_dma_init(struct videobuf_dmabuf *dma) in videobuf_dma_init() argument 150 memset(dma, 0, sizeof(*dma)); in videobuf_dma_init() 151 dma->magic = MAGIC_DMABUF; in videobuf_dma_init() 154 static int videobuf_dma_init_user_locked(struct videobuf_dmabuf *dma, in videobuf_dma_init_user_locked() argument [all …]
|
| /kernel/linux/linux-4.19/sound/core/ |
| D | isadma.c | 2 * ISA DMA support functions 24 * ISA DMA controllers. 31 #include <asm/dma.h> 34 * snd_dma_program - program an ISA DMA transfer 35 * @dma: the dma number 37 * @size: the DMA transfer size 38 * @mode: the DMA transfer mode, DMA_MODE_XXX 40 * Programs an ISA DMA transfer for the given buffer. 42 void snd_dma_program(unsigned long dma, in snd_dma_program() argument 49 disable_dma(dma); in snd_dma_program() [all …]
|