summaryrefslogtreecommitdiff
path: root/Documentation/devicetree/bindings/dma/sifive,fu540-c000-pdma.yaml
blob: 47c46af255368e7866a35428a1db6d8649341ddb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/dma/sifive,fu540-c000-pdma.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: SiFive Unleashed Rev C000 Platform DMA

maintainers:
  - Green Wan <green.wan@sifive.com>
  - Palmer Debbelt <palmer@sifive.com>
  - Paul Walmsley <paul.walmsley@sifive.com>

description: |
  Platform DMA is a DMA engine of SiFive Unleashed. It supports 4
  channels. Each channel has 2 interrupts. One is for DMA done and
  the other is for DME error.

  In different SoC, DMA could be attached to different IRQ line.
  DT file need to be changed to meet the difference. For technical
  doc,

  https://static.dev.sifive.com/FU540-C000-v1.0.pdf

allOf:
  - $ref: "dma-controller.yaml#"

properties:
  compatible:
    items:
      - const: sifive,fu540-c000-pdma

  reg:
    maxItems: 1

  interrupts:
    minItems: 1
    maxItems: 8

  '#dma-cells':
    const: 1

required:
  - compatible
  - reg
  - interrupts

unevaluatedProperties: false

examples:
  - |
    dma-controller@3000000 {
      compatible = "sifive,fu540-c000-pdma";
      reg = <0x3000000 0x8000>;
      interrupts = <23>, <24>, <25>, <26>, <27>, <28>, <29>, <30>;
      #dma-cells = <1>;
    };

...