dt-bindings: phy: Modify Broadcom NS USB 3.0 PHY binding to use MDIO
authorRafał Miłecki <rafal@milecki.pl>
Thu, 8 Jun 2017 20:04:27 +0000 (22:04 +0200)
committerKishon Vijay Abraham I <kishon@ti.com>
Fri, 16 Jun 2017 07:52:26 +0000 (13:22 +0530)
Thanks to work done by Broadcom explaining their USB 3.0 PHY details we
know it's attached to the MDIO bus. Use this knowledge to update the
binding: make it a subnode to the MDIO bus and rework way of specifying
required registers. This will describe hardware more precisely and will
allow to support (describe) more devices attached to the MDIO.

While compatibility strings remain the same there isn't a direct
conflict (compatibility breakage) for the binding. Originally it wasn't
supposed to be used for MDIO subnode so this change should be safe
unless some operating system was probing MDIO subnodes as standalone
devices.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Acked-by: Rob Herring <robh@kernel.org>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Documentation/devicetree/bindings/phy/bcm-ns-usb3-phy.txt

index 09aeba94538dd3c65af35996b8b8b031660618b0..32f05726035194b30ac01a5a34dfb6c2336146a3 100644 (file)
@@ -3,9 +3,10 @@ Driver for Broadcom Northstar USB 3.0 PHY
 Required properties:
 
 - compatible: one of: "brcm,ns-ax-usb3-phy", "brcm,ns-bx-usb3-phy".
-- reg: register mappings for DMP (Device Management Plugin) and ChipCommon B
-       MMI.
-- reg-names: "dmp" and "ccb-mii"
+- reg: address of MDIO bus device
+- usb3-dmp-syscon: phandle to syscon with DMP (Device Management Plugin)
+                  registers
+- #phy-cells: must be 0
 
 Initialization of USB 3.0 PHY depends on Northstar version. There are currently
 three known series: Ax, Bx and Cx.
@@ -15,9 +16,19 @@ Known B1: BCM4707 rev 6
 Known C0: BCM47094 rev 0
 
 Example:
-       usb3-phy {
-               compatible = "brcm,ns-ax-usb3-phy";
-               reg = <0x18105000 0x1000>, <0x18003000 0x1000>;
-               reg-names = "dmp", "ccb-mii";
-               #phy-cells = <0>;
+       mdio: mdio@0 {
+               reg = <0x0>;
+               #size-cells = <1>;
+               #address-cells = <0>;
+
+               usb3-phy@10 {
+                       compatible = "brcm,ns-ax-usb3-phy";
+                       reg = <0x10>;
+                       usb3-dmp-syscon = <&usb3_dmp>;
+                       #phy-cells = <0>;
+               };
+       };
+
+       usb3_dmp: syscon@18105000 {
+               reg = <0x18105000 0x1000>;
        };