ARM: dts: am57xx: fix networking on boards with ksz9031 phy
authorGrygorii Strashko <grygorii.strashko@ti.com>
Wed, 6 May 2020 19:11:24 +0000 (22:11 +0300)
committerTony Lindgren <tony@atomide.com>
Thu, 7 May 2020 17:50:40 +0000 (10:50 -0700)
Since commit bcf3440c6dd7 ("net: phy: micrel: add phy-mode support for the
KSZ9031 PHY") the networking is broken on boards:
 am571x-idk
 am572x-idk
 am574x-idk
 am57xx-beagle-x15

All above boards have phy-mode = "rgmii" and this is worked before because
KSZ9031 PHY started with default RGMII internal delays configuration (TX
off, RX on 1.2 ns) and MAC provided TX delay. After above commit, the
KSZ9031 PHY starts handling phy mode properly and disables RX delay, as
result networking is become broken.

Fix it by switching to phy-mode = "rgmii-rxid" to reflect previous
behavior.

Cc: Oleksij Rempel <o.rempel@pengutronix.de>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Philippe Schenker <philippe.schenker@toradex.com>
Fixes: bcf3440c6dd7 ("net: phy: micrel: add phy-mode support for the KSZ9031 PHY")
Reviewed-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
arch/arm/boot/dts/am571x-idk.dts
arch/arm/boot/dts/am57xx-beagle-x15-common.dtsi
arch/arm/boot/dts/am57xx-idk-common.dtsi

index 669559c..c13756f 100644 (file)
 
 &cpsw_port1 {
        phy-handle = <&ethphy0_sw>;
-       phy-mode = "rgmii";
+       phy-mode = "rgmii-rxid";
        ti,dual-emac-pvid = <1>;
 };
 
 &cpsw_port2 {
        phy-handle = <&ethphy1_sw>;
-       phy-mode = "rgmii";
+       phy-mode = "rgmii-rxid";
        ti,dual-emac-pvid = <2>;
 };
 
index a813a0c..5656753 100644 (file)
 
 &cpsw_emac0 {
        phy-handle = <&phy0>;
-       phy-mode = "rgmii";
+       phy-mode = "rgmii-rxid";
        dual_emac_res_vlan = <1>;
 };
 
 &cpsw_emac1 {
        phy-handle = <&phy1>;
-       phy-mode = "rgmii";
+       phy-mode = "rgmii-rxid";
        dual_emac_res_vlan = <2>;
 };
 
index aa5e55f..a3ff123 100644 (file)
 
 &cpsw_emac0 {
        phy-handle = <&ethphy0>;
-       phy-mode = "rgmii";
+       phy-mode = "rgmii-rxid";
        dual_emac_res_vlan = <1>;
 };
 
 &cpsw_emac1 {
        phy-handle = <&ethphy1>;
-       phy-mode = "rgmii";
+       phy-mode = "rgmii-rxid";
        dual_emac_res_vlan = <2>;
 };