RE: [PATCH net-next v7 08/10] powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G
From: Camelia Alexandra Groza
Date: Mon Oct 31 2022 - 10:12:19 EST
> -----Original Message-----
> From: Sean Anderson <sean.anderson@xxxxxxxx>
> Sent: Friday, October 28, 2022 19:55
> To: Camelia Alexandra Groza <camelia.groza@xxxxxxx>; Sean Anderson
> <sean.anderson@xxxxxxxx>; David S . Miller <davem@xxxxxxxxxxxxx>;
> Jakub Kicinski <kuba@xxxxxxxxxx>; Madalin Bucur
> <madalin.bucur@xxxxxxx>; netdev@xxxxxxxxxxxxxxx
> Cc: Eric Dumazet <edumazet@xxxxxxxxxx>; linuxppc-dev @ lists . ozlabs .
> org <linuxppc-dev@xxxxxxxxxxxxxxxx>; linux-arm-kernel@xxxxxxxxxxxxxxxxxxx;
> linux-kernel@xxxxxxxxxxxxxxx; Russell King <linux@xxxxxxxxxxxxxxx>; Paolo
> Abeni <pabeni@xxxxxxxxxx>; Benjamin Herrenschmidt
> <benh@xxxxxxxxxxxxxxxxxxx>; Krzysztof Kozlowski
> <krzysztof.kozlowski+dt@xxxxxxxxxx>; Leo Li <leoyang.li@xxxxxxx>; Michael
> Ellerman <mpe@xxxxxxxxxxxxxx>; Paul Mackerras <paulus@xxxxxxxxx>; Rob
> Herring <robh+dt@xxxxxxxxxx>; devicetree@xxxxxxxxxxxxxxx
> Subject: Re: [PATCH net-next v7 08/10] powerpc: dts: t208x: Mark MAC1 and
> MAC2 as 10G
>
> On 10/28/22 12:30, Camelia Alexandra Groza wrote:
> >> -----Original Message-----
> >> From: Sean Anderson <sean.anderson@xxxxxxxx>
> >> Sent: Monday, October 17, 2022 23:23
> >> To: David S . Miller <davem@xxxxxxxxxxxxx>; Jakub Kicinski
> >> <kuba@xxxxxxxxxx>; Madalin Bucur <madalin.bucur@xxxxxxx>; Camelia
> >> Alexandra Groza <camelia.groza@xxxxxxx>; netdev@xxxxxxxxxxxxxxx
> >> Cc: Eric Dumazet <edumazet@xxxxxxxxxx>; linuxppc-dev @ lists . ozlabs .
> >> org <linuxppc-dev@xxxxxxxxxxxxxxxx>; linux-arm-
> kernel@xxxxxxxxxxxxxxxxxxx;
> >> linux-kernel@xxxxxxxxxxxxxxx; Russell King <linux@xxxxxxxxxxxxxxx>;
> Paolo
> >> Abeni <pabeni@xxxxxxxxxx>; Sean Anderson
> <sean.anderson@xxxxxxxx>;
> >> Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>; Krzysztof
> Kozlowski
> >> <krzysztof.kozlowski+dt@xxxxxxxxxx>; Leo Li <leoyang.li@xxxxxxx>;
> Michael
> >> Ellerman <mpe@xxxxxxxxxxxxxx>; Paul Mackerras <paulus@xxxxxxxxx>;
> Rob
> >> Herring <robh+dt@xxxxxxxxxx>; devicetree@xxxxxxxxxxxxxxx
> >> Subject: [PATCH net-next v7 08/10] powerpc: dts: t208x: Mark MAC1 and
> >> MAC2 as 10G
> >>
> >> On the T208X SoCs, MAC1 and MAC2 support XGMII. Add some new MAC
> >> dtsi
> >> fragments, and mark the QMAN ports as 10G.
> >>
> >> Fixes: da414bb923d9 ("powerpc/mpc85xx: Add FSL QorIQ DPAA FMan
> >> support to the SoC device tree(s)")
> >> Signed-off-by: Sean Anderson <sean.anderson@xxxxxxxx>
> >> ---
> >>
> >> (no changes since v4)
> >>
> >> Changes in v4:
> >> - New
> >
> > Hi Sean,
> >
> > These changes prevent MAC2 from probing on T2080RDB due to
> insufficient FMan hardware resources.
> >
> > fsl-fman ffe400000.fman: set_num_of_tasks: Requested num_of_tasks
> and extra tasks pool for fm0 exceed total num_of_tasks.
> > fsl_dpa: dpaa_eth_init_tx_port: fm_port_init failed
> > fsl_dpa: probe of dpaa-ethernet.5 failed with error -11
> >
> > The distribution of resources depends on the port type, and different
> FMan hardware revisions have different amounts of resources.
> >
> > The current distribution of resources can be reconsidered, but this change
> should be reverted for now.
>
> OK, so this patch does two things:
>
> @@ -37,12 +11,14 @@
> cell-index = <0x8>;
> compatible = "fsl,fman-v3-port-rx";
> reg = <0x88000 0x1000>;
> + fsl,fman-10g-port;
> };
>
> fman0_tx_0x28: port@a8000 {
> cell-index = <0x28>;
> compatible = "fsl,fman-v3-port-tx";
> reg = <0xa8000 0x1000>;
> + fsl,fman-10g-port;
> };
>
> ethernet@e0000 {
> @@ -52,7 +28,7 @@
> fsl,fman-ports = <&fman0_rx_0x08 &fman0_tx_0x28>;
> ptp-timer = <&ptp_timer0>;
> pcsphy-handle = <&pcsphy0>, <&pcsphy0>;
> - pcs-handle-names = "sgmii", "qsgmii";
> + pcs-handle-names = "sgmii", "xfi";
> };
>
> mdio@e1000 {
>
> First, it marks the ports as 10g. I believe this is what's causing the
> resource problems above.
That's right.
> Second, it removes support for QSGMII and adds
> support for XFI. This is a matter of correctness; these MACs really
> don't support QSGMII, and do support XFI.
Correct, these MACs don't support QSGMII on this SoC.
> As I understand it, you can
> run a 10g port at 1g speeds, it just won't perform as well. So I think a
> more minimal revert would be to delete the fsl,fman-10g-port properties
> in t2081si-post.dtsi.
Since these two new dtsi files are included by only one SoC, I don't see an
advantage in adding these properties and then deleting them. No other
users benefit from adding them in the first place.
> That said, is 10g even being used on these ports? I included this patch
> in order to avoid breaking any existing users.
It is used, though less efficiently, with fewer FMan hardware resources.
Camelia
> --Sean
>
> > Regards,
> > Camelia
> >
> >
> >> .../boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi | 44 +++++++++++++++++++
> >> .../boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi | 44 +++++++++++++++++++
> >> arch/powerpc/boot/dts/fsl/t2081si-post.dtsi | 4 +-
> >> 3 files changed, 90 insertions(+), 2 deletions(-)
> >> create mode 100644 arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-
> 2.dtsi
> >> create mode 100644 arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-
> 3.dtsi
> >>
> >> diff --git a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi
> >> b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi
> >> new file mode 100644
> >> index 000000000000..437dab3fc017
> >> --- /dev/null
> >> +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi
> >> @@ -0,0 +1,44 @@
> >> +// SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0-or-later
> >> +/*
> >> + * QorIQ FMan v3 10g port #2 device tree stub [ controller @ offset
> >> 0x400000 ]
> >> + *
> >> + * Copyright 2022 Sean Anderson <sean.anderson@xxxxxxxx>
> >> + * Copyright 2012 - 2015 Freescale Semiconductor Inc.
> >> + */
> >> +
> >> +fman@400000 {
> >> + fman0_rx_0x08: port@88000 {
> >> + cell-index = <0x8>;
> >> + compatible = "fsl,fman-v3-port-rx";
> >> + reg = <0x88000 0x1000>;
> >> + fsl,fman-10g-port;
> >> + };
> >> +
> >> + fman0_tx_0x28: port@a8000 {
> >> + cell-index = <0x28>;
> >> + compatible = "fsl,fman-v3-port-tx";
> >> + reg = <0xa8000 0x1000>;
> >> + fsl,fman-10g-port;
> >> + };
> >> +
> >> + ethernet@e0000 {
> >> + cell-index = <0>;
> >> + compatible = "fsl,fman-memac";
> >> + reg = <0xe0000 0x1000>;
> >> + fsl,fman-ports = <&fman0_rx_0x08 &fman0_tx_0x28>;
> >> + ptp-timer = <&ptp_timer0>;
> >> + pcsphy-handle = <&pcsphy0>;
> >> + };
> >> +
> >> + mdio@e1000 {
> >> + #address-cells = <1>;
> >> + #size-cells = <0>;
> >> + compatible = "fsl,fman-memac-mdio", "fsl,fman-xmdio";
> >> + reg = <0xe1000 0x1000>;
> >> + fsl,erratum-a011043; /* must ignore read errors */
> >> +
> >> + pcsphy0: ethernet-phy@0 {
> >> + reg = <0x0>;
> >> + };
> >> + };
> >> +};
> >> diff --git a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi
> >> b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi
> >> new file mode 100644
> >> index 000000000000..ad116b17850a
> >> --- /dev/null
> >> +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi
> >> @@ -0,0 +1,44 @@
> >> +// SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0-or-later
> >> +/*
> >> + * QorIQ FMan v3 10g port #3 device tree stub [ controller @ offset
> >> 0x400000 ]
> >> + *
> >> + * Copyright 2022 Sean Anderson <sean.anderson@xxxxxxxx>
> >> + * Copyright 2012 - 2015 Freescale Semiconductor Inc.
> >> + */
> >> +
> >> +fman@400000 {
> >> + fman0_rx_0x09: port@89000 {
> >> + cell-index = <0x9>;
> >> + compatible = "fsl,fman-v3-port-rx";
> >> + reg = <0x89000 0x1000>;
> >> + fsl,fman-10g-port;
> >> + };
> >> +
> >> + fman0_tx_0x29: port@a9000 {
> >> + cell-index = <0x29>;
> >> + compatible = "fsl,fman-v3-port-tx";
> >> + reg = <0xa9000 0x1000>;
> >> + fsl,fman-10g-port;
> >> + };
> >> +
> >> + ethernet@e2000 {
> >> + cell-index = <1>;
> >> + compatible = "fsl,fman-memac";
> >> + reg = <0xe2000 0x1000>;
> >> + fsl,fman-ports = <&fman0_rx_0x09 &fman0_tx_0x29>;
> >> + ptp-timer = <&ptp_timer0>;
> >> + pcsphy-handle = <&pcsphy1>;
> >> + };
> >> +
> >> + mdio@e3000 {
> >> + #address-cells = <1>;
> >> + #size-cells = <0>;
> >> + compatible = "fsl,fman-memac-mdio", "fsl,fman-xmdio";
> >> + reg = <0xe3000 0x1000>;
> >> + fsl,erratum-a011043; /* must ignore read errors */
> >> +
> >> + pcsphy1: ethernet-phy@0 {
> >> + reg = <0x0>;
> >> + };
> >> + };
> >> +};
> >> diff --git a/arch/powerpc/boot/dts/fsl/t2081si-post.dtsi
> >> b/arch/powerpc/boot/dts/fsl/t2081si-post.dtsi
> >> index ecbb447920bc..74e17e134387 100644
> >> --- a/arch/powerpc/boot/dts/fsl/t2081si-post.dtsi
> >> +++ b/arch/powerpc/boot/dts/fsl/t2081si-post.dtsi
> >> @@ -609,8 +609,8 @@ usb1: usb@211000 {
> >> /include/ "qoriq-bman1.dtsi"
> >>
> >> /include/ "qoriq-fman3-0.dtsi"
> >> -/include/ "qoriq-fman3-0-1g-0.dtsi"
> >> -/include/ "qoriq-fman3-0-1g-1.dtsi"
> >> +/include/ "qoriq-fman3-0-10g-2.dtsi"
> >> +/include/ "qoriq-fman3-0-10g-3.dtsi"
> >> /include/ "qoriq-fman3-0-1g-2.dtsi"
> >> /include/ "qoriq-fman3-0-1g-3.dtsi"
> >> /include/ "qoriq-fman3-0-1g-4.dtsi"
> >> --
> >> 2.35.1.1320.gc452695387.dirty
> >