[PATCH] ARM: dts: BCM5301X: Describe switch ports in the main DTS
Rafał Miłecki
zajec5 at gmail.com
Mon Jun 5 06:21:09 PDT 2023
From: Rafał Miłecki <rafal at milecki.pl>
All Northstar SoCs have BCM5301x switches (BCM53011, BCM53012) with 8
ports (0-8 without 6). By design 3 switch ports (5, 7 and 8) are
hardwired to 3 on-SoC Ethernet interfaces. Switch port 8 requires
forcing link state.
It seems that global Northstar .dtsi file is the best place to describe
those hw details. Only device specific bits (like labels) should go to
device .dts files.
This seems to fit well with a tiny exception of Asus RT-AC88U which
somehow was designed to have switch 5 connected to an extra switch. This
case was simply handled with a /delete-property/.
Signed-off-by: Rafał Miłecki <rafal at milecki.pl>
---
arch/arm/boot/dts/bcm-ns.dtsi | 41 ++++++++++++++++++-
.../bcm4708-buffalo-wzr-1166dhp-common.dtsi | 7 ----
arch/arm/boot/dts/bcm4708-luxul-xap-1510.dts | 4 --
arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts | 3 --
arch/arm/boot/dts/bcm4708-netgear-r6250.dts | 7 ----
arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts | 7 ----
.../boot/dts/bcm47081-buffalo-wzr-600dhp2.dts | 7 ----
arch/arm/boot/dts/bcm47081-luxul-xap-1410.dts | 3 --
arch/arm/boot/dts/bcm47081-luxul-xwr-1200.dts | 7 ----
arch/arm/boot/dts/bcm4709-netgear-r8000.dts | 12 ------
arch/arm/boot/dts/bcm47094-asus-rt-ac88u.dts | 17 +-------
arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts | 12 ------
arch/arm/boot/dts/bcm47094-dlink-dir-890l.dts | 12 ------
.../boot/dts/bcm47094-linksys-panamera.dts | 34 ++++-----------
arch/arm/boot/dts/bcm47094-luxul-abr-4500.dts | 7 ----
arch/arm/boot/dts/bcm47094-luxul-xap-1610.dts | 4 --
arch/arm/boot/dts/bcm47094-luxul-xbr-4500.dts | 7 ----
arch/arm/boot/dts/bcm47094-luxul-xwc-2000.dts | 3 --
arch/arm/boot/dts/bcm47094-luxul-xwr-3100.dts | 7 ----
.../boot/dts/bcm47094-luxul-xwr-3150-v1.dts | 7 ----
arch/arm/boot/dts/bcm53015-meraki-mr26.dts | 3 --
arch/arm/boot/dts/bcm53016-meraki-mr32.dts | 3 --
22 files changed, 51 insertions(+), 163 deletions(-)
diff --git a/arch/arm/boot/dts/bcm-ns.dtsi b/arch/arm/boot/dts/bcm-ns.dtsi
index 43d670746f05..dae9c47ace76 100644
--- a/arch/arm/boot/dts/bcm-ns.dtsi
+++ b/arch/arm/boot/dts/bcm-ns.dtsi
@@ -313,10 +313,49 @@ srab: ethernet-switch at 18007000 {
status = "disabled";
- /* ports are defined in board DTS */
ports {
#address-cells = <1>;
#size-cells = <0>;
+
+ port at 0 {
+ reg = <0>;
+ };
+
+ port at 1 {
+ reg = <1>;
+ };
+
+ port at 2 {
+ reg = <2>;
+ };
+
+ port at 3 {
+ reg = <3>;
+ };
+
+ port at 4 {
+ reg = <4>;
+ };
+
+ port at 5 {
+ reg = <5>;
+ ethernet = <&gmac0>;
+ };
+
+ port at 7 {
+ reg = <7>;
+ ethernet = <&gmac1>;
+ };
+
+ port at 8 {
+ reg = <8>;
+ ethernet = <&gmac2>;
+
+ fixed-link {
+ speed = <1000>;
+ full-duplex;
+ };
+ };
};
};
diff --git a/arch/arm/boot/dts/bcm4708-buffalo-wzr-1166dhp-common.dtsi b/arch/arm/boot/dts/bcm4708-buffalo-wzr-1166dhp-common.dtsi
index 0846887ba144..42bcbf10957c 100644
--- a/arch/arm/boot/dts/bcm4708-buffalo-wzr-1166dhp-common.dtsi
+++ b/arch/arm/boot/dts/bcm4708-buffalo-wzr-1166dhp-common.dtsi
@@ -159,34 +159,27 @@ &srab {
ports {
port at 0 {
- reg = <0>;
label = "lan1";
};
port at 1 {
- reg = <1>;
label = "lan2";
};
port at 2 {
- reg = <2>;
label = "lan3";
};
port at 3 {
- reg = <3>;
label = "lan4";
};
port at 4 {
- reg = <4>;
label = "wan";
};
port at 5 {
- reg = <5>;
label = "cpu";
- ethernet = <&gmac0>;
};
};
};
diff --git a/arch/arm/boot/dts/bcm4708-luxul-xap-1510.dts b/arch/arm/boot/dts/bcm4708-luxul-xap-1510.dts
index 5d0549855978..e04d2e5ea51a 100644
--- a/arch/arm/boot/dts/bcm4708-luxul-xap-1510.dts
+++ b/arch/arm/boot/dts/bcm4708-luxul-xap-1510.dts
@@ -75,19 +75,15 @@ &srab {
ports {
port at 0 {
- reg = <0>;
label = "poe";
};
port at 4 {
- reg = <4>;
label = "lan";
};
port at 5 {
- reg = <5>;
label = "cpu";
- ethernet = <&gmac0>;
};
};
};
diff --git a/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts b/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts
index 4ca348c06b51..a399800139d9 100644
--- a/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts
+++ b/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts
@@ -82,14 +82,11 @@ &srab {
ports {
port at 4 {
- reg = <4>;
label = "lan";
};
port at 5 {
- reg = <5>;
label = "cpu";
- ethernet = <&gmac0>;
};
};
};
diff --git a/arch/arm/boot/dts/bcm4708-netgear-r6250.dts b/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
index 8661ec94ca67..fad3473810a2 100644
--- a/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
+++ b/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
@@ -100,34 +100,27 @@ &srab {
ports {
port at 0 {
- reg = <0>;
label = "lan4";
};
port at 1 {
- reg = <1>;
label = "lan3";
};
port at 2 {
- reg = <2>;
label = "lan2";
};
port at 3 {
- reg = <3>;
label = "lan1";
};
port at 4 {
- reg = <4>;
label = "wan";
};
port at 5 {
- reg = <5>;
label = "cpu";
- ethernet = <&gmac0>;
};
};
};
diff --git a/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts b/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts
index 26cdeb5cc337..5b2b7b8b3b12 100644
--- a/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts
+++ b/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts
@@ -123,34 +123,27 @@ &srab {
ports {
port at 0 {
- reg = <0>;
label = "lan4";
};
port at 1 {
- reg = <1>;
label = "lan3";
};
port at 2 {
- reg = <2>;
label = "lan2";
};
port at 3 {
- reg = <3>;
label = "lan1";
};
port at 4 {
- reg = <4>;
label = "wan";
};
port at 5 {
- reg = <5>;
label = "cpu";
- ethernet = <&gmac0>;
};
};
};
diff --git a/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts b/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
index a2b7644eaf39..d0a26b643b82 100644
--- a/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
+++ b/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
@@ -123,34 +123,27 @@ &srab {
ports {
port at 0 {
- reg = <0>;
label = "lan1";
};
port at 1 {
- reg = <1>;
label = "lan2";
};
port at 2 {
- reg = <2>;
label = "lan3";
};
port at 3 {
- reg = <3>;
label = "lan4";
};
port at 4 {
- reg = <4>;
label = "wan";
};
port at 5 {
- reg = <5>;
label = "cpu";
- ethernet = <&gmac0>;
};
};
};
diff --git a/arch/arm/boot/dts/bcm47081-luxul-xap-1410.dts b/arch/arm/boot/dts/bcm47081-luxul-xap-1410.dts
index 7e042928fd40..9f21d6d6d35b 100644
--- a/arch/arm/boot/dts/bcm47081-luxul-xap-1410.dts
+++ b/arch/arm/boot/dts/bcm47081-luxul-xap-1410.dts
@@ -75,14 +75,11 @@ &srab {
ports {
port at 4 {
- reg = <4>;
label = "poe";
};
port at 5 {
- reg = <5>;
label = "cpu";
- ethernet = <&gmac0>;
};
};
};
diff --git a/arch/arm/boot/dts/bcm47081-luxul-xwr-1200.dts b/arch/arm/boot/dts/bcm47081-luxul-xwr-1200.dts
index 231d437408d8..256107291702 100644
--- a/arch/arm/boot/dts/bcm47081-luxul-xwr-1200.dts
+++ b/arch/arm/boot/dts/bcm47081-luxul-xwr-1200.dts
@@ -124,36 +124,29 @@ &srab {
ports {
port at 0 {
- reg = <0>;
label = "lan4";
};
port at 1 {
- reg = <1>;
label = "lan3";
};
port at 2 {
- reg = <2>;
label = "lan2";
};
port at 3 {
- reg = <3>;
label = "lan1";
};
port at 4 {
- reg = <4>;
label = "wan";
nvmem-cells = <&et0macaddr 5>;
nvmem-cell-names = "mac-address";
};
port at 5 {
- reg = <5>;
label = "cpu";
- ethernet = <&gmac0>;
};
};
};
diff --git a/arch/arm/boot/dts/bcm4709-netgear-r8000.dts b/arch/arm/boot/dts/bcm4709-netgear-r8000.dts
index 3552b6deffc2..707c561703ed 100644
--- a/arch/arm/boot/dts/bcm4709-netgear-r8000.dts
+++ b/arch/arm/boot/dts/bcm4709-netgear-r8000.dts
@@ -208,39 +208,27 @@ &srab {
ports {
port at 0 {
- reg = <0>;
label = "lan1";
};
port at 1 {
- reg = <1>;
label = "lan2";
};
port at 2 {
- reg = <2>;
label = "lan3";
};
port at 3 {
- reg = <3>;
label = "lan4";
};
port at 4 {
- reg = <4>;
label = "wan";
};
port at 8 {
- reg = <8>;
label = "cpu";
- ethernet = <&gmac2>;
-
- fixed-link {
- speed = <1000>;
- full-duplex;
- };
};
};
};
diff --git a/arch/arm/boot/dts/bcm47094-asus-rt-ac88u.dts b/arch/arm/boot/dts/bcm47094-asus-rt-ac88u.dts
index a50ff686b557..4d5747aa5dc8 100644
--- a/arch/arm/boot/dts/bcm47094-asus-rt-ac88u.dts
+++ b/arch/arm/boot/dts/bcm47094-asus-rt-ac88u.dts
@@ -181,32 +181,28 @@ &srab {
ports {
port at 0 {
- reg = <0>;
label = "lan4";
};
port at 1 {
- reg = <1>;
label = "lan3";
};
port at 2 {
- reg = <2>;
label = "lan2";
};
port at 3 {
- reg = <3>;
label = "lan1";
};
port at 4 {
- reg = <4>;
label = "wan";
};
sw0_p5: port at 5 {
- reg = <5>;
+ /delete-property/ethernet;
+
label = "extsw";
phy-mode = "rgmii";
@@ -218,8 +214,6 @@ fixed-link {
};
port at 7 {
- reg = <7>;
- ethernet = <&gmac1>;
label = "cpu";
fixed-link {
@@ -229,14 +223,7 @@ fixed-link {
};
port at 8 {
- reg = <8>;
- ethernet = <&gmac2>;
label = "cpu";
-
- fixed-link {
- speed = <1000>;
- full-duplex;
- };
};
};
};
diff --git a/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts b/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts
index 555fbe41dd8f..51ce510b3e3a 100644
--- a/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts
+++ b/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts
@@ -124,39 +124,27 @@ &srab {
ports {
port at 0 {
- reg = <0>;
label = "lan4";
};
port at 1 {
- reg = <1>;
label = "lan3";
};
port at 2 {
- reg = <2>;
label = "lan2";
};
port at 3 {
- reg = <3>;
label = "lan1";
};
port at 4 {
- reg = <4>;
label = "wan";
};
port at 8 {
- reg = <8>;
label = "cpu";
- ethernet = <&gmac2>;
-
- fixed-link {
- speed = <1000>;
- full-duplex;
- };
};
};
};
diff --git a/arch/arm/boot/dts/bcm47094-dlink-dir-890l.dts b/arch/arm/boot/dts/bcm47094-dlink-dir-890l.dts
index d945a20b06e0..60744f82c2b7 100644
--- a/arch/arm/boot/dts/bcm47094-dlink-dir-890l.dts
+++ b/arch/arm/boot/dts/bcm47094-dlink-dir-890l.dts
@@ -172,40 +172,28 @@ &srab {
ports {
port at 0 {
- reg = <0>;
label = "lan1";
};
port at 1 {
- reg = <1>;
label = "lan2";
};
port at 2 {
- reg = <2>;
label = "lan3";
};
port at 3 {
- reg = <3>;
label = "lan4";
};
port at 4 {
- reg = <4>;
label = "wan";
};
port at 8 {
- reg = <8>;
label = "cpu";
- ethernet = <&gmac2>;
phy-mode = "rgmii";
-
- fixed-link {
- speed = <1000>;
- full-duplex;
- };
};
};
};
diff --git a/arch/arm/boot/dts/bcm47094-linksys-panamera.dts b/arch/arm/boot/dts/bcm47094-linksys-panamera.dts
index d9a16a820e7f..8036c04d81cb 100644
--- a/arch/arm/boot/dts/bcm47094-linksys-panamera.dts
+++ b/arch/arm/boot/dts/bcm47094-linksys-panamera.dts
@@ -207,29 +207,32 @@ &srab {
dsa,member = <0 0>;
ports {
+ sw0_p0: port at 0 {
+ label = "extsw";
+
+ fixed-link {
+ speed = <1000>;
+ full-duplex;
+ };
+ };
+
port at 1 {
- reg = <1>;
label = "lan7";
};
port at 2 {
- reg = <2>;
label = "lan4";
};
port at 3 {
- reg = <3>;
label = "lan8";
};
port at 4 {
- reg = <4>;
label = "wan";
};
port at 5 {
- reg = <5>;
- ethernet = <&gmac0>;
label = "cpu";
status = "disabled";
@@ -240,8 +243,6 @@ fixed-link {
};
port at 7 {
- reg = <7>;
- ethernet = <&gmac1>;
label = "cpu";
status = "disabled";
@@ -252,24 +253,7 @@ fixed-link {
};
port at 8 {
- reg = <8>;
- ethernet = <&gmac2>;
label = "cpu";
-
- fixed-link {
- speed = <1000>;
- full-duplex;
- };
- };
-
- sw0_p0: port at 0 {
- reg = <0>;
- label = "extsw";
-
- fixed-link {
- speed = <1000>;
- full-duplex;
- };
};
};
};
diff --git a/arch/arm/boot/dts/bcm47094-luxul-abr-4500.dts b/arch/arm/boot/dts/bcm47094-luxul-abr-4500.dts
index ae5523870854..e8991d4e248c 100644
--- a/arch/arm/boot/dts/bcm47094-luxul-abr-4500.dts
+++ b/arch/arm/boot/dts/bcm47094-luxul-abr-4500.dts
@@ -83,36 +83,29 @@ &srab {
ports {
port at 0 {
- reg = <0>;
label = "wan";
nvmem-cells = <&et0macaddr 1>;
nvmem-cell-names = "mac-address";
};
port at 1 {
- reg = <1>;
label = "lan4";
};
port at 2 {
- reg = <2>;
label = "lan3";
};
port at 3 {
- reg = <3>;
label = "lan2";
};
port at 4 {
- reg = <4>;
label = "lan1";
};
port at 5 {
- reg = <5>;
label = "cpu";
- ethernet = <&gmac0>;
};
};
};
diff --git a/arch/arm/boot/dts/bcm47094-luxul-xap-1610.dts b/arch/arm/boot/dts/bcm47094-luxul-xap-1610.dts
index 9220f193499e..6875625869d9 100644
--- a/arch/arm/boot/dts/bcm47094-luxul-xap-1610.dts
+++ b/arch/arm/boot/dts/bcm47094-luxul-xap-1610.dts
@@ -73,19 +73,15 @@ &srab {
ports {
port at 0 {
- reg = <0>;
label = "poe";
};
port at 1 {
- reg = <1>;
label = "lan";
};
port at 5 {
- reg = <5>;
label = "cpu";
- ethernet = <&gmac0>;
};
};
};
diff --git a/arch/arm/boot/dts/bcm47094-luxul-xbr-4500.dts b/arch/arm/boot/dts/bcm47094-luxul-xbr-4500.dts
index 2bd64dcd4353..7cfa4607ef31 100644
--- a/arch/arm/boot/dts/bcm47094-luxul-xbr-4500.dts
+++ b/arch/arm/boot/dts/bcm47094-luxul-xbr-4500.dts
@@ -83,36 +83,29 @@ &srab {
ports {
port at 0 {
- reg = <0>;
label = "wan";
nvmem-cells = <&et0macaddr 1>;
nvmem-cell-names = "mac-address";
};
port at 1 {
- reg = <1>;
label = "lan4";
};
port at 2 {
- reg = <2>;
label = "lan3";
};
port at 3 {
- reg = <3>;
label = "lan2";
};
port at 4 {
- reg = <4>;
label = "lan1";
};
port at 5 {
- reg = <5>;
label = "cpu";
- ethernet = <&gmac0>;
};
};
};
diff --git a/arch/arm/boot/dts/bcm47094-luxul-xwc-2000.dts b/arch/arm/boot/dts/bcm47094-luxul-xwc-2000.dts
index 8a6d19f985c1..d55e10095eae 100644
--- a/arch/arm/boot/dts/bcm47094-luxul-xwc-2000.dts
+++ b/arch/arm/boot/dts/bcm47094-luxul-xwc-2000.dts
@@ -69,14 +69,11 @@ &srab {
ports {
port at 0 {
- reg = <0>;
label = "lan";
};
port at 5 {
- reg = <5>;
label = "cpu";
- ethernet = <&gmac0>;
};
};
};
diff --git a/arch/arm/boot/dts/bcm47094-luxul-xwr-3100.dts b/arch/arm/boot/dts/bcm47094-luxul-xwr-3100.dts
index 52783a4b6f99..ccf031c0e276 100644
--- a/arch/arm/boot/dts/bcm47094-luxul-xwr-3100.dts
+++ b/arch/arm/boot/dts/bcm47094-luxul-xwr-3100.dts
@@ -123,36 +123,29 @@ &srab {
ports {
port at 0 {
- reg = <0>;
label = "lan4";
};
port at 1 {
- reg = <1>;
label = "lan3";
};
port at 2 {
- reg = <2>;
label = "lan2";
};
port at 3 {
- reg = <3>;
label = "lan1";
};
port at 4 {
- reg = <4>;
label = "wan";
nvmem-cells = <&et0macaddr 5>;
nvmem-cell-names = "mac-address";
};
port at 5 {
- reg = <5>;
label = "cpu";
- ethernet = <&gmac0>;
};
};
};
diff --git a/arch/arm/boot/dts/bcm47094-luxul-xwr-3150-v1.dts b/arch/arm/boot/dts/bcm47094-luxul-xwr-3150-v1.dts
index 2dd05f4dce92..789dd2a3d226 100644
--- a/arch/arm/boot/dts/bcm47094-luxul-xwr-3150-v1.dts
+++ b/arch/arm/boot/dts/bcm47094-luxul-xwr-3150-v1.dts
@@ -98,36 +98,29 @@ &srab {
ports {
port at 0 {
- reg = <0>;
label = "lan4";
};
port at 1 {
- reg = <1>;
label = "lan3";
};
port at 2 {
- reg = <2>;
label = "lan2";
};
port at 3 {
- reg = <3>;
label = "lan1";
};
port at 4 {
- reg = <4>;
label = "wan";
nvmem-cells = <&et0macaddr 5>;
nvmem-cell-names = "mac-address";
};
port at 5 {
- reg = <5>;
label = "cpu";
- ethernet = <&gmac0>;
};
};
};
diff --git a/arch/arm/boot/dts/bcm53015-meraki-mr26.dts b/arch/arm/boot/dts/bcm53015-meraki-mr26.dts
index 071f2cb97251..24ba467c67b9 100644
--- a/arch/arm/boot/dts/bcm53015-meraki-mr26.dts
+++ b/arch/arm/boot/dts/bcm53015-meraki-mr26.dts
@@ -115,14 +115,11 @@ &srab {
ports {
port at 0 {
- reg = <0>;
label = "poe";
};
port at 5 {
- reg = <5>;
label = "cpu";
- ethernet = <&gmac0>;
fixed-link {
speed = <1000>;
diff --git a/arch/arm/boot/dts/bcm53016-meraki-mr32.dts b/arch/arm/boot/dts/bcm53016-meraki-mr32.dts
index 46c2c93b01d8..559d6c371d67 100644
--- a/arch/arm/boot/dts/bcm53016-meraki-mr32.dts
+++ b/arch/arm/boot/dts/bcm53016-meraki-mr32.dts
@@ -176,14 +176,11 @@ &srab {
ports {
port at 0 {
- reg = <0>;
label = "poe";
};
port at 5 {
- reg = <5>;
label = "cpu";
- ethernet = <&gmac0>;
fixed-link {
speed = <1000>;
--
2.35.3
More information about the linux-arm-kernel
mailing list