90 lines
2.2 KiB
Plaintext
90 lines
2.2 KiB
Plaintext
|
Lantiq XWAY SoC RCU binding
|
||
|
===========================
|
||
|
|
||
|
This binding describes the RCU (reset controller unit) multifunction device,
|
||
|
where each sub-device has it's own set of registers.
|
||
|
|
||
|
The RCU register range is used for multiple purposes. Mostly one device
|
||
|
uses one or multiple register exclusively, but for some registers some
|
||
|
bits are for one driver and some other bits are for a different driver.
|
||
|
With this patch all accesses to the RCU registers will go through
|
||
|
syscon.
|
||
|
|
||
|
|
||
|
-------------------------------------------------------------------------------
|
||
|
Required properties:
|
||
|
- compatible : The first and second values must be:
|
||
|
"lantiq,xrx200-rcu", "simple-mfd", "syscon"
|
||
|
- reg : The address and length of the system control registers
|
||
|
|
||
|
|
||
|
-------------------------------------------------------------------------------
|
||
|
Example of the RCU bindings on a xRX200 SoC:
|
||
|
rcu0: rcu@203000 {
|
||
|
compatible = "lantiq,xrx200-rcu", "simple-mfd", "syscon";
|
||
|
reg = <0x203000 0x100>;
|
||
|
ranges = <0x0 0x203000 0x100>;
|
||
|
big-endian;
|
||
|
|
||
|
gphy0: gphy@20 {
|
||
|
compatible = "lantiq,xrx200a2x-gphy";
|
||
|
reg = <0x20 0x4>;
|
||
|
|
||
|
resets = <&reset0 31 30>, <&reset1 7 7>;
|
||
|
reset-names = "gphy", "gphy2";
|
||
|
lantiq,gphy-mode = <GPHY_MODE_GE>;
|
||
|
};
|
||
|
|
||
|
gphy1: gphy@68 {
|
||
|
compatible = "lantiq,xrx200a2x-gphy";
|
||
|
reg = <0x68 0x4>;
|
||
|
|
||
|
resets = <&reset0 29 28>, <&reset1 6 6>;
|
||
|
reset-names = "gphy", "gphy2";
|
||
|
lantiq,gphy-mode = <GPHY_MODE_GE>;
|
||
|
};
|
||
|
|
||
|
reset0: reset-controller@10 {
|
||
|
compatible = "lantiq,xrx200-reset";
|
||
|
reg = <0x10 4>, <0x14 4>;
|
||
|
|
||
|
#reset-cells = <2>;
|
||
|
};
|
||
|
|
||
|
reset1: reset-controller@48 {
|
||
|
compatible = "lantiq,xrx200-reset";
|
||
|
reg = <0x48 4>, <0x24 4>;
|
||
|
|
||
|
#reset-cells = <2>;
|
||
|
};
|
||
|
|
||
|
usb_phy0: usb2-phy@18 {
|
||
|
compatible = "lantiq,xrx200-usb2-phy";
|
||
|
reg = <0x18 4>, <0x38 4>;
|
||
|
status = "disabled";
|
||
|
|
||
|
resets = <&reset1 4 4>, <&reset0 4 4>;
|
||
|
reset-names = "phy", "ctrl";
|
||
|
#phy-cells = <0>;
|
||
|
};
|
||
|
|
||
|
usb_phy1: usb2-phy@34 {
|
||
|
compatible = "lantiq,xrx200-usb2-phy";
|
||
|
reg = <0x34 4>, <0x3C 4>;
|
||
|
status = "disabled";
|
||
|
|
||
|
resets = <&reset1 5 4>, <&reset0 4 4>;
|
||
|
reset-names = "phy", "ctrl";
|
||
|
#phy-cells = <0>;
|
||
|
};
|
||
|
|
||
|
reboot@10 {
|
||
|
compatible = "syscon-reboot";
|
||
|
reg = <0x10 4>;
|
||
|
|
||
|
regmap = <&rcu0>;
|
||
|
offset = <0x10>;
|
||
|
mask = <0x40000000>;
|
||
|
};
|
||
|
};
|