aboutsummaryrefslogtreecommitdiff
path: root/Documentation/devicetree/bindings/powerpc/fsl/raideng.txt
blob: 4ad29b9ac2acf93bb212e4b1d80650ccc0964eb1 (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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
* Freescale 85xx RAID Engine nodes

RAID Engine nodes are defined to describe on-chip RAID accelerators.  Each RAID
Engine should have a separate node.

Supported chips:
P5020, P5040

Required properties:

- compatible:	Should contain "fsl,raideng-v1.0" as the value
		This identifies RAID Engine block. 1 in 1.0 represents
		major number whereas 0 represents minor number. The
		version matches the hardware IP version.
- reg:		offset and length of the register set for the device
- ranges:	standard ranges property specifying the translation
		between child address space and parent address space

Example:
	/* P5020 */
	raideng: raideng@320000 {
		compatible = "fsl,raideng-v1.0";
		#address-cells = <1>;
		#size-cells = <1>;
		reg	= <0x320000 0x10000>;
		ranges	= <0 0x320000 0x10000>;
	};


There must be a sub-node for each job queue present in RAID Engine
This node must be a sub-node of the main RAID Engine node

- compatible:	Should contain "fsl,raideng-v1.0-job-queue" as the value
		This identifies the job queue interface
- reg:		offset and length of the register set for job queue
- ranges:	standard ranges property specifying the translation
		between child address space and parent address space

Example:
	/* P5020 */
	raideng_jq0@1000 {
		compatible = "fsl,raideng-v1.0-job-queue";
		reg	   = <0x1000 0x1000>;
		ranges	   = <0x0 0x1000 0x1000>;
	};


There must be a sub-node for each job ring present in RAID Engine
This node must be a sub-node of job queue node

- compatible:	Must contain "fsl,raideng-v1.0-job-ring" as the value
		This identifies job ring. Should contain either
		"fsl,raideng-v1.0-hp-ring" or "fsl,raideng-v1.0-lp-ring"
		depending upon whether ring has high or low priority
- reg:		offset and length of the register set for job ring
- interrupts:	interrupt mapping for job ring IRQ

Optional property:

- fsl,liodn:	Specifies the LIODN to be used for Job Ring. This
		property is normally set by firmware. Value
		is of 12-bits which is the LIODN number for this JR.
		This property is used by the IOMMU (PAMU) to distinquish
		transactions from this JR and than be able to do address
		translation & protection accordingly.

Example:
	/* P5020 */
	raideng_jq0@1000 {
		compatible = "fsl,raideng-v1.0-job-queue";
		reg	   = <0x1000 0x1000>;
		ranges	   = <0x0 0x1000 0x1000>;

		raideng_jr0: jr@0 {
			compatible = "fsl,raideng-v1.0-job-ring", "fsl,raideng-v1.0-hp-ring";
			reg	   = <0x0 0x400>;
			interrupts = <139 2 0 0>;
			interrupt-parent = <&mpic>;
			fsl,liodn = <0x41>;
		};
	};