bcm53xx: backport DT changes queued for v6.6
[openwrt/staging/hauke.git] / target / linux / bcm53xx / patches-5.4 / 130-ARM-dts-BCM53573-Fix-Ethernet-info-for-Luxul-devices.patch
diff --git a/target/linux/bcm53xx/patches-5.4/130-ARM-dts-BCM53573-Fix-Ethernet-info-for-Luxul-devices.patch b/target/linux/bcm53xx/patches-5.4/130-ARM-dts-BCM53573-Fix-Ethernet-info-for-Luxul-devices.patch
new file mode 100644 (file)
index 0000000..381a8c3
--- /dev/null
@@ -0,0 +1,72 @@
+From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
+Date: Thu, 13 Jul 2023 13:05:44 +0200
+Subject: [PATCH] ARM: dts: BCM53573: Fix Ethernet info for Luxul devices
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Both Luxul's XAP devices (XAP-810 and XAP-1440) are access points that
+use a non-default design. They don't include switch but have a single
+Ethernet port and BCM54210E PHY connected to the Ethernet controller's
+MDIO bus.
+
+Support for those devices regressed due to two changes:
+
+1. Describing MDIO bus with switch
+After commit 9fb90ae6cae7 ("ARM: dts: BCM53573: Describe on-SoC BCM53125
+rev 4 switch") Linux stopped probing for MDIO devices.
+
+2. Dropping hardcoded BCM54210E delays
+In commit fea7fda7f50a ("net: phy: broadcom: Fix RGMII delays
+configuration for BCM54210E") support for other PHY modes was added but
+that requires a proper "phy-mode" value in DT.
+
+Both above changes are correct (they don't need to be reverted or
+anything) but they need this fix for DT data to be correct and for Linux
+to work properly.
+
+Fixes: 9fb90ae6cae7 ("ARM: dts: BCM53573: Describe on-SoC BCM53125 rev 4 switch")
+Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
+---
+ .../boot/dts/broadcom/bcm47189-luxul-xap-1440.dts   | 13 +++++++++++++
+ .../boot/dts/broadcom/bcm47189-luxul-xap-810.dts    | 13 +++++++++++++
+ 2 files changed, 26 insertions(+)
+
+--- a/arch/arm/boot/dts/bcm47189-luxul-xap-1440.dts
++++ b/arch/arm/boot/dts/bcm47189-luxul-xap-1440.dts
+@@ -45,3 +45,16 @@
+               };
+       };
+ };
++
++&gmac0 {
++      phy-mode = "rgmii";
++      phy-handle = <&bcm54210e>;
++
++      mdio {
++              /delete-node/ switch@1e;
++
++              bcm54210e: ethernet-phy@0 {
++                      reg = <0>;
++              };
++      };
++};
+--- a/arch/arm/boot/dts/bcm47189-luxul-xap-810.dts
++++ b/arch/arm/boot/dts/bcm47189-luxul-xap-810.dts
+@@ -81,3 +81,16 @@
+               };
+       };
+ };
++
++&gmac0 {
++      phy-mode = "rgmii";
++      phy-handle = <&bcm54210e>;
++
++      mdio {
++              /delete-node/ switch@1e;
++
++              bcm54210e: ethernet-phy@0 {
++                      reg = <0>;
++              };
++      };
++};