bcm53xx: backport DT changes queued for v6.7
authorRafał Miłecki <rafal@milecki.pl>
Tue, 24 Oct 2023 05:40:37 +0000 (07:40 +0200)
committerRafał Miłecki <rafal@milecki.pl>
Tue, 24 Oct 2023 06:26:24 +0000 (08:26 +0200)
Among other changes this commit makes Linux use correct switch ports
again.

Fixes: a4792d79e899 ("bcm53xx: backport DT changes from v6.5")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
14 files changed:
target/linux/bcm53xx/patches-5.15/038-v6.7-0001-ARM-dts-BCM5301X-Set-MACs-for-D-Link-DIR-885L.patch [new file with mode: 0644]
target/linux/bcm53xx/patches-5.15/038-v6.7-0002-ARM-dts-BCM5301X-Set-MAC-address-for-Asus-RT-AC87U.patch [new file with mode: 0644]
target/linux/bcm53xx/patches-5.15/038-v6.7-0003-ARM-dts-BCM5301X-Relicense-Felix-s-code-to-the-GPL-2.patch [new file with mode: 0644]
target/linux/bcm53xx/patches-5.15/038-v6.7-0004-ARM-dts-BCM5301X-Relicense-Vivek-s-code-to-the-GPL-2.patch [new file with mode: 0644]
target/linux/bcm53xx/patches-5.15/038-v6.7-0005-ARM-dts-BCM5301X-Explicitly-disable-unused-switch-CP.patch [new file with mode: 0644]
target/linux/bcm53xx/patches-5.15/038-v6.7-0006-ARM-dts-BCM5301X-Set-fixed-link-for-extra-Netgear-R8.patch [new file with mode: 0644]
target/linux/bcm53xx/patches-5.15/304-ARM-dts-BCM5301X-Specify-switch-ports-for-remaining-.patch
target/linux/bcm53xx/patches-6.1/033-v6.7-0001-ARM-dts-BCM5301X-Set-MACs-for-D-Link-DIR-885L.patch [new file with mode: 0644]
target/linux/bcm53xx/patches-6.1/033-v6.7-0002-ARM-dts-BCM5301X-Set-MAC-address-for-Asus-RT-AC87U.patch [new file with mode: 0644]
target/linux/bcm53xx/patches-6.1/033-v6.7-0003-ARM-dts-BCM5301X-Relicense-Felix-s-code-to-the-GPL-2.patch [new file with mode: 0644]
target/linux/bcm53xx/patches-6.1/033-v6.7-0004-ARM-dts-BCM5301X-Relicense-Vivek-s-code-to-the-GPL-2.patch [new file with mode: 0644]
target/linux/bcm53xx/patches-6.1/033-v6.7-0005-ARM-dts-BCM5301X-Explicitly-disable-unused-switch-CP.patch [new file with mode: 0644]
target/linux/bcm53xx/patches-6.1/033-v6.7-0006-ARM-dts-BCM5301X-Set-fixed-link-for-extra-Netgear-R8.patch [new file with mode: 0644]
target/linux/bcm53xx/patches-6.1/304-ARM-dts-BCM5301X-Specify-switch-ports-for-remaining-.patch

diff --git a/target/linux/bcm53xx/patches-5.15/038-v6.7-0001-ARM-dts-BCM5301X-Set-MACs-for-D-Link-DIR-885L.patch b/target/linux/bcm53xx/patches-5.15/038-v6.7-0001-ARM-dts-BCM5301X-Set-MACs-for-D-Link-DIR-885L.patch
new file mode 100644 (file)
index 0000000..78b8975
--- /dev/null
@@ -0,0 +1,56 @@
+From 5cbee5828219c4f7b33e96b5d8ce5e467b2857c8 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
+Date: Fri, 1 Sep 2023 12:55:49 +0200
+Subject: [PATCH] ARM: dts: BCM5301X: Set MACs for D-Link DIR-885L
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Specify NVRAM access and use its "et2macaddr" NVMEM cell.
+
+Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
+Link: https://lore.kernel.org/r/20230901105549.7076-1-zajec5@gmail.com
+Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
+---
+ .../dts/broadcom/bcm47094-dlink-dir-885l.dts     | 16 ++++++++++++++++
+ 1 file changed, 16 insertions(+)
+
+--- a/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts
++++ b/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts
+@@ -25,6 +25,15 @@
+                     <0x88000000 0x08000000>;
+       };
++      nvram@1e3f0000 {
++              compatible = "brcm,nvram";
++              reg = <0x1e3f0000 0x10000>;
++
++              et2macaddr: et2macaddr {
++                      #nvmem-cell-cells = <1>;
++              };
++      };
++
+       nand_controller: nand-controller@18028000 {
+               nand@0 {
+                       partitions {
+@@ -112,6 +121,11 @@
+       vcc-gpio = <&chipcommon 18 GPIO_ACTIVE_HIGH>;
+ };
++&gmac0 {
++      nvmem-cells = <&et2macaddr 0>;
++      nvmem-cell-names = "mac-address";
++};
++
+ &spi_nor {
+       status = "okay";
+ };
+@@ -142,6 +156,8 @@
+               port@4 {
+                       label = "wan";
++                      nvmem-cells = <&et2macaddr 3>;
++                      nvmem-cell-names = "mac-address";
+               };
+               port@8 {
diff --git a/target/linux/bcm53xx/patches-5.15/038-v6.7-0002-ARM-dts-BCM5301X-Set-MAC-address-for-Asus-RT-AC87U.patch b/target/linux/bcm53xx/patches-5.15/038-v6.7-0002-ARM-dts-BCM5301X-Set-MAC-address-for-Asus-RT-AC87U.patch
new file mode 100644 (file)
index 0000000..11ce7ac
--- /dev/null
@@ -0,0 +1,44 @@
+From a9e79863b62aaaefcdf469fc331bf482ae00db0d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
+Date: Fri, 1 Sep 2023 14:43:11 +0200
+Subject: [PATCH] ARM: dts: BCM5301X: Set MAC address for Asus RT-AC87U
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Specify NVRAM access and use its "et1macaddr" NVMEM cell.
+
+Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
+Link: https://lore.kernel.org/r/20230901124311.31156-1-zajec5@gmail.com
+Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
+---
+ arch/arm/boot/dts/broadcom/bcm4709-asus-rt-ac87u.dts | 11 +++++++++++
+ 1 file changed, 11 insertions(+)
+
+--- a/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts
++++ b/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts
+@@ -25,6 +25,12 @@
+                     <0x88000000 0x08000000>;
+       };
++      nvram@1c080000 {
++              et1macaddr: et1macaddr {
++                      #nvmem-cell-cells = <1>;
++              };
++      };
++
+       leds {
+               compatible = "gpio-leds";
+@@ -62,6 +68,11 @@
+       };
+ };
++&gmac0 {
++      nvmem-cells = <&et1macaddr 0>;
++      nvmem-cell-names = "mac-address";
++};
++
+ &usb3_phy {
+       status = "okay";
+ };
diff --git a/target/linux/bcm53xx/patches-5.15/038-v6.7-0003-ARM-dts-BCM5301X-Relicense-Felix-s-code-to-the-GPL-2.patch b/target/linux/bcm53xx/patches-5.15/038-v6.7-0003-ARM-dts-BCM5301X-Relicense-Felix-s-code-to-the-GPL-2.patch
new file mode 100644 (file)
index 0000000..6df1e55
--- /dev/null
@@ -0,0 +1,57 @@
+From 81ea360a16978a4df61df9db56b171909bd659c0 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
+Date: Sat, 16 Sep 2023 10:30:57 +0200
+Subject: [PATCH] ARM: dts: BCM5301X: Relicense Felix's code to the GPL 2.0+ /
+ MIT
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Move code added by Felix to the bcm-ns.dtsi which uses dual licensing.
+That syncs more Northstar code to be based on the same licensing schema.
+
+This code was added in the commit 1ff80363524c ("ARM: BCM5301X: Add
+profiling support").
+
+Cc: Felix Fietkau <nbd@nbd.name>
+Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
+Acked-by: Felix Fietkau <nbd@nbd.name>
+Link: https://lore.kernel.org/r/20230916083057.10458-1-zajec5@gmail.com
+Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
+---
+ arch/arm/boot/dts/broadcom/bcm-ns.dtsi   | 7 +++++++
+ arch/arm/boot/dts/broadcom/bcm5301x.dtsi | 7 -------
+ 2 files changed, 7 insertions(+), 7 deletions(-)
+
+--- a/arch/arm/boot/dts/bcm-ns.dtsi
++++ b/arch/arm/boot/dts/bcm-ns.dtsi
+@@ -14,6 +14,13 @@
+       #address-cells = <1>;
+       #size-cells = <1>;
++      pmu {
++              compatible = "arm,cortex-a9-pmu";
++              interrupts =
++                      <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
++                      <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
++      };
++
+       chipcommon-a-bus@18000000 {
+               compatible = "simple-bus";
+               ranges = <0x00000000 0x18000000 0x00001000>;
+--- a/arch/arm/boot/dts/bcm5301x.dtsi
++++ b/arch/arm/boot/dts/bcm5301x.dtsi
+@@ -26,13 +26,6 @@
+               };
+       };
+-      pmu {
+-              compatible = "arm,cortex-a9-pmu";
+-              interrupts =
+-                      <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
+-                      <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
+-      };
+-
+       clocks {
+               #address-cells = <1>;
+               #size-cells = <1>;
diff --git a/target/linux/bcm53xx/patches-5.15/038-v6.7-0004-ARM-dts-BCM5301X-Relicense-Vivek-s-code-to-the-GPL-2.patch b/target/linux/bcm53xx/patches-5.15/038-v6.7-0004-ARM-dts-BCM5301X-Relicense-Vivek-s-code-to-the-GPL-2.patch
new file mode 100644 (file)
index 0000000..66db4a2
--- /dev/null
@@ -0,0 +1,104 @@
+From b8d4f7c1be04d66c37c119c501c87bccc4197694 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
+Date: Sat, 16 Sep 2023 10:58:55 +0200
+Subject: [PATCH] ARM: dts: BCM5301X: Relicense Vivek's code to the GPL 2.0+ /
+ MIT
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Move code added by Vivek to the bcm-ns.dtsi which uses dual licensing.
+That syncs more Northstar code to be based on the same licensing schema.
+
+This code was added in the commit 37f6130ec39f ("ARM: dts: BCM5301X:
+Make USB 3.0 PHY use MDIO PHY driver").
+
+Cc: Vivek Unune <npcomplete13@gmail.com>
+Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
+Acked-by: Vivek Unune <npcomplete13@gmail.com>
+Link: https://lore.kernel.org/r/20230916085855.28375-1-zajec5@gmail.com
+Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
+---
+ arch/arm/boot/dts/broadcom/bcm-ns.dtsi   | 27 ++++++++++++++++++++++++
+ arch/arm/boot/dts/broadcom/bcm5301x.dtsi | 27 ------------------------
+ 2 files changed, 27 insertions(+), 27 deletions(-)
+
+--- a/arch/arm/boot/dts/bcm-ns.dtsi
++++ b/arch/arm/boot/dts/bcm-ns.dtsi
+@@ -327,6 +327,29 @@
+               #address-cells = <1>;
+       };
++      mdio-mux@18003000 {
++              compatible = "mdio-mux-mmioreg", "mdio-mux";
++              mdio-parent-bus = <&mdio>;
++              #address-cells = <1>;
++              #size-cells = <0>;
++              reg = <0x18003000 0x4>;
++              mux-mask = <0x200>;
++
++              mdio@0 {
++                      reg = <0x0>;
++                      #address-cells = <1>;
++                      #size-cells = <0>;
++
++                      usb3_phy: usb3-phy@10 {
++                              compatible = "brcm,ns-ax-usb3-phy";
++                              reg = <0x10>;
++                              usb3-dmp-syscon = <&usb3_dmp>;
++                              #phy-cells = <0>;
++                              status = "disabled";
++                      };
++              };
++      };
++
+       rng: rng@18004000 {
+               compatible = "brcm,bcm5301x-rng";
+               reg = <0x18004000 0x14>;
+@@ -467,6 +490,10 @@
+               brcm,nand-has-wp;
+       };
++      usb3_dmp: syscon@18105000 {
++              reg = <0x18105000 0x1000>;
++      };
++
+       thermal-zones {
+               cpu_thermal: cpu-thermal {
+                       polling-delay-passive = <0>;
+--- a/arch/arm/boot/dts/bcm5301x.dtsi
++++ b/arch/arm/boot/dts/bcm5301x.dtsi
+@@ -62,33 +62,6 @@
+               };
+       };
+-      mdio-mux@18003000 {
+-              compatible = "mdio-mux-mmioreg", "mdio-mux";
+-              mdio-parent-bus = <&mdio>;
+-              #address-cells = <1>;
+-              #size-cells = <0>;
+-              reg = <0x18003000 0x4>;
+-              mux-mask = <0x200>;
+-
+-              mdio@0 {
+-                      reg = <0x0>;
+-                      #address-cells = <1>;
+-                      #size-cells = <0>;
+-
+-                      usb3_phy: usb3-phy@10 {
+-                              compatible = "brcm,ns-ax-usb3-phy";
+-                              reg = <0x10>;
+-                              usb3-dmp-syscon = <&usb3_dmp>;
+-                              #phy-cells = <0>;
+-                              status = "disabled";
+-                      };
+-              };
+-      };
+-
+-      usb3_dmp: syscon@18105000 {
+-              reg = <0x18105000 0x1000>;
+-      };
+-
+       i2c0: i2c@18009000 {
+               compatible = "brcm,iproc-i2c";
+               reg = <0x18009000 0x50>;
diff --git a/target/linux/bcm53xx/patches-5.15/038-v6.7-0005-ARM-dts-BCM5301X-Explicitly-disable-unused-switch-CP.patch b/target/linux/bcm53xx/patches-5.15/038-v6.7-0005-ARM-dts-BCM5301X-Explicitly-disable-unused-switch-CP.patch
new file mode 100644 (file)
index 0000000..72e5c6b
--- /dev/null
@@ -0,0 +1,377 @@
+From 473baeab929444295b0530f8766e4becb6a08973 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
+Date: Fri, 13 Oct 2023 12:33:13 +0200
+Subject: [PATCH] ARM: dts: BCM5301X: Explicitly disable unused switch CPU
+ ports
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+When redescribing ports I assumed that missing "label" (like "cpu")
+means switch port isn't used. That was incorrect and I realized my
+change made Linux always use the first (5) CPU port (there are 3 of
+them).
+
+While above should technically be possible it often isn't correct:
+1. Non-default switch ports are often connected to Ethernet interfaces
+   not fully covered by vendor setup (they may miss MACs)
+2. On some devices non-default ports require specifying fixed link
+
+This fixes network connectivity for some devices. It was reported &
+tested for Netgear R8000. It also affects Linksys EA9200 with its
+downstream DTS.
+
+Fixes: ba4aebce23b2 ("ARM: dts: BCM5301X: Describe switch ports in the main DTS")
+Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
+Link: https://lore.kernel.org/r/20231013103314.10306-1-zajec5@gmail.com
+Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
+---
+ .../dts/broadcom/bcm4708-buffalo-wzr-1166dhp-common.dtsi  | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm4708-luxul-xap-1510.dts     | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm4708-luxul-xwc-1000.dts     | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm4708-netgear-r6250.dts      | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm4708-smartrg-sr400ac.dts    | 8 ++++++++
+ .../boot/dts/broadcom/bcm47081-buffalo-wzr-600dhp2.dts    | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm47081-luxul-xap-1410.dts    | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm47081-luxul-xwr-1200.dts    | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm4709-netgear-r8000.dts      | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm47094-dlink-dir-885l.dts    | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm47094-dlink-dir-890l.dts    | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm47094-luxul-abr-4500.dts    | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm47094-luxul-xap-1610.dts    | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm47094-luxul-xbr-4500.dts    | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm47094-luxul-xwc-2000.dts    | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm47094-luxul-xwr-3100.dts    | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm47094-luxul-xwr-3150-v1.dts | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm53015-meraki-mr26.dts       | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm53016-meraki-mr32.dts       | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm953012er.dts                | 8 ++++++++
+ 20 files changed, 160 insertions(+)
+
+--- a/arch/arm/boot/dts/bcm4708-buffalo-wzr-1166dhp-common.dtsi
++++ b/arch/arm/boot/dts/bcm4708-buffalo-wzr-1166dhp-common.dtsi
+@@ -181,5 +181,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm4708-luxul-xap-1510.dts
++++ b/arch/arm/boot/dts/bcm4708-luxul-xap-1510.dts
+@@ -85,5 +85,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts
++++ b/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts
+@@ -88,5 +88,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
++++ b/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
+@@ -122,5 +122,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts
++++ b/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts
+@@ -145,6 +145,14 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
++++ b/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
+@@ -145,5 +145,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm47081-luxul-xap-1410.dts
++++ b/arch/arm/boot/dts/bcm47081-luxul-xap-1410.dts
+@@ -81,5 +81,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm47081-luxul-xwr-1200.dts
++++ b/arch/arm/boot/dts/bcm47081-luxul-xwr-1200.dts
+@@ -148,5 +148,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm4709-netgear-r8000.dts
++++ b/arch/arm/boot/dts/bcm4709-netgear-r8000.dts
+@@ -227,6 +227,14 @@
+                       label = "wan";
+               };
++              port@5 {
++                      status = "disabled";
++              };
++
++              port@7 {
++                      status = "disabled";
++              };
++
+               port@8 {
+                       label = "cpu";
+               };
+--- a/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts
++++ b/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts
+@@ -160,6 +160,14 @@
+                       nvmem-cell-names = "mac-address";
+               };
++              port@5 {
++                      status = "disabled";
++              };
++
++              port@7 {
++                      status = "disabled";
++              };
++
+               port@8 {
+                       label = "cpu";
+               };
+--- a/arch/arm/boot/dts/bcm47094-dlink-dir-890l.dts
++++ b/arch/arm/boot/dts/bcm47094-dlink-dir-890l.dts
+@@ -192,6 +192,14 @@
+                       label = "wan";
+               };
++              port@5 {
++                      status = "disabled";
++              };
++
++              port@7 {
++                      status = "disabled";
++              };
++
+               port@8 {
+                       label = "cpu";
+                       phy-mode = "rgmii";
+--- a/arch/arm/boot/dts/bcm47094-luxul-abr-4500.dts
++++ b/arch/arm/boot/dts/bcm47094-luxul-abr-4500.dts
+@@ -107,5 +107,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm47094-luxul-xap-1610.dts
++++ b/arch/arm/boot/dts/bcm47094-luxul-xap-1610.dts
+@@ -120,5 +120,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm47094-luxul-xbr-4500.dts
++++ b/arch/arm/boot/dts/bcm47094-luxul-xbr-4500.dts
+@@ -107,5 +107,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm47094-luxul-xwc-2000.dts
++++ b/arch/arm/boot/dts/bcm47094-luxul-xwc-2000.dts
+@@ -75,5 +75,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm47094-luxul-xwr-3100.dts
++++ b/arch/arm/boot/dts/bcm47094-luxul-xwr-3100.dts
+@@ -147,5 +147,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm47094-luxul-xwr-3150-v1.dts
++++ b/arch/arm/boot/dts/bcm47094-luxul-xwr-3150-v1.dts
+@@ -158,5 +158,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm53015-meraki-mr26.dts
++++ b/arch/arm/boot/dts/bcm53015-meraki-mr26.dts
+@@ -124,6 +124,14 @@
+                               full-duplex;
+                       };
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm53016-meraki-mr32.dts
++++ b/arch/arm/boot/dts/bcm53016-meraki-mr32.dts
+@@ -185,6 +185,14 @@
+                               full-duplex;
+                       };
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm953012er.dts
++++ b/arch/arm/boot/dts/bcm953012er.dts
+@@ -84,6 +84,14 @@
+                       label = "cpu";
+                       ethernet = <&gmac0>;
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
diff --git a/target/linux/bcm53xx/patches-5.15/038-v6.7-0006-ARM-dts-BCM5301X-Set-fixed-link-for-extra-Netgear-R8.patch b/target/linux/bcm53xx/patches-5.15/038-v6.7-0006-ARM-dts-BCM5301X-Set-fixed-link-for-extra-Netgear-R8.patch
new file mode 100644 (file)
index 0000000..0b2b7b3
--- /dev/null
@@ -0,0 +1,47 @@
+From d313b0e9070a7100ca55e64fe3b081d176d8806d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
+Date: Fri, 13 Oct 2023 12:33:14 +0200
+Subject: [PATCH] ARM: dts: BCM5301X: Set fixed-link for extra Netgear R8000
+ CPU ports
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Ports 5 and 7 are disabled by default because the standard use case is
+for port 8 to manage all CPU directed traffic. For experimentation
+purposes however it is desirable to provide adequate properties such
+that people can experiment with using different ports without having to
+figure out their configuration. Some of the use cases include but are
+not limited to doubling or tripling the bandwidth by leveraging the
+additional ports/Ethernet MAC combinations.
+
+Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
+Link: https://lore.kernel.org/r/20231013103314.10306-2-zajec5@gmail.com
+Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
+---
+ arch/arm/boot/dts/broadcom/bcm4709-netgear-r8000.dts | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+--- a/arch/arm/boot/dts/bcm4709-netgear-r8000.dts
++++ b/arch/arm/boot/dts/bcm4709-netgear-r8000.dts
+@@ -229,10 +229,20 @@
+               port@5 {
+                       status = "disabled";
++
++                      fixed-link {
++                              speed = <1000>;
++                              full-duplex;
++                      };
+               };
+               port@7 {
+                       status = "disabled";
++
++                      fixed-link {
++                              speed = <1000>;
++                              full-duplex;
++                      };
+               };
+               port@8 {
index 6779dfb8fe06d308d2fe53a3744308e6b6fcf5eb..0efb2840395ba6a9bf622be2f6905245e6046286 100644 (file)
@@ -262,7 +262,7 @@ Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
 +};
 --- a/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts
 +++ b/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts
-@@ -66,6 +66,32 @@
+@@ -77,6 +77,32 @@
        status = "okay";
  };
  
diff --git a/target/linux/bcm53xx/patches-6.1/033-v6.7-0001-ARM-dts-BCM5301X-Set-MACs-for-D-Link-DIR-885L.patch b/target/linux/bcm53xx/patches-6.1/033-v6.7-0001-ARM-dts-BCM5301X-Set-MACs-for-D-Link-DIR-885L.patch
new file mode 100644 (file)
index 0000000..78b8975
--- /dev/null
@@ -0,0 +1,56 @@
+From 5cbee5828219c4f7b33e96b5d8ce5e467b2857c8 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
+Date: Fri, 1 Sep 2023 12:55:49 +0200
+Subject: [PATCH] ARM: dts: BCM5301X: Set MACs for D-Link DIR-885L
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Specify NVRAM access and use its "et2macaddr" NVMEM cell.
+
+Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
+Link: https://lore.kernel.org/r/20230901105549.7076-1-zajec5@gmail.com
+Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
+---
+ .../dts/broadcom/bcm47094-dlink-dir-885l.dts     | 16 ++++++++++++++++
+ 1 file changed, 16 insertions(+)
+
+--- a/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts
++++ b/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts
+@@ -25,6 +25,15 @@
+                     <0x88000000 0x08000000>;
+       };
++      nvram@1e3f0000 {
++              compatible = "brcm,nvram";
++              reg = <0x1e3f0000 0x10000>;
++
++              et2macaddr: et2macaddr {
++                      #nvmem-cell-cells = <1>;
++              };
++      };
++
+       nand_controller: nand-controller@18028000 {
+               nand@0 {
+                       partitions {
+@@ -112,6 +121,11 @@
+       vcc-gpio = <&chipcommon 18 GPIO_ACTIVE_HIGH>;
+ };
++&gmac0 {
++      nvmem-cells = <&et2macaddr 0>;
++      nvmem-cell-names = "mac-address";
++};
++
+ &spi_nor {
+       status = "okay";
+ };
+@@ -142,6 +156,8 @@
+               port@4 {
+                       label = "wan";
++                      nvmem-cells = <&et2macaddr 3>;
++                      nvmem-cell-names = "mac-address";
+               };
+               port@8 {
diff --git a/target/linux/bcm53xx/patches-6.1/033-v6.7-0002-ARM-dts-BCM5301X-Set-MAC-address-for-Asus-RT-AC87U.patch b/target/linux/bcm53xx/patches-6.1/033-v6.7-0002-ARM-dts-BCM5301X-Set-MAC-address-for-Asus-RT-AC87U.patch
new file mode 100644 (file)
index 0000000..11ce7ac
--- /dev/null
@@ -0,0 +1,44 @@
+From a9e79863b62aaaefcdf469fc331bf482ae00db0d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
+Date: Fri, 1 Sep 2023 14:43:11 +0200
+Subject: [PATCH] ARM: dts: BCM5301X: Set MAC address for Asus RT-AC87U
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Specify NVRAM access and use its "et1macaddr" NVMEM cell.
+
+Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
+Link: https://lore.kernel.org/r/20230901124311.31156-1-zajec5@gmail.com
+Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
+---
+ arch/arm/boot/dts/broadcom/bcm4709-asus-rt-ac87u.dts | 11 +++++++++++
+ 1 file changed, 11 insertions(+)
+
+--- a/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts
++++ b/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts
+@@ -25,6 +25,12 @@
+                     <0x88000000 0x08000000>;
+       };
++      nvram@1c080000 {
++              et1macaddr: et1macaddr {
++                      #nvmem-cell-cells = <1>;
++              };
++      };
++
+       leds {
+               compatible = "gpio-leds";
+@@ -62,6 +68,11 @@
+       };
+ };
++&gmac0 {
++      nvmem-cells = <&et1macaddr 0>;
++      nvmem-cell-names = "mac-address";
++};
++
+ &usb3_phy {
+       status = "okay";
+ };
diff --git a/target/linux/bcm53xx/patches-6.1/033-v6.7-0003-ARM-dts-BCM5301X-Relicense-Felix-s-code-to-the-GPL-2.patch b/target/linux/bcm53xx/patches-6.1/033-v6.7-0003-ARM-dts-BCM5301X-Relicense-Felix-s-code-to-the-GPL-2.patch
new file mode 100644 (file)
index 0000000..6df1e55
--- /dev/null
@@ -0,0 +1,57 @@
+From 81ea360a16978a4df61df9db56b171909bd659c0 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
+Date: Sat, 16 Sep 2023 10:30:57 +0200
+Subject: [PATCH] ARM: dts: BCM5301X: Relicense Felix's code to the GPL 2.0+ /
+ MIT
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Move code added by Felix to the bcm-ns.dtsi which uses dual licensing.
+That syncs more Northstar code to be based on the same licensing schema.
+
+This code was added in the commit 1ff80363524c ("ARM: BCM5301X: Add
+profiling support").
+
+Cc: Felix Fietkau <nbd@nbd.name>
+Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
+Acked-by: Felix Fietkau <nbd@nbd.name>
+Link: https://lore.kernel.org/r/20230916083057.10458-1-zajec5@gmail.com
+Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
+---
+ arch/arm/boot/dts/broadcom/bcm-ns.dtsi   | 7 +++++++
+ arch/arm/boot/dts/broadcom/bcm5301x.dtsi | 7 -------
+ 2 files changed, 7 insertions(+), 7 deletions(-)
+
+--- a/arch/arm/boot/dts/bcm-ns.dtsi
++++ b/arch/arm/boot/dts/bcm-ns.dtsi
+@@ -14,6 +14,13 @@
+       #address-cells = <1>;
+       #size-cells = <1>;
++      pmu {
++              compatible = "arm,cortex-a9-pmu";
++              interrupts =
++                      <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
++                      <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
++      };
++
+       chipcommon-a-bus@18000000 {
+               compatible = "simple-bus";
+               ranges = <0x00000000 0x18000000 0x00001000>;
+--- a/arch/arm/boot/dts/bcm5301x.dtsi
++++ b/arch/arm/boot/dts/bcm5301x.dtsi
+@@ -26,13 +26,6 @@
+               };
+       };
+-      pmu {
+-              compatible = "arm,cortex-a9-pmu";
+-              interrupts =
+-                      <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
+-                      <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
+-      };
+-
+       clocks {
+               #address-cells = <1>;
+               #size-cells = <1>;
diff --git a/target/linux/bcm53xx/patches-6.1/033-v6.7-0004-ARM-dts-BCM5301X-Relicense-Vivek-s-code-to-the-GPL-2.patch b/target/linux/bcm53xx/patches-6.1/033-v6.7-0004-ARM-dts-BCM5301X-Relicense-Vivek-s-code-to-the-GPL-2.patch
new file mode 100644 (file)
index 0000000..66db4a2
--- /dev/null
@@ -0,0 +1,104 @@
+From b8d4f7c1be04d66c37c119c501c87bccc4197694 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
+Date: Sat, 16 Sep 2023 10:58:55 +0200
+Subject: [PATCH] ARM: dts: BCM5301X: Relicense Vivek's code to the GPL 2.0+ /
+ MIT
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Move code added by Vivek to the bcm-ns.dtsi which uses dual licensing.
+That syncs more Northstar code to be based on the same licensing schema.
+
+This code was added in the commit 37f6130ec39f ("ARM: dts: BCM5301X:
+Make USB 3.0 PHY use MDIO PHY driver").
+
+Cc: Vivek Unune <npcomplete13@gmail.com>
+Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
+Acked-by: Vivek Unune <npcomplete13@gmail.com>
+Link: https://lore.kernel.org/r/20230916085855.28375-1-zajec5@gmail.com
+Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
+---
+ arch/arm/boot/dts/broadcom/bcm-ns.dtsi   | 27 ++++++++++++++++++++++++
+ arch/arm/boot/dts/broadcom/bcm5301x.dtsi | 27 ------------------------
+ 2 files changed, 27 insertions(+), 27 deletions(-)
+
+--- a/arch/arm/boot/dts/bcm-ns.dtsi
++++ b/arch/arm/boot/dts/bcm-ns.dtsi
+@@ -327,6 +327,29 @@
+               #address-cells = <1>;
+       };
++      mdio-mux@18003000 {
++              compatible = "mdio-mux-mmioreg", "mdio-mux";
++              mdio-parent-bus = <&mdio>;
++              #address-cells = <1>;
++              #size-cells = <0>;
++              reg = <0x18003000 0x4>;
++              mux-mask = <0x200>;
++
++              mdio@0 {
++                      reg = <0x0>;
++                      #address-cells = <1>;
++                      #size-cells = <0>;
++
++                      usb3_phy: usb3-phy@10 {
++                              compatible = "brcm,ns-ax-usb3-phy";
++                              reg = <0x10>;
++                              usb3-dmp-syscon = <&usb3_dmp>;
++                              #phy-cells = <0>;
++                              status = "disabled";
++                      };
++              };
++      };
++
+       rng: rng@18004000 {
+               compatible = "brcm,bcm5301x-rng";
+               reg = <0x18004000 0x14>;
+@@ -467,6 +490,10 @@
+               brcm,nand-has-wp;
+       };
++      usb3_dmp: syscon@18105000 {
++              reg = <0x18105000 0x1000>;
++      };
++
+       thermal-zones {
+               cpu_thermal: cpu-thermal {
+                       polling-delay-passive = <0>;
+--- a/arch/arm/boot/dts/bcm5301x.dtsi
++++ b/arch/arm/boot/dts/bcm5301x.dtsi
+@@ -62,33 +62,6 @@
+               };
+       };
+-      mdio-mux@18003000 {
+-              compatible = "mdio-mux-mmioreg", "mdio-mux";
+-              mdio-parent-bus = <&mdio>;
+-              #address-cells = <1>;
+-              #size-cells = <0>;
+-              reg = <0x18003000 0x4>;
+-              mux-mask = <0x200>;
+-
+-              mdio@0 {
+-                      reg = <0x0>;
+-                      #address-cells = <1>;
+-                      #size-cells = <0>;
+-
+-                      usb3_phy: usb3-phy@10 {
+-                              compatible = "brcm,ns-ax-usb3-phy";
+-                              reg = <0x10>;
+-                              usb3-dmp-syscon = <&usb3_dmp>;
+-                              #phy-cells = <0>;
+-                              status = "disabled";
+-                      };
+-              };
+-      };
+-
+-      usb3_dmp: syscon@18105000 {
+-              reg = <0x18105000 0x1000>;
+-      };
+-
+       i2c0: i2c@18009000 {
+               compatible = "brcm,iproc-i2c";
+               reg = <0x18009000 0x50>;
diff --git a/target/linux/bcm53xx/patches-6.1/033-v6.7-0005-ARM-dts-BCM5301X-Explicitly-disable-unused-switch-CP.patch b/target/linux/bcm53xx/patches-6.1/033-v6.7-0005-ARM-dts-BCM5301X-Explicitly-disable-unused-switch-CP.patch
new file mode 100644 (file)
index 0000000..72e5c6b
--- /dev/null
@@ -0,0 +1,377 @@
+From 473baeab929444295b0530f8766e4becb6a08973 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
+Date: Fri, 13 Oct 2023 12:33:13 +0200
+Subject: [PATCH] ARM: dts: BCM5301X: Explicitly disable unused switch CPU
+ ports
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+When redescribing ports I assumed that missing "label" (like "cpu")
+means switch port isn't used. That was incorrect and I realized my
+change made Linux always use the first (5) CPU port (there are 3 of
+them).
+
+While above should technically be possible it often isn't correct:
+1. Non-default switch ports are often connected to Ethernet interfaces
+   not fully covered by vendor setup (they may miss MACs)
+2. On some devices non-default ports require specifying fixed link
+
+This fixes network connectivity for some devices. It was reported &
+tested for Netgear R8000. It also affects Linksys EA9200 with its
+downstream DTS.
+
+Fixes: ba4aebce23b2 ("ARM: dts: BCM5301X: Describe switch ports in the main DTS")
+Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
+Link: https://lore.kernel.org/r/20231013103314.10306-1-zajec5@gmail.com
+Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
+---
+ .../dts/broadcom/bcm4708-buffalo-wzr-1166dhp-common.dtsi  | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm4708-luxul-xap-1510.dts     | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm4708-luxul-xwc-1000.dts     | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm4708-netgear-r6250.dts      | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm4708-smartrg-sr400ac.dts    | 8 ++++++++
+ .../boot/dts/broadcom/bcm47081-buffalo-wzr-600dhp2.dts    | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm47081-luxul-xap-1410.dts    | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm47081-luxul-xwr-1200.dts    | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm4709-netgear-r8000.dts      | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm47094-dlink-dir-885l.dts    | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm47094-dlink-dir-890l.dts    | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm47094-luxul-abr-4500.dts    | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm47094-luxul-xap-1610.dts    | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm47094-luxul-xbr-4500.dts    | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm47094-luxul-xwc-2000.dts    | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm47094-luxul-xwr-3100.dts    | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm47094-luxul-xwr-3150-v1.dts | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm53015-meraki-mr26.dts       | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm53016-meraki-mr32.dts       | 8 ++++++++
+ arch/arm/boot/dts/broadcom/bcm953012er.dts                | 8 ++++++++
+ 20 files changed, 160 insertions(+)
+
+--- a/arch/arm/boot/dts/bcm4708-buffalo-wzr-1166dhp-common.dtsi
++++ b/arch/arm/boot/dts/bcm4708-buffalo-wzr-1166dhp-common.dtsi
+@@ -181,5 +181,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm4708-luxul-xap-1510.dts
++++ b/arch/arm/boot/dts/bcm4708-luxul-xap-1510.dts
+@@ -85,5 +85,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts
++++ b/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts
+@@ -88,5 +88,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
++++ b/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
+@@ -122,5 +122,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts
++++ b/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts
+@@ -145,6 +145,14 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
++++ b/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
+@@ -145,5 +145,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm47081-luxul-xap-1410.dts
++++ b/arch/arm/boot/dts/bcm47081-luxul-xap-1410.dts
+@@ -81,5 +81,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm47081-luxul-xwr-1200.dts
++++ b/arch/arm/boot/dts/bcm47081-luxul-xwr-1200.dts
+@@ -148,5 +148,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm4709-netgear-r8000.dts
++++ b/arch/arm/boot/dts/bcm4709-netgear-r8000.dts
+@@ -227,6 +227,14 @@
+                       label = "wan";
+               };
++              port@5 {
++                      status = "disabled";
++              };
++
++              port@7 {
++                      status = "disabled";
++              };
++
+               port@8 {
+                       label = "cpu";
+               };
+--- a/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts
++++ b/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts
+@@ -160,6 +160,14 @@
+                       nvmem-cell-names = "mac-address";
+               };
++              port@5 {
++                      status = "disabled";
++              };
++
++              port@7 {
++                      status = "disabled";
++              };
++
+               port@8 {
+                       label = "cpu";
+               };
+--- a/arch/arm/boot/dts/bcm47094-dlink-dir-890l.dts
++++ b/arch/arm/boot/dts/bcm47094-dlink-dir-890l.dts
+@@ -192,6 +192,14 @@
+                       label = "wan";
+               };
++              port@5 {
++                      status = "disabled";
++              };
++
++              port@7 {
++                      status = "disabled";
++              };
++
+               port@8 {
+                       label = "cpu";
+                       phy-mode = "rgmii";
+--- a/arch/arm/boot/dts/bcm47094-luxul-abr-4500.dts
++++ b/arch/arm/boot/dts/bcm47094-luxul-abr-4500.dts
+@@ -107,5 +107,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm47094-luxul-xap-1610.dts
++++ b/arch/arm/boot/dts/bcm47094-luxul-xap-1610.dts
+@@ -120,5 +120,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm47094-luxul-xbr-4500.dts
++++ b/arch/arm/boot/dts/bcm47094-luxul-xbr-4500.dts
+@@ -107,5 +107,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm47094-luxul-xwc-2000.dts
++++ b/arch/arm/boot/dts/bcm47094-luxul-xwc-2000.dts
+@@ -75,5 +75,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm47094-luxul-xwr-3100.dts
++++ b/arch/arm/boot/dts/bcm47094-luxul-xwr-3100.dts
+@@ -147,5 +147,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm47094-luxul-xwr-3150-v1.dts
++++ b/arch/arm/boot/dts/bcm47094-luxul-xwr-3150-v1.dts
+@@ -158,5 +158,13 @@
+               port@5 {
+                       label = "cpu";
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm53015-meraki-mr26.dts
++++ b/arch/arm/boot/dts/bcm53015-meraki-mr26.dts
+@@ -124,6 +124,14 @@
+                               full-duplex;
+                       };
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm53016-meraki-mr32.dts
++++ b/arch/arm/boot/dts/bcm53016-meraki-mr32.dts
+@@ -185,6 +185,14 @@
+                               full-duplex;
+                       };
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
+--- a/arch/arm/boot/dts/bcm953012er.dts
++++ b/arch/arm/boot/dts/bcm953012er.dts
+@@ -84,6 +84,14 @@
+                       label = "cpu";
+                       ethernet = <&gmac0>;
+               };
++
++              port@7 {
++                      status = "disabled";
++              };
++
++              port@8 {
++                      status = "disabled";
++              };
+       };
+ };
diff --git a/target/linux/bcm53xx/patches-6.1/033-v6.7-0006-ARM-dts-BCM5301X-Set-fixed-link-for-extra-Netgear-R8.patch b/target/linux/bcm53xx/patches-6.1/033-v6.7-0006-ARM-dts-BCM5301X-Set-fixed-link-for-extra-Netgear-R8.patch
new file mode 100644 (file)
index 0000000..0b2b7b3
--- /dev/null
@@ -0,0 +1,47 @@
+From d313b0e9070a7100ca55e64fe3b081d176d8806d Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
+Date: Fri, 13 Oct 2023 12:33:14 +0200
+Subject: [PATCH] ARM: dts: BCM5301X: Set fixed-link for extra Netgear R8000
+ CPU ports
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Ports 5 and 7 are disabled by default because the standard use case is
+for port 8 to manage all CPU directed traffic. For experimentation
+purposes however it is desirable to provide adequate properties such
+that people can experiment with using different ports without having to
+figure out their configuration. Some of the use cases include but are
+not limited to doubling or tripling the bandwidth by leveraging the
+additional ports/Ethernet MAC combinations.
+
+Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
+Link: https://lore.kernel.org/r/20231013103314.10306-2-zajec5@gmail.com
+Signed-off-by: Florian Fainelli <florian.fainelli@broadcom.com>
+---
+ arch/arm/boot/dts/broadcom/bcm4709-netgear-r8000.dts | 10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+--- a/arch/arm/boot/dts/bcm4709-netgear-r8000.dts
++++ b/arch/arm/boot/dts/bcm4709-netgear-r8000.dts
+@@ -229,10 +229,20 @@
+               port@5 {
+                       status = "disabled";
++
++                      fixed-link {
++                              speed = <1000>;
++                              full-duplex;
++                      };
+               };
+               port@7 {
+                       status = "disabled";
++
++                      fixed-link {
++                              speed = <1000>;
++                              full-duplex;
++                      };
+               };
+               port@8 {
index 6779dfb8fe06d308d2fe53a3744308e6b6fcf5eb..0efb2840395ba6a9bf622be2f6905245e6046286 100644 (file)
@@ -262,7 +262,7 @@ Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
 +};
 --- a/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts
 +++ b/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts
-@@ -66,6 +66,32 @@
+@@ -77,6 +77,32 @@
        status = "okay";
  };