xref: /linux/Documentation/devicetree/bindings/dma/mv-xor.txt (revision cf40a76e7d5874bb25f4404eecc58a2e033af885)
1f7d12ef5SThomas Petazzoni* Marvell XOR engines
2f7d12ef5SThomas Petazzoni
3f7d12ef5SThomas PetazzoniRequired properties:
4*ac5f0f3fSMarcin Wojtas- compatible: Should be one of the following:
5*ac5f0f3fSMarcin Wojtas  - "marvell,orion-xor"
6*ac5f0f3fSMarcin Wojtas  - "marvell,armada-380-xor"
7*ac5f0f3fSMarcin Wojtas  - "marvell,armada-3700-xor".
8f7d12ef5SThomas Petazzoni- reg: Should contain registers location and length (two sets)
9f7d12ef5SThomas Petazzoni    the first set is the low registers, the second set the high
10f7d12ef5SThomas Petazzoni    registers for the XOR engine.
11f7d12ef5SThomas Petazzoni- clocks: pointer to the reference clock
12f7d12ef5SThomas Petazzoni
13f7d12ef5SThomas PetazzoniThe DT node must also contains sub-nodes for each XOR channel that the
14f7d12ef5SThomas PetazzoniXOR engine has. Those sub-nodes have the following required
15f7d12ef5SThomas Petazzoniproperties:
16f7d12ef5SThomas Petazzoni- interrupts: interrupt of the XOR channel
17f7d12ef5SThomas Petazzoni
186d8f7abdSThomas PetazzoniThe sub-nodes used to contain one or several of the following
196d8f7abdSThomas Petazzoniproperties, but they are now deprecated:
20f7d12ef5SThomas Petazzoni- dmacap,memcpy to indicate that the XOR channel is capable of memcpy operations
21f7d12ef5SThomas Petazzoni- dmacap,memset to indicate that the XOR channel is capable of memset operations
22f7d12ef5SThomas Petazzoni- dmacap,xor to indicate that the XOR channel is capable of xor operations
236d8f7abdSThomas Petazzoni- dmacap,interrupt to indicate that the XOR channel is capable of
246d8f7abdSThomas Petazzoni  generating interrupts
25f7d12ef5SThomas Petazzoni
26f7d12ef5SThomas PetazzoniExample:
27f7d12ef5SThomas Petazzoni
28f7d12ef5SThomas Petazzonixor@d0060900 {
29f7d12ef5SThomas Petazzoni	compatible = "marvell,orion-xor";
30f7d12ef5SThomas Petazzoni	reg = <0xd0060900 0x100
31f7d12ef5SThomas Petazzoni	       0xd0060b00 0x100>;
32f7d12ef5SThomas Petazzoni	clocks = <&coreclk 0>;
33f7d12ef5SThomas Petazzoni
34f7d12ef5SThomas Petazzoni	xor00 {
35f7d12ef5SThomas Petazzoni	      interrupts = <51>;
36f7d12ef5SThomas Petazzoni	};
37f7d12ef5SThomas Petazzoni	xor01 {
38f7d12ef5SThomas Petazzoni	      interrupts = <52>;
39f7d12ef5SThomas Petazzoni	};
40f7d12ef5SThomas Petazzoni};
41