xref: /linux/Documentation/devicetree/bindings/dma/loongson,ls1b-apbdma.yaml (revision 8874d92b579bf86f61f044ab43a4cd961d112269)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/dma/loongson,ls1b-apbdma.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Loongson-1 APB DMA Controller
8
9maintainers:
10  - Keguang Zhang <keguang.zhang@gmail.com>
11
12description:
13  Loongson-1 APB DMA controller provides 3 independent channels for
14  peripherals such as NAND, audio playback and capture.
15
16properties:
17  compatible:
18    oneOf:
19      - const: loongson,ls1b-apbdma
20      - items:
21          - enum:
22              - loongson,ls1a-apbdma
23              - loongson,ls1c-apbdma
24          - const: loongson,ls1b-apbdma
25
26  reg:
27    maxItems: 1
28
29  interrupts:
30    items:
31      - description: NAND interrupt
32      - description: Audio playback interrupt
33      - description: Audio capture interrupt
34
35  interrupt-names:
36    items:
37      - const: ch0
38      - const: ch1
39      - const: ch2
40
41  '#dma-cells':
42    const: 1
43
44required:
45  - compatible
46  - reg
47  - interrupts
48  - interrupt-names
49  - '#dma-cells'
50
51additionalProperties: false
52
53examples:
54  - |
55    #include <dt-bindings/interrupt-controller/irq.h>
56    dma-controller@1fd01160 {
57        compatible = "loongson,ls1b-apbdma";
58        reg = <0x1fd01160 0x4>;
59        interrupt-parent = <&intc0>;
60        interrupts = <13 IRQ_TYPE_EDGE_RISING>,
61                     <14 IRQ_TYPE_EDGE_RISING>,
62                     <15 IRQ_TYPE_EDGE_RISING>;
63        interrupt-names = "ch0", "ch1", "ch2";
64        #dma-cells = <1>;
65    };
66