/Linux-v6.1/drivers/dma/ |
D | fsl-edma-common.c | 11 #include "fsl-edma-common.h" 47 struct edma_regs *regs = &fsl_chan->edma->regs; in fsl_edma_enable_request() 50 if (fsl_chan->edma->drvdata->version == v1) { in fsl_edma_enable_request() 51 edma_writeb(fsl_chan->edma, EDMA_SEEI_SEEI(ch), regs->seei); in fsl_edma_enable_request() 52 edma_writeb(fsl_chan->edma, ch, regs->serq); in fsl_edma_enable_request() 64 struct edma_regs *regs = &fsl_chan->edma->regs; in fsl_edma_disable_request() 67 if (fsl_chan->edma->drvdata->version == v1) { in fsl_edma_disable_request() 68 edma_writeb(fsl_chan->edma, ch, regs->cerq); in fsl_edma_disable_request() 69 edma_writeb(fsl_chan->edma, EDMA_CEEI_CEEI(ch), regs->ceei); in fsl_edma_disable_request() 113 u32 dmamux_nr = fsl_chan->edma->drvdata->dmamuxs; in fsl_edma_chan_mux() [all …]
|
D | mcf-edma.c | 10 #include <linux/platform_data/dma-mcf-edma.h> 12 #include "fsl-edma-common.h" 107 IORESOURCE_IRQ, "edma-tx-00-15"); in mcf_edma_irq_init() 112 ret |= request_irq(i, mcf_edma_tx_handler, 0, "eDMA", mcf_edma); in mcf_edma_irq_init() 117 IORESOURCE_IRQ, "edma-tx-16-55"); in mcf_edma_irq_init() 122 ret |= request_irq(i, mcf_edma_tx_handler, 0, "eDMA", mcf_edma); in mcf_edma_irq_init() 126 ret = platform_get_irq_byname(pdev, "edma-tx-56-63"); in mcf_edma_irq_init() 129 0, "eDMA", mcf_edma); in mcf_edma_irq_init() 134 ret = platform_get_irq_byname(pdev, "edma-err"); in mcf_edma_irq_init() 137 0, "eDMA", mcf_edma); in mcf_edma_irq_init() [all …]
|
D | fsl-edma.c | 3 * drivers/dma/fsl-edma.c 7 * Driver for the Freescale eDMA engine with flexible channel multiplexing 8 * capability for DMA request sources. The eDMA block can be found on some 22 #include "fsl-edma-common.h" 142 fsl_edma->txirq = platform_get_irq_byname(pdev, "edma-tx"); in fsl_edma_irq_init() 146 fsl_edma->errirq = platform_get_irq_byname(pdev, "edma-err"); in fsl_edma_irq_init() 152 fsl_edma_irq_handler, 0, "eDMA", fsl_edma); in fsl_edma_irq_init() 154 dev_err(&pdev->dev, "Can't register eDMA IRQ.\n"); in fsl_edma_irq_init() 159 fsl_edma_tx_handler, 0, "eDMA tx", fsl_edma); in fsl_edma_irq_init() 161 dev_err(&pdev->dev, "Can't register eDMA tx IRQ.\n"); in fsl_edma_irq_init() [all …]
|
D | fsl-edma-common.h | 120 struct fsl_edma_engine *edma; member 174 * The eDMA controller's endian is independent of the CPU core's endian. 178 static inline u32 edma_readl(struct fsl_edma_engine *edma, void __iomem *addr) in edma_readl() argument 180 if (edma->big_endian) in edma_readl() 186 static inline void edma_writeb(struct fsl_edma_engine *edma, in edma_writeb() argument 190 if (edma->big_endian) in edma_writeb() 196 static inline void edma_writew(struct fsl_edma_engine *edma, in edma_writew() argument 200 if (edma->big_endian) in edma_writew() 206 static inline void edma_writel(struct fsl_edma_engine *edma, in edma_writel() argument 209 if (edma->big_endian) in edma_writel() [all …]
|
D | ep93xx_dma.c | 135 * @edma: pointer to the engine device 166 const struct ep93xx_dma_engine *edma; member 744 edmac->edma->hw_submit(edmac); in ep93xx_dma_advance_work() 802 switch (edmac->edma->hw_interrupt(edmac)) { in ep93xx_dma_interrupt() 850 edmac->edma->hw_submit(edmac); in ep93xx_dma_tx_submit() 875 if (!edmac->edma->m2m) { in ep93xx_dma_alloc_chan_resources() 910 ret = edmac->edma->hw_setup(edmac); in ep93xx_dma_alloc_chan_resources() 962 edmac->edma->hw_shutdown(edmac); in ep93xx_dma_free_chan_resources() 1044 if (!edmac->edma->m2m && dir != ep93xx_dma_chan_direction(chan)) { in ep93xx_dma_prep_slave_sg() 1125 if (!edmac->edma->m2m && dir != ep93xx_dma_chan_direction(chan)) { in ep93xx_dma_prep_dma_cyclic() [all …]
|
D | Makefile | 32 obj-$(CONFIG_DW_EDMA) += dw-edma/ 35 obj-$(CONFIG_FSL_EDMA) += fsl-edma.o fsl-edma-common.o 36 obj-$(CONFIG_MCF_EDMA) += mcf-edma.o fsl-edma-common.o
|
/Linux-v6.1/Documentation/devicetree/bindings/dma/ |
D | fsl,edma.yaml | 4 $id: http://devicetree.org/schemas/dma/fsl,edma.yaml# 7 title: Freescale enhanced Direct Memory Access(eDMA) Controller 10 The eDMA channels have multiplex capability by programmable 22 - fsl,vf610-edma 23 - fsl,imx7ulp-edma 25 - const: fsl,ls1028a-edma 26 - const: fsl,vf610-edma 55 eDMA are implemented in big endian mode, otherwise in little mode. 72 const: fsl,vf610-edma 83 - const: edma-tx [all …]
|
D | ti-edma.txt | 1 Texas Instruments eDMA 20 - reg: Memory map of eDMA CC 24 - ti,tptcs: List of TPTCs associated with the eDMA in the following form: 30 - ti,hwmods: Name of the hwmods associated to the eDMA CC. 40 - ti,edma-memcpy-channels: List of channels allocated to be used for memcpy, iow 42 - ti,edma-reserved-slot-ranges: PaRAM slot ranges which should not be used by 46 Single uint32 for EDMA with 32 channels, array of two uint32 for 47 EDMA with 64 channels. See example and 61 - reg: Memory map of eDMA TC 67 - ti,hwmods: Name of the hwmods associated to the eDMA TC. [all …]
|
D | ti-dma-crossbar.txt | 5 "ti,am335x-edma-crossbar" for AM335x and AM437x 8 for ti,dra7-dma-crossbar and <3> for ti,am335x-edma-crossbar. 20 memcpy channels in eDMA. 26 For ti,am335x-edma-crossbar: the meaning of parameters of dmas for clients: 29 When mux 0 is used the DMA channel can be requested directly from edma node.
|
/Linux-v6.1/drivers/dma/dw-edma/ |
D | Makefile | 3 obj-$(CONFIG_DW_EDMA) += dw-edma.o 4 dw-edma-$(CONFIG_DEBUG_FS) := dw-edma-v0-debugfs.o 5 dw-edma-objs := dw-edma-core.o \ 6 dw-edma-v0-core.o $(dw-edma-y) 7 obj-$(CONFIG_DW_EDMA_PCIE) += dw-edma-pcie.o
|
D | dw-edma-pcie.c | 4 * Synopsys DesignWare eDMA PCIe driver 13 #include <linux/dma/edma.h> 18 #include "dw-edma-core.h" 40 /* eDMA registers location */ 42 /* eDMA memory linked list location */ 45 /* eDMA memory data location */ 56 /* eDMA registers location */ 60 /* eDMA memory linked list location */ 73 /* eDMA memory data location */ 181 pci_err(pdev, "eDMA BAR I/O remapping failed\n"); in dw_edma_pcie_probe() [all …]
|
D | Kconfig | 4 tristate "Synopsys DesignWare eDMA controller driver" 9 Support the Synopsys DesignWare eDMA controller, normally 13 tristate "Synopsys DesignWare eDMA PCIe driver" 18 eDMA controller and an endpoint PCIe device. This also serves
|
D | dw-edma-v0-debugfs.c | 4 * Synopsys DesignWare eDMA v0 core 12 #include "dw-edma-v0-debugfs.h" 13 #include "dw-edma-v0-regs.h" 14 #include "dw-edma-core.h" 131 /* eDMA global registers */ in dw_edma_debugfs_regs_wr() 136 /* eDMA interrupts registers */ in dw_edma_debugfs_regs_wr() 152 /* eDMA channel context grouping */ in dw_edma_debugfs_regs_wr() 199 /* eDMA global registers */ in dw_edma_debugfs_regs_rd() 204 /* eDMA interrupts registers */ in dw_edma_debugfs_regs_rd() 221 /* eDMA channel context grouping */ in dw_edma_debugfs_regs_rd()
|
D | dw-edma-v0-core.h | 4 * Synopsys DesignWare eDMA v0 core 12 #include <linux/dma/edma.h> 14 /* eDMA management callbacks */ 24 /* eDMA debug fs callbacks */
|
D | dw-edma-v0-debugfs.h | 4 * Synopsys DesignWare eDMA v0 core 12 #include <linux/dma/edma.h>
|
/Linux-v6.1/arch/arm/boot/dts/ |
D | dm814x.dtsi | 267 dmas = <&edma 16 0 &edma 17 0 268 &edma 18 0 &edma 19 0 269 &edma 20 0 &edma 21 0 270 &edma 22 0 &edma 23 0>; 284 dmas = <&edma 42 0 &edma 43 0 285 &edma 44 0 &edma 45 0>; 289 /* Board must configure dmas with edma_xbar for EDMA */ 342 dmas = <&edma 26 0 &edma 27 0>; 352 dmas = <&edma 28 0 &edma 29 0>; 362 dmas = <&edma 30 0 &edma 31 0>; [all …]
|
D | dm816x.dtsi | 149 edma: dma@0 { label 162 ti,edma-memcpy-channels = <20 21>; 296 dmas = <&edma 52 0>; 418 dmas = <&edma 16 0 &edma 17 0 419 &edma 18 0 &edma 19 0 420 &edma 20 0 &edma 21 0 421 &edma 22 0 &edma 23 0>; 431 dmas = <&edma 24 0 &edma 25 0>; 531 dmas = <&edma 26 0 &edma 27 0>; 541 dmas = <&edma 28 0 &edma 29 0>; [all …]
|
/Linux-v6.1/arch/arm/mach-davinci/ |
D | asp.h | 28 /* EDMA channels of dm644x and dm355 */ 34 /* EDMA channels of dm646x */ 39 /* EDMA channels of da850/da830 McASP0 */ 43 /* EDMA channels of da830 McASP1 */ 47 /* EDMA channels of da830 McASP2 */
|
/Linux-v6.1/sound/soc/ti/ |
D | edma-pcm.c | 3 * edma-pcm.c - eDMA PCM driver using dmaengine for AM3xxx, AM4xxx 19 #include "edma-pcm.h" 31 .periods_max = 19, /* Limit by edma dmaengine driver */ 62 MODULE_DESCRIPTION("eDMA PCM ASoC platform driver");
|
D | Makefile | 4 snd-soc-ti-edma-objs := edma-pcm.o 8 obj-$(CONFIG_SND_SOC_TI_EDMA_PCM) += snd-soc-ti-edma.o
|
D | edma-pcm.h | 3 * edma-pcm.h - eDMA PCM driver using dmaengine for AM3xxx, AM4xxx
|
/Linux-v6.1/include/linux/dma/ |
D | edma.h | 4 * Synopsys DesignWare eDMA core driver 37 * enum dw_edma_chip_flags - Flags specific to an eDMA chip 38 * @DW_EDMA_CHIP_LOCAL: eDMA is used locally by an endpoint 45 * struct dw_edma_chip - representation of DesignWare eDMA controller hardware 46 * @dev: struct device of the eDMA controller
|
/Linux-v6.1/include/linux/platform_data/ |
D | dma-mcf-edma.h | 3 * Freescale eDMA platform data, ColdFire SoC's family. 27 * struct mcf_edma_platform_data - platform specific data for eDMA engine 29 * @ver The eDMA module version. 30 * @dma_channels The number of eDMA channels.
|
D | edma.h | 3 * TI EDMA definitions 22 * buffer or for several discontiguous smaller buffers. An EDMA transfer 28 * The EDMA Channel Controller (CC) maps requests from channels into physical 62 /* platform_data for EDMA driver */
|
/Linux-v6.1/arch/m68k/coldfire/ |
D | device.c | 23 #include <linux/platform_data/edma.h> 24 #include <linux/platform_data/dma-mcf-edma.h> 520 .name = "edma-tx-00-15", 526 .name = "edma-tx-16-55", 532 .name = "edma-tx-56-63", 538 .name = "edma-err", 545 .name = "mcf-edma",
|