ath79: correct various phy-mode properties
authorDavid Bauer <mail@david-bauer.net>
Tue, 18 Jun 2019 22:07:12 +0000 (00:07 +0200)
committerPetr Štetiar <ynezz@true.cz>
Thu, 20 Jun 2019 06:57:36 +0000 (08:57 +0200)
Upstream commit 6d4cd04 changes how the internal delays of the AR803x
based PHYs are enabled. With this commit, all internal delays are
disabled on driver probe and enabled based on the 'phy-mode' property in
the device-tree.

Before this commit, the RX delay was always enabled upon soft-reset
while the TX delay retained it's previous state. A hard reset enabled
the RX delay while the TX delay was disabled.

Because of this inconsistency, wrongly specified PHY-modes were working
correctly while the hardware was in a different state.

Fix the PHY-modes of some affected devices (and clean up misplaced
properties along the way) to keep the devices working flawlessly with
kernels >= 5.1.

Signed-off-by: David Bauer <mail@david-bauer.net>
target/linux/ath79/dts/ar9344_ocedo_raccoon.dts
target/linux/ath79/dts/qca9558_devolo_dvl1200i.dts
target/linux/ath79/dts/qca9558_devolo_dvl1750c.dts
target/linux/ath79/dts/qca9558_devolo_dvl1750i.dts
target/linux/ath79/dts/qca9558_devolo_dvl1xxx.dtsi
target/linux/ath79/dts/qca9558_ocedo_koala.dts

index a1a912383f620f538b6e05217e9ae18e4a2677b6..812da3dea585e2c8385c49960a2cfd81ed18de54 100644 (file)
 
        phy0: ethernet-phy@0 {
                reg = <0>;
-               phy-mode = "rgmii";
        };
 };
 
 
        mtd-mac-address = <&art 0x0>;
 
-       phy-mode = "rgmii";
+       phy-mode = "rgmii-id";
        phy-handle = <&phy0>;
 };
index 5900d8b487d766e059ffecb506690d02203eb10f..a844ce777ce170a433b7ff42c10dfb6f17a77050 100644 (file)
@@ -40,6 +40,7 @@
 
 &eth0 {
        pll-data = <0xbe000000 0x80000101 0x80001313>;
+       phy-mode = "rgmii-id";
 };
 
 &gmac_config {
index b5a295440641120f69147e9b58da6e76361c8009..567f3c9ee48333138faf52d9b5fdb6d4bbf3b16e 100644 (file)
        };
 };
 
+&eth0 {
+       phy-mode = "rgmii-id";
+};
+
 &gmac_config {
        rxdv-delay = <3>;
        rxd-delay = <3>;
index bd3702eb36955f02c50d044aee3d91b609e94bb5..e0bdd209374a6a20a869c91c5c63c0fde3a56fd3 100644 (file)
@@ -40,6 +40,7 @@
 
 &eth0 {
        pll-data = <0xbe000000 0x80000101 0x80001313>;
+       phy-mode = "rgmii-id";
 };
 
 &gmac_config {
index 9937186b1eea56587190de4f4424a01d996f299c..cfd43c8e8a2328c841bb893bdae9b5bab18b18bb 100644 (file)
 
        mtd-mac-address = <&art 0x00>;
        phy-handle = <&phy4>;
+       phy-mode = "rgmii-rxid";
        pll-data = <0xae000000 0x80000101 0x80001313>;
 
        gmac_config: gmac-config {
index 23835492a3141ab13958f22179480a2e3aa2925c..a80155b08c8829a2106c4a0346cd7356d5afed00 100644 (file)
 
        phy5: ethernet-phy@5 {
                reg = <5>;
-               phy-mode = "rgmii-rxid";
-
                at803x-disable-smarteee;
        };
 };