From: Alex Marginean Date: Wed, 7 Aug 2019 16:30:03 +0000 (+0300) Subject: arm: dts: ls1028a-qds: define the MDIO MUX X-Git-Tag: v2019.10-rc4~6^2~9 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=a3ce94b6024b93e7ab2ceaf7a6dc08c590bb3f5a;p=oweals%2Fu-boot.git arm: dts: ls1028a-qds: define the MDIO MUX 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 Reviewed-by: Priyanka Jain --- diff --git a/arch/arm/dts/fsl-ls1028a-qds.dts b/arch/arm/dts/fsl-ls1028a-qds.dts index 3fb35f186d..5d143ba077 100644 --- a/arch/arm/dts/fsl-ls1028a-qds.dts +++ b/arch/arm/dts/fsl-ls1028a-qds.dts @@ -33,12 +33,65 @@ &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>; @@ -108,7 +161,4 @@ &mdio0 { status = "okay"; - qds_phy0: phy@5 { - reg = <5>; - }; };