powerpc: dts: qoriq: Add nodes for QSGMII PCSs
authorSean Anderson <sean.anderson@seco.com>
Mon, 17 Oct 2022 20:22:40 +0000 (16:22 -0400)
committerDavid S. Miller <davem@davemloft.net>
Wed, 19 Oct 2022 12:25:09 +0000 (13:25 +0100)
Now that we actually read registers from QSGMII PCSs, it's important
that we have the correct address (instead of hoping that we're the MAC
with all the QSGMII PCSs on its bus). This adds nodes for the QSGMII
PCSs. They have the same addresses on all SoCs (e.g. if QSGMIIA is
present it's used for MACs 1 through 4).

Since the first QSGMII PCSs share an address with the SGMII and XFI
PCSs, we only add new nodes for PCSs 2-4. This avoids address conflicts
on the bus.

Signed-off-by: Sean Anderson <sean.anderson@seco.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
20 files changed:
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-0-best-effort.dtsi
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-0.dtsi
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-1-best-effort.dtsi
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-1.dtsi
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-0.dtsi
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-1.dtsi
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-2.dtsi
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-3.dtsi
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-4.dtsi
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-5.dtsi
arch/powerpc/boot/dts/fsl/qoriq-fman3-1-10g-0.dtsi
arch/powerpc/boot/dts/fsl/qoriq-fman3-1-10g-1.dtsi
arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-0.dtsi
arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-1.dtsi
arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-2.dtsi
arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-3.dtsi
arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-4.dtsi
arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-5.dtsi

index baa0c50..7e70977 100644 (file)
@@ -55,7 +55,8 @@ fman@400000 {
                reg = <0xe0000 0x1000>;
                fsl,fman-ports = <&fman0_rx_0x08 &fman0_tx_0x28>;
                ptp-timer = <&ptp_timer0>;
-               pcsphy-handle = <&pcsphy0>;
+               pcsphy-handle = <&pcsphy0>, <&pcsphy0>;
+               pcs-handle-names = "sgmii", "qsgmii";
        };
 
        mdio@e1000 {
index 9309560..5f89f7c 100644 (file)
@@ -52,7 +52,15 @@ fman@400000 {
                compatible = "fsl,fman-memac";
                reg = <0xf0000 0x1000>;
                fsl,fman-ports = <&fman0_rx_0x10 &fman0_tx_0x30>;
-               pcsphy-handle = <&pcsphy6>;
+               pcsphy-handle = <&pcsphy6>, <&qsgmiib_pcs2>, <&pcsphy6>;
+               pcs-handle-names = "sgmii", "qsgmii", "xfi";
+       };
+
+       mdio@e9000 {
+               qsgmiib_pcs2: ethernet-pcs@2 {
+                       compatible = "fsl,lynx-pcs";
+                       reg = <2>;
+               };
        };
 
        mdio@f1000 {
index ff4bd38..71eb75e 100644 (file)
@@ -55,7 +55,15 @@ fman@400000 {
                reg = <0xe2000 0x1000>;
                fsl,fman-ports = <&fman0_rx_0x09 &fman0_tx_0x29>;
                ptp-timer = <&ptp_timer0>;
-               pcsphy-handle = <&pcsphy1>;
+               pcsphy-handle = <&pcsphy1>, <&qsgmiia_pcs1>;
+               pcs-handle-names = "sgmii", "qsgmii";
+       };
+
+       mdio@e1000 {
+               qsgmiia_pcs1: ethernet-pcs@1 {
+                       compatible = "fsl,lynx-pcs";
+                       reg = <1>;
+               };
        };
 
        mdio@e3000 {
index 1fa38ed..fb7032d 100644 (file)
@@ -52,7 +52,15 @@ fman@400000 {
                compatible = "fsl,fman-memac";
                reg = <0xf2000 0x1000>;
                fsl,fman-ports = <&fman0_rx_0x11 &fman0_tx_0x31>;
-               pcsphy-handle = <&pcsphy7>;
+               pcsphy-handle = <&pcsphy7>, <&qsgmiib_pcs3>, <&pcsphy7>;
+               pcs-handle-names = "sgmii", "qsgmii", "xfi";
+       };
+
+       mdio@e9000 {
+               qsgmiib_pcs3: ethernet-pcs@3 {
+                       compatible = "fsl,lynx-pcs";
+                       reg = <3>;
+               };
        };
 
        mdio@f3000 {
index 437dab3..6b36095 100644 (file)
@@ -27,7 +27,8 @@ fman@400000 {
                reg = <0xe0000 0x1000>;
                fsl,fman-ports = <&fman0_rx_0x08 &fman0_tx_0x28>;
                ptp-timer = <&ptp_timer0>;
-               pcsphy-handle = <&pcsphy0>;
+               pcsphy-handle = <&pcsphy0>, <&pcsphy0>;
+               pcs-handle-names = "sgmii", "xfi";
        };
 
        mdio@e1000 {
index ad116b1..28ed1a8 100644 (file)
@@ -27,7 +27,8 @@ fman@400000 {
                reg = <0xe2000 0x1000>;
                fsl,fman-ports = <&fman0_rx_0x09 &fman0_tx_0x29>;
                ptp-timer = <&ptp_timer0>;
-               pcsphy-handle = <&pcsphy1>;
+               pcsphy-handle = <&pcsphy1>, <&pcsphy1>;
+               pcs-handle-names = "sgmii", "xfi";
        };
 
        mdio@e3000 {
index a8cc978..1089d68 100644 (file)
@@ -51,7 +51,8 @@ fman@400000 {
                reg = <0xe0000 0x1000>;
                fsl,fman-ports = <&fman0_rx_0x08 &fman0_tx_0x28>;
                ptp-timer = <&ptp_timer0>;
-               pcsphy-handle = <&pcsphy0>;
+               pcsphy-handle = <&pcsphy0>, <&pcsphy0>;
+               pcs-handle-names = "sgmii", "qsgmii";
        };
 
        mdio@e1000 {
index 8b8bd70..a95bbb4 100644 (file)
@@ -51,7 +51,15 @@ fman@400000 {
                reg = <0xe2000 0x1000>;
                fsl,fman-ports = <&fman0_rx_0x09 &fman0_tx_0x29>;
                ptp-timer = <&ptp_timer0>;
-               pcsphy-handle = <&pcsphy1>;
+               pcsphy-handle = <&pcsphy1>, <&qsgmiia_pcs1>;
+               pcs-handle-names = "sgmii", "qsgmii";
+       };
+
+       mdio@e1000 {
+               qsgmiia_pcs1: ethernet-pcs@1 {
+                       compatible = "fsl,lynx-pcs";
+                       reg = <1>;
+               };
        };
 
        mdio@e3000 {
index 619c880..7d5af01 100644 (file)
@@ -51,7 +51,15 @@ fman@400000 {
                reg = <0xe4000 0x1000>;
                fsl,fman-ports = <&fman0_rx_0x0a &fman0_tx_0x2a>;
                ptp-timer = <&ptp_timer0>;
-               pcsphy-handle = <&pcsphy2>;
+               pcsphy-handle = <&pcsphy2>, <&qsgmiia_pcs2>;
+               pcs-handle-names = "sgmii", "qsgmii";
+       };
+
+       mdio@e1000 {
+               qsgmiia_pcs2: ethernet-pcs@2 {
+                       compatible = "fsl,lynx-pcs";
+                       reg = <2>;
+               };
        };
 
        mdio@e5000 {
index d7ebb73..61e5466 100644 (file)
@@ -51,7 +51,15 @@ fman@400000 {
                reg = <0xe6000 0x1000>;
                fsl,fman-ports = <&fman0_rx_0x0b &fman0_tx_0x2b>;
                ptp-timer = <&ptp_timer0>;
-               pcsphy-handle = <&pcsphy3>;
+               pcsphy-handle = <&pcsphy3>, <&qsgmiia_pcs3>;
+               pcs-handle-names = "sgmii", "qsgmii";
+       };
+
+       mdio@e1000 {
+               qsgmiia_pcs3: ethernet-pcs@3 {
+                       compatible = "fsl,lynx-pcs";
+                       reg = <3>;
+               };
        };
 
        mdio@e7000 {
index b151d69..3ba0cda 100644 (file)
@@ -51,7 +51,8 @@ fman@400000 {
                reg = <0xe8000 0x1000>;
                fsl,fman-ports = <&fman0_rx_0x0c &fman0_tx_0x2c>;
                ptp-timer = <&ptp_timer0>;
-               pcsphy-handle = <&pcsphy4>;
+               pcsphy-handle = <&pcsphy4>, <&pcsphy4>;
+               pcs-handle-names = "sgmii", "qsgmii";
        };
 
        mdio@e9000 {
index adc0ae0..51748de 100644 (file)
@@ -51,7 +51,15 @@ fman@400000 {
                reg = <0xea000 0x1000>;
                fsl,fman-ports = <&fman0_rx_0x0d &fman0_tx_0x2d>;
                ptp-timer = <&ptp_timer0>;
-               pcsphy-handle = <&pcsphy5>;
+               pcsphy-handle = <&pcsphy5>, <&qsgmiib_pcs1>;
+               pcs-handle-names = "sgmii", "qsgmii";
+       };
+
+       mdio@e9000 {
+               qsgmiib_pcs1: ethernet-pcs@1 {
+                       compatible = "fsl,lynx-pcs";
+                       reg = <1>;
+               };
        };
 
        mdio@eb000 {
index 435047e..ee4f517 100644 (file)
@@ -52,7 +52,15 @@ fman@500000 {
                compatible = "fsl,fman-memac";
                reg = <0xf0000 0x1000>;
                fsl,fman-ports = <&fman1_rx_0x10 &fman1_tx_0x30>;
-               pcsphy-handle = <&pcsphy14>;
+               pcsphy-handle = <&pcsphy14>, <&qsgmiid_pcs2>, <&pcsphy14>;
+               pcs-handle-names = "sgmii", "qsgmii", "xfi";
+       };
+
+       mdio@e9000 {
+               qsgmiid_pcs2: ethernet-pcs@2 {
+                       compatible = "fsl,lynx-pcs";
+                       reg = <2>;
+               };
        };
 
        mdio@f1000 {
index c098657..83d2e0c 100644 (file)
@@ -52,7 +52,15 @@ fman@500000 {
                compatible = "fsl,fman-memac";
                reg = <0xf2000 0x1000>;
                fsl,fman-ports = <&fman1_rx_0x11 &fman1_tx_0x31>;
-               pcsphy-handle = <&pcsphy15>;
+               pcsphy-handle = <&pcsphy15>, <&qsgmiid_pcs3>, <&pcsphy15>;
+               pcs-handle-names = "sgmii", "qsgmii", "xfi";
+       };
+
+       mdio@e9000 {
+               qsgmiid_pcs3: ethernet-pcs@3 {
+                       compatible = "fsl,lynx-pcs";
+                       reg = <3>;
+               };
        };
 
        mdio@f3000 {
index 9d06824..3132fc7 100644 (file)
@@ -51,7 +51,8 @@ fman@500000 {
                reg = <0xe0000 0x1000>;
                fsl,fman-ports = <&fman1_rx_0x08 &fman1_tx_0x28>;
                ptp-timer = <&ptp_timer1>;
-               pcsphy-handle = <&pcsphy8>;
+               pcsphy-handle = <&pcsphy8>, <&pcsphy8>;
+               pcs-handle-names = "sgmii", "qsgmii";
        };
 
        mdio@e1000 {
index 70e9477..75e904d 100644 (file)
@@ -51,7 +51,15 @@ fman@500000 {
                reg = <0xe2000 0x1000>;
                fsl,fman-ports = <&fman1_rx_0x09 &fman1_tx_0x29>;
                ptp-timer = <&ptp_timer1>;
-               pcsphy-handle = <&pcsphy9>;
+               pcsphy-handle = <&pcsphy9>, <&qsgmiic_pcs1>;
+               pcs-handle-names = "sgmii", "qsgmii";
+       };
+
+       mdio@e1000 {
+               qsgmiic_pcs1: ethernet-pcs@1 {
+                       compatible = "fsl,lynx-pcs";
+                       reg = <1>;
+               };
        };
 
        mdio@e3000 {
index ad96e65..69f2cc7 100644 (file)
@@ -51,7 +51,15 @@ fman@500000 {
                reg = <0xe4000 0x1000>;
                fsl,fman-ports = <&fman1_rx_0x0a &fman1_tx_0x2a>;
                ptp-timer = <&ptp_timer1>;
-               pcsphy-handle = <&pcsphy10>;
+               pcsphy-handle = <&pcsphy10>, <&qsgmiic_pcs2>;
+               pcs-handle-names = "sgmii", "qsgmii";
+       };
+
+       mdio@e1000 {
+               qsgmiic_pcs2: ethernet-pcs@2 {
+                       compatible = "fsl,lynx-pcs";
+                       reg = <2>;
+               };
        };
 
        mdio@e5000 {
index 034bc4b..b3aaf01 100644 (file)
@@ -51,7 +51,15 @@ fman@500000 {
                reg = <0xe6000 0x1000>;
                fsl,fman-ports = <&fman1_rx_0x0b &fman1_tx_0x2b>;
                ptp-timer = <&ptp_timer1>;
-               pcsphy-handle = <&pcsphy11>;
+               pcsphy-handle = <&pcsphy11>, <&qsgmiic_pcs3>;
+               pcs-handle-names = "sgmii", "qsgmii";
+       };
+
+       mdio@e1000 {
+               qsgmiic_pcs3: ethernet-pcs@3 {
+                       compatible = "fsl,lynx-pcs";
+                       reg = <3>;
+               };
        };
 
        mdio@e7000 {
index 93ca23d..18e0204 100644 (file)
@@ -51,7 +51,8 @@ fman@500000 {
                reg = <0xe8000 0x1000>;
                fsl,fman-ports = <&fman1_rx_0x0c &fman1_tx_0x2c>;
                ptp-timer = <&ptp_timer1>;
-               pcsphy-handle = <&pcsphy12>;
+               pcsphy-handle = <&pcsphy12>, <&pcsphy12>;
+               pcs-handle-names = "sgmii", "qsgmii";
        };
 
        mdio@e9000 {
index 23b3117..55f329d 100644 (file)
@@ -51,7 +51,15 @@ fman@500000 {
                reg = <0xea000 0x1000>;
                fsl,fman-ports = <&fman1_rx_0x0d &fman1_tx_0x2d>;
                ptp-timer = <&ptp_timer1>;
-               pcsphy-handle = <&pcsphy13>;
+               pcsphy-handle = <&pcsphy13>, <&qsgmiid_pcs1>;
+               pcs-handle-names = "sgmii", "qsgmii";
+       };
+
+       mdio@e9000 {
+               qsgmiid_pcs1: ethernet-pcs@1 {
+                       compatible = "fsl,lynx-pcs";
+                       reg = <1>;
+               };
        };
 
        mdio@eb000 {