arm: dts: ls1028a-qds: define the MDIO MUX
authorAlex Marginean <alexandru.marginean@nxp.com>
Wed, 7 Aug 2019 16:30:03 +0000 (19:30 +0300)
committerPriyanka Jain <priyanka.jain@nxp.com>
Thu, 12 Sep 2019 10:45:31 +0000 (16:15 +0530)
Add the device-tree structure describing the MUX in board dts.

QDS board has an on-board RGMII PHY and 4 slots for extension cards.
All these can be accessed over MDIO through a MDIO MUX controlled
over I2C.

Signed-off-by: Alex Marginean <alexm.osslist@gmail.com>
Reviewed-by: Priyanka Jain <priyanka.jain@nxp.com>
arch/arm/dts/fsl-ls1028a-qds.dts

index 3fb35f186d6465562741992a7dbcdf84ada58137..5d143ba07702e1b8bb62b64d52e04abc715fb342 100644 (file)
 
 &esdhc1 {
        status = "okay";
+
 };
 
 &i2c0 {
        status = "okay";
        u-boot,dm-pre-reloc;
 
+       fpga@66 {
+               #address-cells = <1>;
+               #size-cells = <0>;
+               compatible = "simple-mfd";
+               reg = <0x66>;
+
+               mux-mdio@54 {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+                       compatible = "mdio-mux-i2creg";
+                       reg = <0x54>;
+                       #mux-control-cells = <1>;
+                       mux-reg-masks = <0x54 0xf0>;
+                       mdio-parent-bus = <&mdio0>;
+
+                       /* on-board MDIO with a single RGMII PHY */
+                       mdio@00 {
+                               #address-cells = <1>;
+                               #size-cells = <0>;
+                               reg = <0x00>;
+
+                               qds_phy0: phy@5 {
+                                       reg = <5>;
+                               };
+                       };
+                       /* slot 1 */
+                       slot1: mdio@40 {
+                               #address-cells = <1>;
+                               #size-cells = <0>;
+                               reg = <0x40>;
+                       };
+                       /* slot 2 */
+                       slot2: mdio@50 {
+                               #address-cells = <1>;
+                               #size-cells = <0>;
+                               reg = <0x50>;
+                       };
+                       /* slot 3 */
+                       slot3: mdio@60 {
+                               #address-cells = <1>;
+                               #size-cells = <0>;
+                               reg = <0x60>;
+                       };
+                       /* slot 4 */
+                       slot4: mdio@70 {
+                               #address-cells = <1>;
+                               #size-cells = <0>;
+                               reg = <0x70>;
+                       };
+               };
+       };
+
        i2c-mux@77 {
                compatible = "nxp,pca9547";
                reg = <0x77>;
 
 &mdio0 {
        status = "okay";
-       qds_phy0: phy@5 {
-               reg = <5>;
-       };
 };