Home
last modified time | relevance | path

Searched +full:dma +full:- +full:coherent (Results 1 – 25 of 382) sorted by relevance

12345678910>>...16

/kernel/linux/linux-5.10/arch/arc/mm/
Ddma.c1 // 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/
Daxc003_idu.dtsi1 // 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 …]
Daxc003.dtsi1 // 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/
Ddma-coherent.c1 // 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/
Dzynqmp_dma.txt1 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/
Dcoherent.c1 // 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 …]
Dmapping.c1 // 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/
Dapm-xgene-dma.txt1 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 …]
Darm-pl330.txt1 * 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/
Dti,sa2ul.yaml1 # 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/
Ddma-mapping-nommu.c1 // 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 …]
Ddma-mapping.c1 // 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/
Dstingray-usb.dtsi1 // 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/
Dbcm-nsp.dtsi33 #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/
Dplatform.c1 // 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/
Ddevice.c1 // 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/
Ddma-noncoherent.c1 // 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/
Dahci-fsl-qoriq.txt4 - 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;
Dapm-xgene.txt1 * 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/
Ddma.rst1 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/
Dxgene-pci.txt1 * 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 …]
Dhisilicon-pcie.txt6 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/
Darmada-ap810-ap0.dtsi1 // 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/
Dgasket_page_table.h1 /* 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/
Ddma-iommu.c1 // 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 …]

12345678910>>...16