xref: /linux/Documentation/devicetree/bindings/dma/marvell,orion-xor.yaml (revision 196dacf4541afcbccbef9c3697231af354bbab13)
1*245dd180SRob Herring (Arm)# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*245dd180SRob Herring (Arm)%YAML 1.2
3*245dd180SRob Herring (Arm)---
4*245dd180SRob Herring (Arm)$id: http://devicetree.org/schemas/dma/marvell,orion-xor.yaml#
5*245dd180SRob Herring (Arm)$schema: http://devicetree.org/meta-schemas/core.yaml#
6*245dd180SRob Herring (Arm)
7*245dd180SRob Herring (Arm)title: Marvell XOR engine
8*245dd180SRob Herring (Arm)
9*245dd180SRob Herring (Arm)maintainers:
10*245dd180SRob Herring (Arm)  - Andrew Lunn <andrew@lunn.ch>
11*245dd180SRob Herring (Arm)  - Gregory Clement <gregory.clement@bootlin.com>
12*245dd180SRob Herring (Arm)
13*245dd180SRob Herring (Arm)properties:
14*245dd180SRob Herring (Arm)  compatible:
15*245dd180SRob Herring (Arm)    oneOf:
16*245dd180SRob Herring (Arm)      - items:
17*245dd180SRob Herring (Arm)          - const: marvell,armada-380-xor
18*245dd180SRob Herring (Arm)          - const: marvell,orion-xor
19*245dd180SRob Herring (Arm)      - enum:
20*245dd180SRob Herring (Arm)          - marvell,armada-3700-xor
21*245dd180SRob Herring (Arm)          - marvell,orion-xor
22*245dd180SRob Herring (Arm)
23*245dd180SRob Herring (Arm)  reg:
24*245dd180SRob Herring (Arm)    items:
25*245dd180SRob Herring (Arm)      - description: Low registers for the XOR engine
26*245dd180SRob Herring (Arm)      - description: High registers for the XOR engine
27*245dd180SRob Herring (Arm)
28*245dd180SRob Herring (Arm)  clocks:
29*245dd180SRob Herring (Arm)    maxItems: 1
30*245dd180SRob Herring (Arm)
31*245dd180SRob Herring (Arm)patternProperties:
32*245dd180SRob Herring (Arm)  "^(channel|xor)[0-9]+$":
33*245dd180SRob Herring (Arm)    description: XOR channel sub-node
34*245dd180SRob Herring (Arm)    type: object
35*245dd180SRob Herring (Arm)    additionalProperties: false
36*245dd180SRob Herring (Arm)
37*245dd180SRob Herring (Arm)    properties:
38*245dd180SRob Herring (Arm)      interrupts:
39*245dd180SRob Herring (Arm)        description: Interrupt specifier for the XOR channel
40*245dd180SRob Herring (Arm)        items:
41*245dd180SRob Herring (Arm)          - description: Interrupt for this channel
42*245dd180SRob Herring (Arm)
43*245dd180SRob Herring (Arm)      dmacap,memcpy:
44*245dd180SRob Herring (Arm)        type: boolean
45*245dd180SRob Herring (Arm)        deprecated: true
46*245dd180SRob Herring (Arm)        description:
47*245dd180SRob Herring (Arm)          Indicates that the XOR channel is capable of memcpy operations
48*245dd180SRob Herring (Arm)
49*245dd180SRob Herring (Arm)      dmacap,memset:
50*245dd180SRob Herring (Arm)        type: boolean
51*245dd180SRob Herring (Arm)        deprecated: true
52*245dd180SRob Herring (Arm)        description:
53*245dd180SRob Herring (Arm)          Indicates that the XOR channel is capable of memset operations
54*245dd180SRob Herring (Arm)
55*245dd180SRob Herring (Arm)      dmacap,xor:
56*245dd180SRob Herring (Arm)        type: boolean
57*245dd180SRob Herring (Arm)        deprecated: true
58*245dd180SRob Herring (Arm)        description:
59*245dd180SRob Herring (Arm)          Indicates that the XOR channel is capable of xor operations
60*245dd180SRob Herring (Arm)
61*245dd180SRob Herring (Arm)    required:
62*245dd180SRob Herring (Arm)      - interrupts
63*245dd180SRob Herring (Arm)
64*245dd180SRob Herring (Arm)required:
65*245dd180SRob Herring (Arm)  - compatible
66*245dd180SRob Herring (Arm)  - reg
67*245dd180SRob Herring (Arm)
68*245dd180SRob Herring (Arm)additionalProperties: false
69*245dd180SRob Herring (Arm)
70*245dd180SRob Herring (Arm)examples:
71*245dd180SRob Herring (Arm)  - |
72*245dd180SRob Herring (Arm)    xor@d0060900 {
73*245dd180SRob Herring (Arm)        compatible = "marvell,orion-xor";
74*245dd180SRob Herring (Arm)        reg = <0xd0060900 0x100>,
75*245dd180SRob Herring (Arm)              <0xd0060b00 0x100>;
76*245dd180SRob Herring (Arm)        clocks = <&coreclk 0>;
77*245dd180SRob Herring (Arm)
78*245dd180SRob Herring (Arm)        xor00 {
79*245dd180SRob Herring (Arm)            interrupts = <51>;
80*245dd180SRob Herring (Arm)        };
81*245dd180SRob Herring (Arm)        xor01 {
82*245dd180SRob Herring (Arm)            interrupts = <52>;
83*245dd180SRob Herring (Arm)        };
84*245dd180SRob Herring (Arm)    };
85