On 12/8/2023 3:10 AM, Andrew Lunn wrote: >> + mdio-mux-2 { >> + compatible = "mdio-mux-multiplexer"; >> + mux-controls = <&mdio_mux>; >> + mdio-parent-bus = <&icssg1_mdio>; >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + mdio@0 { >> + reg = <0x0>; >> + #address-cells = <1>; >> + #size-cells = <0>; >> + >> + icssg1_phy2: ethernet-phy@3 { >> + reg = <3>; >> + tx-internal-delay-ps = <250>; >> + rx-internal-delay-ps = <2000>; >> + }; >> + }; > > That looks odd. A mux generally has > 1 mdio bus. Otherwise its not > really a mux. > We are disabling node `mdio-mux-1` which has the `cpsw3g_mdio` bus and then adding a new node `mdio-mux-2` which has the `icssg1_mdio` bus. The mux can actually have two different mdio buses. The patch actually disables the mux1 node and creates a new node for icssg1_mdio bus so that cpsw3g mdio bus is disabled properly. We can modify the existing `mdio-mux-1` as well (added the code below) instead of disabling mux1 and creating mux2 node. &mdio_mux_1 { mdio-parent-bus = <&icssg1_mdio>; #address-cells = <1>; #size-cells = <0>; mdio@0 { reg = <0x0>; #address-cells = <1>; #size-cells = <0>; icssg1_phy2: ethernet-phy@3 { reg = <3>; tx-internal-delay-ps = <250>; rx-internal-delay-ps = <2000>; }; }; }; Let me know what do you think. Is the approach in the patch correct or should I modify existing mux node only? > And this mux hardware exists all the time right? So it should be in > the .dtsi file. > Agreed. But the mdio-mux-1 node was added in k3-am642-evm.dts by the commit 985204ecae1c37d55372874ff9146231d28fccc6. I did the same with mdio-mux-2 node. > Andrew -- Thanks and Regards, Md Danish Anwar