/kernel/linux/linux-5.10/arch/arc/mm/ |
D | dma.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com) 6 #include <linux/dma-map-ops.h> 11 * ARCH specific callbacks for generic noncoherent DMA ops 12 * - hardware IOC not available (or "dma-coherent" not set for device in DT) 13 * - But still handle both coherent and non-coherent requests from caller 15 * For DMA coherent hardware (IOC) generic code suffices 23 * Yeah this bit us - STAR 9000898266 in arch_dma_prep_coherent() 37 * dma-mapping: provide a generic dma-noncoherent implementation)" 40 * |---------------------------------------------------------------- [all …]
|
/kernel/linux/linux-5.10/arch/arc/boot/dts/ |
D | axc003_idu.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 14 #address-cells = <2>; 15 #size-cells = <2>; 18 compatible = "simple-bus"; 19 #address-cells = <1>; 20 #size-cells = <1>; 24 input_clk: input-clk { 25 #clock-cells = <0>; 26 compatible = "fixed-clock"; 27 clock-frequency = <33333333>; [all …]
|
D | axc003.dtsi | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2014-15 Synopsys, Inc. (www.synopsys.com) 14 #address-cells = <2>; 15 #size-cells = <2>; 18 compatible = "simple-bus"; 19 #address-cells = <1>; 20 #size-cells = <1>; 24 input_clk: input-clk { 25 #clock-cells = <0>; 26 compatible = "fixed-clock"; [all …]
|
/kernel/linux/linux-5.10/arch/c6x/mm/ |
D | dma-coherent.c | 1 // SPDX-License-Identifier: GPL-2.0-only 8 * DMA uncached mapping support. 11 * Copyright (C) 2000-2004 Russell King 18 #include <linux/dma-map-ops.h> 26 * DMA coherent memory management, can be redefined using the memdma= 41 * Return a DMA coherent and contiguous memory chunk from the DMA memory 58 u32 pos = (addr - dma_base) >> PAGE_SHIFT; in __free_dma_pages() 71 * Allocate DMA coherent memory space and return both the kernel 72 * virtual and DMA address for that space. 84 order = get_count_order(((size - 1) >> PAGE_SHIFT) + 1); in arch_dma_alloc() [all …]
|
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/dma/xilinx/ |
D | zynqmp_dma.txt | 1 Xilinx ZynqMP DMA engine, it does support memory to memory transfers, 3 control and rate control support for slave/peripheral dma access. 6 - compatible : Should be "xlnx,zynqmp-dma-1.0" 7 - reg : Memory map for gdma/adma module access. 8 - interrupts : Should contain DMA channel interrupt. 9 - xlnx,bus-width : Axi buswidth in bits. Should contain 128 or 64 10 - clock-names : List of input clocks "clk_main", "clk_apb" 14 - dma-coherent : Present if dma operations are coherent. 18 fpd_dma_chan1: dma@fd500000 { 19 compatible = "xlnx,zynqmp-dma-1.0"; [all …]
|
/kernel/linux/linux-5.10/kernel/dma/ |
D | coherent.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Coherent per-device memory handling. 10 #include <linux/dma-direct.h> 11 #include <linux/dma-map-ops.h> 27 if (dev && dev->dma_mem) in dev_get_coherent_memory() 28 return dev->dma_mem; in dev_get_coherent_memory() 35 if (mem->use_dev_dma_pfn_offset) in dma_get_device_base() 36 return phys_to_dma(dev, PFN_PHYS(mem->pfn_base)); in dma_get_device_base() 37 return mem->device_base; in dma_get_device_base() 51 ret = -EINVAL; in dma_init_coherent_memory() [all …]
|
D | mapping.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * arch-independent dma-mapping routines 10 #include <linux/dma-map-ops.h> 20 * Managed DMA API 33 dma_free_attrs(dev, this->size, this->vaddr, this->dma_handle, in dmam_release() 34 this->attrs); in dmam_release() 41 if (this->vaddr == match->vaddr) { in dmam_match() 42 WARN_ON(this->size != match->size || in dmam_match() 43 this->dma_handle != match->dma_handle); in dmam_match() 50 * dmam_free_coherent - Managed dma_free_coherent() [all …]
|
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/dma/ |
D | apm-xgene-dma.txt | 1 Applied Micro X-Gene SoC DMA nodes 3 DMA nodes are defined to describe on-chip DMA interfaces in 4 APM X-Gene SoC. 6 Required properties for DMA interfaces: 7 - compatible: Should be "apm,xgene-dma". 8 - device_type: set to "dma". 9 - reg: Address and length of the register set for the device. 11 1st - DMA control and status register address space. 12 2nd - Descriptor ring control and status register address space. 13 3rd - Descriptor ring command register address space. [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 …]
|
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/crypto/ |
D | ti,sa2ul.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only or BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Tero Kristo <t-kristo@ti.com> 15 - ti,j721e-sa2ul 16 - ti,am654-sa2ul 21 power-domains: 26 - description: TX DMA Channel 27 - description: RX DMA Channel #1 28 - description: RX DMA Channel #2 [all …]
|
/kernel/linux/linux-5.10/arch/arm/mm/ |
D | dma-mapping-nommu.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Based on linux/arch/arm/mm/dma-mapping.c 5 * Copyright (C) 2000-2004 Russell King 10 #include <linux/dma-direct.h> 11 #include <linux/dma-map-ops.h> 19 #include "dma.h" 23 * - MMU/MPU is off 24 * - cpu is v7m w/o cache support 25 * - device is coherent 28 * arm_nommu_dma_ops rely on consistent DMA memory (please, refer to [all …]
|
D | dma-mapping.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * linux/arch/arm/mm/dma-mapping.c 5 * Copyright (C) 2000-2004 Russell King 7 * DMA uncached mapping support. 17 #include <linux/dma-direct.h> 18 #include <linux/dma-map-ops.h> 33 #include <asm/dma-iommu.h> 36 #include <xen/swiotlb-xen.h> 38 #include "dma.h" 60 #define COHERENT 1 macro [all …]
|
/kernel/linux/linux-5.10/arch/arm64/boot/dts/broadcom/stingray/ |
D | stingray-usb.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0 or BSD-3-Clause) 6 compatible = "simple-bus"; 7 #address-cells = <2>; 8 #size-cells = <2>; 13 * to 40-bit 15 dma-ranges = <0 0 0 0 0x100 0x0>; 17 usbphy0: usb-phy@0 { 18 compatible = "brcm,sr-usb-combo-phy"; 20 #phy-cells = <1>; 25 compatible = "generic-xhci"; [all …]
|
/kernel/linux/linux-5.10/arch/arm/boot/dts/ |
D | bcm-nsp.dtsi | 33 #include <dt-bindings/interrupt-controller/arm-gic.h> 34 #include <dt-bindings/interrupt-controller/irq.h> 35 #include <dt-bindings/clock/bcm-nsp.h> 38 #address-cells = <1>; 39 #size-cells = <1>; 42 interrupt-parent = <&gic>; 53 #address-cells = <1>; 54 #size-cells = <0>; 58 compatible = "arm,cortex-a9"; 59 next-level-cache = <&L2>; [all …]
|
/kernel/linux/linux-5.10/arch/arc/plat-hsdk/ |
D | platform.c | 1 // SPDX-License-Identifier: GPL-2.0-only 36 * --------------------- in hsdk_enable_gpio_intc_wire() 37 * | snps,archs-intc | in hsdk_enable_gpio_intc_wire() 38 * --------------------- in hsdk_enable_gpio_intc_wire() 40 * ---------------------- in hsdk_enable_gpio_intc_wire() 41 * | snps,archs-idu-intc | in hsdk_enable_gpio_intc_wire() 42 * ---------------------- in hsdk_enable_gpio_intc_wire() 46 * ------------------- in hsdk_enable_gpio_intc_wire() 47 * | snps,dw-apb-intc | in hsdk_enable_gpio_intc_wire() 48 * ------------------- in hsdk_enable_gpio_intc_wire() [all …]
|
/kernel/linux/linux-5.10/drivers/of/ |
D | device.c | 1 // SPDX-License-Identifier: GPL-2.0 8 #include <linux/dma-direct.h> /* for bus_dma_region */ 9 #include <linux/dma-map-ops.h> 20 * of_match_device - Tell if a struct device matches an of_device_id list 30 if ((!matches) || (!dev->of_node)) in of_match_device() 32 return of_match_node(matches, dev->of_node); in of_match_device() 42 tmp = get_device(&dev->dev); in of_dev_get() 53 put_device(&dev->dev); in of_dev_put() 59 BUG_ON(ofdev->dev.of_node == NULL); in of_device_add() 63 ofdev->name = dev_name(&ofdev->dev); in of_device_add() [all …]
|
/kernel/linux/linux-5.10/arch/mips/mm/ |
D | dma-noncoherent.c | 1 // SPDX-License-Identifier: GPL-2.0 4 * Copyright (C) 2000, 2001, 06 Ralf Baechle <ralf@linux-mips.org> 7 #include <linux/dma-direct.h> 8 #include <linux/dma-map-ops.h> 12 #include <asm/cpu-type.h> 13 #include <asm/dma-coherence.h> 19 * flush post-DMA. 21 * Warning on the terminology - Linux calls an uncached area coherent; MIPS 22 * terminology calls memory areas with hardware maintained coherency coherent. 25 * However this function is only called on non-I/O-coherent systems and only the [all …]
|
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/ata/ |
D | ahci-fsl-qoriq.txt | 4 - reg: Physical base address and size of the controller's register area. 5 - compatible: Compatibility string. Must be 'fsl,<chip>-ahci', where 7 - clocks: Input clock specifier. Refer to common clock bindings. 8 - interrupts: Interrupt specifier. Refer to interrupt binding. 11 - dma-coherent: Enable AHCI coherent DMA operation. 12 - reg-names: register area names when there are more than 1 register area. 16 compatible = "fsl,ls1021a-ahci"; 20 dma-coherent;
|
D | apm-xgene.txt | 1 * APM X-Gene 6.0 Gb/s SATA host controller nodes 3 SATA host controller nodes are defined to describe on-chip Serial ATA 7 - compatible : Shall contain: 8 * "apm,xgene-ahci" 9 - reg : First memory resource shall be the AHCI memory 19 - interrupts : Interrupt-specifier for SATA host controller IRQ. 20 - clocks : Reference to the clock entry. 21 - phys : A list of phandles + phy-specifiers, one for each 22 entry in phy-names. 23 - phy-names : Should contain: [all …]
|
/kernel/linux/linux-5.10/Documentation/driver-api/usb/ |
D | dma.rst | 1 USB DMA 5 over how DMA may be used to perform I/O operations. The APIs are detailed 11 The big picture is that USB drivers can continue to ignore most DMA issues, 12 though they still must provide DMA-ready buffers (see 13 :doc:`/core-api/dma-api-howto`). That's how they've worked through 14 the 2.4 (and earlier) kernels, or they can now be DMA-aware. 16 DMA-aware usb drivers: 18 - New calls enable DMA-aware drivers, letting them allocate dma buffers and 19 manage dma mappings for existing dma-ready buffers (see below). 21 - URBs have an additional "transfer_dma" field, as well as a transfer_flags [all …]
|
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/pci/ |
D | xgene-pci.txt | 1 * AppliedMicro X-Gene PCIe interface 4 - device_type: set to "pci" 5 - compatible: should contain "apm,xgene-pcie" to identify the core. 6 - reg: A list of physical base address and length for each set of controller 7 registers. Must contain an entry for each entry in the reg-names 9 - reg-names: Must include the following entries: 12 - #address-cells: set to <3> 13 - #size-cells: set to <2> 14 - ranges: ranges for the outbound memory, I/O regions. 15 - dma-ranges: ranges for the inbound memory regions. [all …]
|
D | hisilicon-pcie.txt | 6 Documentation/devicetree/bindings/pci/designware-pcie.txt. 11 - compatible: Should contain "hisilicon,hip05-pcie" or "hisilicon,hip06-pcie". 12 - reg: Should contain rc_dbi, config registers location and length. 13 - reg-names: Must include the following entries: 16 - msi-parent: Should be its_pcie which is an ITS receiving MSI interrupts. 17 - port-id: Should be 0, 1, 2 or 3. 20 - status: Either "ok" or "disabled". 21 - dma-coherent: Present if DMA operations are coherent. 25 compatible = "hisilicon,hip05-pcie", "snps,dw-pcie"; 27 reg-names = "rc_dbi", "config"; [all …]
|
/kernel/linux/linux-5.10/arch/arm64/boot/dts/marvell/ |
D | armada-ap810-ap0.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 8 #include <dt-bindings/interrupt-controller/arm-gic.h> 10 /dts-v1/; 14 compatible = "marvell,armada-ap810"; 15 #address-cells = <2>; 16 #size-cells = <2>; 24 compatible = "arm,psci-0.2"; 28 ap810-ap0 { 29 #address-cells = <2>; 30 #size-cells = <2>; [all …]
|
/kernel/linux/linux-5.10/drivers/staging/gasket/ |
D | gasket_page_table.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 5 * As much as possible, internal details are hidden to simplify use - 6 * all calls are thread-safe (protected by an internal mutex) except where 42 * Description: Allocates and initializes data to track address translation - 44 * partitioned such that all addresses are "simple" (single-level lookup). 62 * thread-safe (mutex-protected)! 76 * Returns 0 if successful, or non-zero if the page table entries 94 * Returns 0 if successful or a non-zero error number otherwise. 101 * Un-map host pages from device memory. 128 * Description: Examines the page table and frees any currently-unused [all …]
|
/kernel/linux/linux-5.10/drivers/iommu/ |
D | dma-iommu.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * A fairly generic DMA-API to IOMMU-API glue layer. 5 * Copyright (C) 2014-2015 ARM Ltd. 7 * based in part on arch/arm/mm/dma-mapping.c: 8 * Copyright (C) 2000-2004 Russell King 13 #include <linux/dma-map-ops.h> 14 #include <linux/dma-iommu.h> 54 if (cookie->type == IOMMU_DMA_IOVA_COOKIE) in cookie_msi_granule() 55 return cookie->iovad.granule; in cookie_msi_granule() 65 INIT_LIST_HEAD(&cookie->msi_page_list); in cookie_alloc() [all …]
|