Commit 8874d92b authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull dmaengine updates from Vinod Koul:
 "Unusually, more new driver and device support than updates. Couple of
  new device support, AMD, Rcar, Intel and New drivers in Freescale,
  Loonsoon, AMD and LPC32XX with DT conversion and mode updates etc.

  New support:
   - Support for AMD Versal Gen 2 DMA IP
   - Rcar RZ/G3S SoC dma controller
   - Support for Intel Diamond Rapids and Granite Rapids-D dma controllers
   - Support for Freescale ls1021a-qdma controller
   - New driver for Loongson-1 APB DMA
   - New driver for AMD QDMA
   - Pl08x in LPC32XX router dma driver

  Updates:
   - Support for dpdma cyclic dma mode
   - XML conversion for marvell xor dma bindings
   - Dma clocks documentation for imx dma"

* tag 'dmaengine-6.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/dmaengine: (24 commits)
  dmaengine: loongson1-apb-dma: Fix the build warning caused by the size of pdev_irqname
  dmaengine: Fix spelling mistakes
  dmaengine: Add dma router for pl08x in LPC32XX SoC
  dmaengine: fsl-edma: add edma src ID check at request channel
  dmaengine: fsl-edma: change to guard(mutex) within fsl_edma3_xlate()
  dmaengine: avoid non-constant format string
  dmaengine: imx-dma: Remove i.MX21 support
  dt-bindings: dma: fsl,imx-dma: Document the DMA clocks
  dmaengine: Loongson1: Add Loongson-1 APB DMA driver
  dt-bindings: dma: Add Loongson-1 APB DMA
  dmaengine: zynqmp_dma: Add support for AMD Versal Gen 2 DMA IP
  dt-bindings: dmaengine: zynqmp_dma: Add a new compatible string
  dmaengine: idxd: Add new DSA and IAA device IDs for Diamond Rapids platform
  dmaengine: idxd: Add a new DSA device ID for Granite Rapids-D platform
  dmaengine: ti: k3-udma: Remove unused declarations
  dmaengine: amd: qdma: Add AMD QDMA driver
  dmaengine: xilinx: dpdma: Add support for cyclic dma mode
  dma: ipu: Remove include/linux/dma/ipu-dma.h
  dt-bindings: dma: fsl-mxs-dma: Add compatible string "fsl,imx8qxp-dma-apbh"
  dt-bindings: fsl-qdma: allow compatible string fallback to fsl,ls1021a-qdma
  ...
parents fbb86b0d e0bee4bc
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -28,6 +28,14 @@ properties:
      - description: DMA Error interrupt
    minItems: 1

  clocks:
    maxItems: 2

  clock-names:
    items:
      - const: ipg
      - const: ahb

  "#dma-cells":
    const: 1

@@ -42,15 +50,21 @@ required:
  - reg
  - interrupts
  - "#dma-cells"
  - clocks
  - clock-names

additionalProperties: false

examples:
  - |
    #include <dt-bindings/clock/imx27-clock.h>

    dma-controller@10001000 {
      compatible = "fsl,imx27-dma";
      reg = <0x10001000 0x1000>;
      interrupts = <32 33>;
      #dma-cells = <1>;
      dma-channels = <16>;
      clocks = <&clks IMX27_CLK_DMA_IPG_GATE>, <&clks IMX27_CLK_DMA_AHB_GATE>;
      clock-names = "ipg", "ahb";
    };
+15 −0
Original line number Diff line number Diff line
@@ -11,6 +11,17 @@ maintainers:

allOf:
  - $ref: dma-controller.yaml#
  - if:
      properties:
        compatible:
          contains:
            const: fsl,imx8qxp-dma-apbh
    then:
      required:
        - power-domains
    else:
      properties:
        power-domains: false

properties:
  compatible:
@@ -20,6 +31,7 @@ properties:
              - fsl,imx6q-dma-apbh
              - fsl,imx6sx-dma-apbh
              - fsl,imx7d-dma-apbh
              - fsl,imx8qxp-dma-apbh
          - const: fsl,imx28-dma-apbh
      - enum:
          - fsl,imx23-dma-apbh
@@ -42,6 +54,9 @@ properties:
  dma-channels:
    enum: [4, 8, 16]

  power-domains:
    maxItems: 1

required:
  - compatible
  - reg
+8 −5
Original line number Diff line number Diff line
@@ -11,11 +11,14 @@ maintainers:

properties:
  compatible:
    enum:
      - fsl,ls1021a-qdma
    oneOf:
      - const: fsl,ls1021a-qdma
      - items:
          - enum:
              - fsl,ls1028a-qdma
              - fsl,ls1043a-qdma
              - fsl,ls1046a-qdma
          - const: fsl,ls1021a-qdma

  reg:
    items:
+65 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/dma/loongson,ls1b-apbdma.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Loongson-1 APB DMA Controller

maintainers:
  - Keguang Zhang <keguang.zhang@gmail.com>

description:
  Loongson-1 APB DMA controller provides 3 independent channels for
  peripherals such as NAND, audio playback and capture.

properties:
  compatible:
    oneOf:
      - const: loongson,ls1b-apbdma
      - items:
          - enum:
              - loongson,ls1a-apbdma
              - loongson,ls1c-apbdma
          - const: loongson,ls1b-apbdma

  reg:
    maxItems: 1

  interrupts:
    items:
      - description: NAND interrupt
      - description: Audio playback interrupt
      - description: Audio capture interrupt

  interrupt-names:
    items:
      - const: ch0
      - const: ch1
      - const: ch2

  '#dma-cells':
    const: 1

required:
  - compatible
  - reg
  - interrupts
  - interrupt-names
  - '#dma-cells'

additionalProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>
    dma-controller@1fd01160 {
        compatible = "loongson,ls1b-apbdma";
        reg = <0x1fd01160 0x4>;
        interrupt-parent = <&intc0>;
        interrupts = <13 IRQ_TYPE_EDGE_RISING>,
                     <14 IRQ_TYPE_EDGE_RISING>,
                     <15 IRQ_TYPE_EDGE_RISING>;
        interrupt-names = "ch0", "ch1", "ch2";
        #dma-cells = <1>;
    };
+61 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/dma/marvell,xor-v2.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Marvell XOR v2 engines

maintainers:
  - Andrew Lunn <andrew@lunn.ch>

properties:
  compatible:
    oneOf:
      - const: marvell,xor-v2
      - items:
          - enum:
              - marvell,armada-7k-xor
          - const: marvell,xor-v2

  reg:
    items:
      - description: DMA registers
      - description: global registers

  clocks:
    minItems: 1
    maxItems: 2

  clock-names:
    minItems: 1
    items:
      - const: core
      - const: reg

  msi-parent:
    description:
      Phandle to the MSI-capable interrupt controller used for
      interrupts.
    maxItems: 1

  dma-coherent: true

required:
  - compatible
  - reg
  - msi-parent
  - dma-coherent

additionalProperties: false

examples:
  - |
    xor0@6a0000 {
        compatible = "marvell,armada-7k-xor", "marvell,xor-v2";
        reg = <0x6a0000 0x1000>, <0x6b0000 0x1000>;
        clocks = <&ap_clk 0>, <&ap_clk 1>;
        clock-names = "core", "reg";
        msi-parent = <&gic_v2m0>;
        dma-coherent;
    };
Loading