From 50a76208bcce98977615d8048f7655aa2f49cf38 Mon Sep 17 00:00:00 2001 From: Nick Hainke Date: Sun, 25 Oct 2020 15:25:01 +0100 Subject: [PATCH] ath79: fix nanobeam ac ethernet interface In 4.14 the delays were not cleared, so setting "rgmii" as phy-mode did not affect delays set by the bootloader. With 5.4 kernel the situation changed and the ethernet interface stopped working. "rgmii" requires rx and tx delays depending on the hardware circuit and wiring. The mac or the phy can add these delays. - "rgmii": delays are controlled by the mac - "rgmii-id": delays are controlled by the phy More Information in Linux Kernel Tree: Documentation/devicetree/bindings/net/ethernet-controller.yaml "rgmii" should be the preferred mode, which allows the mac layer to turn off the dealys completely if they are not needed. However, the delays are not set correctly, which causes the ethernet interface to be broken. Just taking the ethernetpart from the litebeam ac gen2 will fix the issue. Explained-by: David Bauer Signed-off-by: Nick Hainke --- target/linux/ath79/dts/ar9342_ubnt_nanobeam-ac.dts | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/target/linux/ath79/dts/ar9342_ubnt_nanobeam-ac.dts b/target/linux/ath79/dts/ar9342_ubnt_nanobeam-ac.dts index 6f6e4c6bb6..3dd1ba4532 100644 --- a/target/linux/ath79/dts/ar9342_ubnt_nanobeam-ac.dts +++ b/target/linux/ath79/dts/ar9342_ubnt_nanobeam-ac.dts @@ -42,7 +42,6 @@ phy-mask = <4>; phy4: ethernet-phy@4 { - phy-mode = "rgmii"; reg = <4>; }; }; @@ -51,11 +50,11 @@ status = "okay"; /* default for ar934x, except for 1000M and 10M */ - pll-data = <0x06000000 0x00000101 0x00001313>; + pll-data = <0x02000000 0x00000101 0x00001313>; mtd-mac-address = <&art 0x0>; - phy-mode = "rgmii"; + phy-mode = "rgmii-id"; phy-handle = <&phy4>; gmac-config { -- 2.30.2