[PATCH v5 07/16] Documentation: DT: MIPS: lantiq: Add docs for the RCU bindings
Rob Herring
robh at kernel.org
Fri Jun 23 15:12:24 PDT 2017
On Wed, Jun 21, 2017 at 12:37:34AM +0200, Hauke Mehrtens wrote:
> From: Martin Blumenstingl <martin.blumenstingl at googlemail.com>
>
> This adds the initial documentation for the RCU module (a MFD device
> which provides USB PHYs, reset controllers and more).
>
> 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.
>
> Signed-off-by: Hauke Mehrtens <hauke at hauke-m.de>
> ---
> .../devicetree/bindings/mips/lantiq/rcu.txt | 95 ++++++++++++++++++++++
> 1 file changed, 95 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/mips/lantiq/rcu.txt
>
> diff --git a/Documentation/devicetree/bindings/mips/lantiq/rcu.txt b/Documentation/devicetree/bindings/mips/lantiq/rcu.txt
> new file mode 100644
> index 000000000000..9c875f4f3c90
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/mips/lantiq/rcu.txt
> @@ -0,0 +1,95 @@
> +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 at 203000 {
> + compatible = "lantiq,xrx200-rcu", "simple-mfd", "syscon";
> + reg = <0x203000 0x100>;
> + ranges = <0x0 0x203000 0x100>;
> + big-endian;
> +
> + gphy0: gphy at 0 {
unit address should match reg, so "phy at 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 at 1 {
phy at 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 at 0 {
... at 10
> + compatible = "lantiq,xrx200-reset";
> +
> + offset-set = <0x10>;
> + offset-status = <0x14>;
reg = <0x10 8>;
> + #reset-cells = <2>;
> + };
> +
> + reset1: reset-controller at 1 {
> + compatible = "lantiq,xrx200-reset";
> +
> + offset-set = <0x48>;
> + offset-status = <0x24>;
reg = <0x48 4>, <0x24 4>;
> + #reset-cells = <2>;
> + };
> +
> + usb_phy0: usb2-phy at 0 {
> + compatible = "lantiq,xrx200-usb2-phy";
> + status = "disabled";
> +
> + regmap = <&rcu0>;
This should be dropped.
> + offset-phy = <0x18>;
> + offset-ana = <0x38>;
Use reg.
> + resets = <&reset1 4 4>, <&reset0 4 4>;
> + reset-names = "phy", "ctrl";
> + #phy-cells = <0>;
> + };
> +
> + usb_phy1: usb2-phy at 1 {
> + compatible = "lantiq,xrx200-usb2-phy";
> + status = "disabled";
> +
> + regmap = <&rcu0>;
Drop.
> + offset-phy = <0x34>;
> + offset-ana = <0x3C>;
Use reg.
> + resets = <&reset1 5 4>, <&reset0 4 4>;
> + reset-names = "phy", "ctrl";
> + #phy-cells = <0>;
> + };
> +
> + reboot {
> + compatible = "syscon-reboot";
> +
> + regmap = <&rcu0>;
Drop.
> + offset = <0x10>;
> + mask = <0x40000000>;
> + };
> + };
> +
> --
> 2.11.0
>
More information about the linux-mtd
mailing list