xref: /linux/Documentation/devicetree/bindings/mips/lantiq/rcu.txt (revision bfd5bb6f90af092aa345b15cd78143956a13c2a8)
1Lantiq XWAY SoC RCU binding
2===========================
3
4This binding describes the RCU (reset controller unit) multifunction device,
5where each sub-device has it's own set of registers.
6
7The RCU register range is used for multiple purposes. Mostly one device
8uses one or multiple register exclusively, but for some registers some
9bits are for one driver and some other bits are for a different driver.
10With this patch all accesses to the RCU registers will go through
11syscon.
12
13
14-------------------------------------------------------------------------------
15Required properties:
16- compatible	: The first and second values must be:
17		  "lantiq,xrx200-rcu", "simple-mfd", "syscon"
18- reg		: The address and length of the system control registers
19
20
21-------------------------------------------------------------------------------
22Example of the RCU bindings on a xRX200 SoC:
23	rcu0: rcu@203000 {
24		compatible = "lantiq,xrx200-rcu", "simple-mfd", "syscon";
25		reg = <0x203000 0x100>;
26		ranges = <0x0 0x203000 0x100>;
27		big-endian;
28
29		gphy0: gphy@20 {
30			compatible = "lantiq,xrx200a2x-gphy";
31			reg = <0x20 0x4>;
32
33			resets = <&reset0 31 30>, <&reset1 7 7>;
34			reset-names = "gphy", "gphy2";
35			lantiq,gphy-mode = <GPHY_MODE_GE>;
36		};
37
38		gphy1: gphy@68 {
39			compatible = "lantiq,xrx200a2x-gphy";
40			reg = <0x68 0x4>;
41
42			resets = <&reset0 29 28>, <&reset1 6 6>;
43			reset-names = "gphy", "gphy2";
44			lantiq,gphy-mode = <GPHY_MODE_GE>;
45		};
46
47		reset0: reset-controller@10 {
48			compatible = "lantiq,xrx200-reset";
49			reg = <0x10 4>, <0x14 4>;
50
51			#reset-cells = <2>;
52		};
53
54		reset1: reset-controller@48 {
55			compatible = "lantiq,xrx200-reset";
56			reg = <0x48 4>, <0x24 4>;
57
58			#reset-cells = <2>;
59		};
60
61		usb_phy0: usb2-phy@18 {
62			compatible = "lantiq,xrx200-usb2-phy";
63			reg = <0x18 4>, <0x38 4>;
64
65			resets = <&reset1 4 4>, <&reset0 4 4>;
66			reset-names = "phy", "ctrl";
67			#phy-cells = <0>;
68		};
69
70		usb_phy1: usb2-phy@34 {
71			compatible = "lantiq,xrx200-usb2-phy";
72			reg = <0x34 4>, <0x3C 4>;
73
74			resets = <&reset1 5 4>, <&reset0 4 4>;
75			reset-names = "phy", "ctrl";
76			#phy-cells = <0>;
77		};
78
79		reboot@10 {
80			compatible = "syscon-reboot";
81			reg = <0x10 4>;
82
83			regmap = <&rcu0>;
84			offset = <0x10>;
85			mask = <0x40000000>;
86		};
87	};
88