blob: 6611a7c2053ae669c89c3d74ba7aec836c54bdc7 [file] [log] [blame]
Bhupesh Sharmaa5565a22015-01-25 02:42:51 +05301* Freescale Management Complex
2
3The Freescale Management Complex (fsl-mc) is a hardware resource
4manager that manages specialized hardware objects used in
5network-oriented packet processing applications. After the fsl-mc
6block is enabled, pools of hardware resources are available, such as
7queues, buffer pools, I/O interfaces. These resources are building
8blocks that can be used to create functional hardware objects/devices
9such as network interfaces, crypto accelerator instances, L2 switches,
10etc.
11
12Required properties:
13
14 - compatible
15 Value type: <string>
16 Definition: Must be "fsl,qoriq-mc". A Freescale Management Complex
17 compatible with this binding must have Block Revision
18 Registers BRR1 and BRR2 at offset 0x0BF8 and 0x0BFC in
19 the MC control register region.
20
21 - reg
22 Value type: <prop-encoded-array>
23 Definition: A standard property. Specifies one or two regions
24 defining the MC's registers:
25
26 -the first region is the command portal for the
27 this machine and must always be present
28
29 -the second region is the MC control registers. This
30 region may not be present in some scenarios, such
31 as in the device tree presented to a virtual machine.
32
Stuart Yoder85222402016-04-19 16:53:08 -050033 - msi-parent
34 Value type: <phandle>
35 Definition: Must be present and point to the MSI controller node
36 handling message interrupts for the MC.
37
38 - ranges
39 Value type: <prop-encoded-array>
40 Definition: A standard property. Defines the mapping between the child
41 MC address space and the parent system address space.
42
43 The MC address space is defined by 3 components:
44 <region type> <offset hi> <offset lo>
45
46 Valid values for region type are
47 0x0 - MC portals
48 0x1 - QBMAN portals
49
50 - #address-cells
51 Value type: <u32>
52 Definition: Must be 3. (see definition in 'ranges' property)
53
54 - #size-cells
55 Value type: <u32>
56 Definition: Must be 1.
57
58Sub-nodes:
59
60 The fsl-mc node may optionally have dpmac sub-nodes that describe
61 the relationship between the Ethernet MACs which belong to the MC
62 and the Ethernet PHYs on the system board.
63
64 The dpmac nodes must be under a node named "dpmacs" which contains
65 the following properties:
66
67 - #address-cells
68 Value type: <u32>
69 Definition: Must be present if dpmac sub-nodes are defined and must
70 have a value of 1.
71
72 - #size-cells
73 Value type: <u32>
74 Definition: Must be present if dpmac sub-nodes are defined and must
75 have a value of 0.
76
77 These nodes must have the following properties:
78
79 - compatible
80 Value type: <string>
81 Definition: Must be "fsl,qoriq-mc-dpmac".
82
83 - reg
84 Value type: <prop-encoded-array>
85 Definition: Specifies the id of the dpmac.
86
87 - phy-handle
88 Value type: <phandle>
89 Definition: Specifies the phandle to the PHY device node associated
90 with the this dpmac.
91
Bhupesh Sharmaa5565a22015-01-25 02:42:51 +053092Example:
93
94 fsl_mc: fsl-mc@80c000000 {
95 compatible = "fsl,qoriq-mc";
96 reg = <0x00000008 0x0c000000 0 0x40>, /* MC portal base */
97 <0x00000000 0x08340000 0 0x40000>; /* MC control reg */
Stuart Yoder85222402016-04-19 16:53:08 -050098 msi-parent = <&its>;
99 #address-cells = <3>;
100 #size-cells = <1>;
Bhupesh Sharmaa5565a22015-01-25 02:42:51 +0530101
Stuart Yoder85222402016-04-19 16:53:08 -0500102 /*
103 * Region type 0x0 - MC portals
104 * Region type 0x1 - QBMAN portals
105 */
106 ranges = <0x0 0x0 0x0 0x8 0x0c000000 0x4000000
107 0x1 0x0 0x0 0x8 0x18000000 0x8000000>;
108
109 dpmacs {
110 #address-cells = <1>;
111 #size-cells = <0>;
112
113 dpmac@1 {
114 compatible = "fsl,qoriq-mc-dpmac";
115 reg = <1>;
116 phy-handle = <&mdio0_phy0>;
117 }
118 }
119 };