1f3f6743dSEmil MedveQorIQ DPAA Queue Manager Portals Device Tree Binding
2f3f6743dSEmil Medve
3f3f6743dSEmil MedveCopyright (C) 2008 - 2014 Freescale Semiconductor Inc.
4f3f6743dSEmil Medve
5f3f6743dSEmil MedveCONTENTS
6f3f6743dSEmil Medve
7f3f6743dSEmil Medve	- QMan Portal
8f3f6743dSEmil Medve	- Example
9f3f6743dSEmil Medve
10f3f6743dSEmil MedveQMan Portal Node
11f3f6743dSEmil Medve
12f3f6743dSEmil MedvePortals are memory mapped interfaces to QMan that allow low-latency, lock-less
13f3f6743dSEmil Medveinteraction by software running on processor cores, accelerators and network
14f3f6743dSEmil Medveinterfaces with the QMan
15f3f6743dSEmil Medve
16f3f6743dSEmil MedvePROPERTIES
17f3f6743dSEmil Medve
18f3f6743dSEmil Medve- compatible
19f3f6743dSEmil Medve	Usage:		Required
20f3f6743dSEmil Medve	Value type:	<stringlist>
21f3f6743dSEmil Medve	Definition:	Must include "fsl,qman-portal-<hardware revision>"
22f3f6743dSEmil Medve			May include "fsl,<SoC>-qman-portal" or "fsl,qman-portal"
23f3f6743dSEmil Medve
24f3f6743dSEmil Medve- reg
25f3f6743dSEmil Medve	Usage:		Required
26f3f6743dSEmil Medve	Value type:	<prop-encoded-array>
27f3f6743dSEmil Medve	Definition:	Two regions. The first is the cache-enabled region of
28f3f6743dSEmil Medve			the portal. The second is the cache-inhibited region of
29f3f6743dSEmil Medve			the portal
30f3f6743dSEmil Medve
31f3f6743dSEmil Medve- interrupts
32f3f6743dSEmil Medve	Usage:		Required
33f3f6743dSEmil Medve	Value type:	<prop-encoded-array>
34f3f6743dSEmil Medve	Definition:	Standard property
35f3f6743dSEmil Medve
36f3f6743dSEmil Medve- fsl,liodn
37f3f6743dSEmil Medve	Usage:		See pamu.txt
38f3f6743dSEmil Medve	Value type:	<prop-encoded-array>
39f3f6743dSEmil Medve	Definition:	Two LIODN(s). DQRR LIODN (DLIODN) and Frame LIODN
40f3f6743dSEmil Medve			(FLIODN)
41f3f6743dSEmil Medve
42f3f6743dSEmil Medve- fsl,iommu-parent
43f3f6743dSEmil Medve	Usage:		See pamu.txt
44f3f6743dSEmil Medve	Value type:	<phandle>
45f3f6743dSEmil Medve	Definition:	PAMU property used for dynamic LIODN assignment
46f3f6743dSEmil Medve
47f3f6743dSEmil Medve	For additional details about the PAMU/LIODN binding(s) see pamu.txt
48f3f6743dSEmil Medve
49e9326deaSScott Wood- cell-index
50f3f6743dSEmil Medve	Usage:		Required
51f3f6743dSEmil Medve	Value type:	<u32>
52f3f6743dSEmil Medve	Definition:	The hardware index of the channel. This can also be
53f3f6743dSEmil Medve			determined by dividing any of the channel's 8 work queue
54f3f6743dSEmil Medve			IDs by 8
55f3f6743dSEmil Medve
56f3f6743dSEmil MedveIn addition to these properties the qman-portals should have sub-nodes to
57f3f6743dSEmil Medverepresent the HW devices/portals that are connected to the software portal
58f3f6743dSEmil Medvedescribed here
59f3f6743dSEmil Medve
60f3f6743dSEmil MedveThe currently supported sub-nodes are:
61f3f6743dSEmil Medve	* fman0
62f3f6743dSEmil Medve	* fman1
63f3f6743dSEmil Medve	* pme
64f3f6743dSEmil Medve	* crypto
65f3f6743dSEmil Medve
66f3f6743dSEmil MedveThese subnodes should have the following properties:
67f3f6743dSEmil Medve
68f3f6743dSEmil Medve- fsl,liodn
69f3f6743dSEmil Medve	Usage:		See pamu.txt
70f3f6743dSEmil Medve	Value type:	<prop-encoded-array>
71f3f6743dSEmil Medve	Definition:	PAMU property used for static LIODN assignment
72f3f6743dSEmil Medve
73f3f6743dSEmil Medve- fsl,iommu-parent
74f3f6743dSEmil Medve	Usage:		See pamu.txt
75f3f6743dSEmil Medve	Value type:	<phandle>
76f3f6743dSEmil Medve	Definition:	PAMU property used for dynamic LIODN assignment
77f3f6743dSEmil Medve
78f3f6743dSEmil Medve- dev-handle
79f3f6743dSEmil Medve	Usage:		Required
80f3f6743dSEmil Medve	Value type:	<phandle>
81f3f6743dSEmil Medve	Definition:	The phandle to the particular hardware device that this
82f3f6743dSEmil Medve			portal is connected to.
83f3f6743dSEmil Medve
84f3f6743dSEmil MedveEXAMPLE
85f3f6743dSEmil Medve
86f3f6743dSEmil MedveThe example below shows a (P4080) QMan portals container/bus node with two portals
87f3f6743dSEmil Medve
88f3f6743dSEmil Medve	qman-portals@ff4200000 {
89f3f6743dSEmil Medve		#address-cells = <1>;
90f3f6743dSEmil Medve		#size-cells = <1>;
91f3f6743dSEmil Medve		compatible = "simple-bus";
92f3f6743dSEmil Medve		ranges = <0 0xf 0xf4200000 0x200000>;
93f3f6743dSEmil Medve
94f3f6743dSEmil Medve		qman-portal@0 {
95f3f6743dSEmil Medve			compatible = "fsl,qman-portal-1.2.0", "fsl,qman-portal";
96f3f6743dSEmil Medve			reg = <0 0x4000>, <0x100000 0x1000>;
97f3f6743dSEmil Medve			interrupts = <104 2 0 0>;
98f3f6743dSEmil Medve			fsl,liodn = <1 2>;
99f3f6743dSEmil Medve			fsl,qman-channel-id = <0>;
100f3f6743dSEmil Medve
101f3f6743dSEmil Medve			fman0 {
102f3f6743dSEmil Medve				fsl,liodn = <0x21>;
103f3f6743dSEmil Medve				dev-handle = <&fman0>;
104f3f6743dSEmil Medve			};
105f3f6743dSEmil Medve			fman1 {
106f3f6743dSEmil Medve				fsl,liodn = <0xa1>;
107f3f6743dSEmil Medve				dev-handle = <&fman1>;
108f3f6743dSEmil Medve			};
109f3f6743dSEmil Medve			crypto {
110f3f6743dSEmil Medve				fsl,liodn = <0x41 0x66>;
111f3f6743dSEmil Medve				dev-handle = <&crypto>;
112f3f6743dSEmil Medve			};
113f3f6743dSEmil Medve		};
114f3f6743dSEmil Medve		qman-portal@4000 {
115f3f6743dSEmil Medve			compatible = "fsl,qman-portal-1.2.0", "fsl,qman-portal";
116f3f6743dSEmil Medve			reg = <0x4000 0x4000>, <0x101000 0x1000>;
117f3f6743dSEmil Medve			interrupts = <106 2 0 0>;
118f3f6743dSEmil Medve			fsl,liodn = <3 4>;
119e9326deaSScott Wood			cell-index = <1>;
120f3f6743dSEmil Medve
121f3f6743dSEmil Medve			fman0 {
122f3f6743dSEmil Medve				fsl,liodn = <0x22>;
123f3f6743dSEmil Medve				dev-handle = <&fman0>;
124f3f6743dSEmil Medve			};
125f3f6743dSEmil Medve			fman1 {
126f3f6743dSEmil Medve				fsl,liodn = <0xa2>;
127f3f6743dSEmil Medve				dev-handle = <&fman1>;
128f3f6743dSEmil Medve			};
129f3f6743dSEmil Medve			crypto {
130f3f6743dSEmil Medve				fsl,liodn = <0x42 0x67>;
131f3f6743dSEmil Medve				dev-handle = <&crypto>;
132f3f6743dSEmil Medve			};
133f3f6743dSEmil Medve		};
134f3f6743dSEmil Medve	};
135