Thread (16 messages) 16 messages, 3 authors, 2022-10-31

RE: [PATCH net-next v7 08/10] powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G

From: Camelia Alexandra Groza <hidden>
Date: 2022-10-31 14:12:18
Also in: linux-arm-kernel, linux-devicetree, lkml, netdev

quoted hunk ↗ jump to hunk
-----Original Message-----
From: Sean Anderson <redacted>
Sent: Friday, October 28, 2022 19:55
To: Camelia Alexandra Groza <redacted>; Sean Anderson
[off-list ref]; David S . Miller [off-list ref];
Jakub Kicinski [off-list ref]; Madalin Bucur
[off-list ref]; netdev@vger.kernel.org
Cc: Eric Dumazet <edumazet@google.com>; linuxppc-dev @ lists . ozlabs .
org [off-list ref]; linux-arm-kernel@lists.infradead.org;
linux-kernel@vger.kernel.org; Russell King [off-list ref]; Paolo
Abeni [off-list ref]; Benjamin Herrenschmidt
[off-list ref]; Krzysztof Kozlowski
[off-list ref]; Leo Li [off-list ref]; Michael
Ellerman [off-list ref]; Paul Mackerras [off-list ref]; Rob
Herring [off-list ref]; devicetree@vger.kernel.org
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:
quoted
quoted
-----Original Message-----
From: Sean Anderson <redacted>
Sent: Monday, October 17, 2022 23:23
To: David S . Miller <davem@davemloft.net>; Jakub Kicinski
[off-list ref]; Madalin Bucur [off-list ref]; Camelia
Alexandra Groza [off-list ref]; netdev@vger.kernel.org
Cc: Eric Dumazet <edumazet@google.com>; linuxppc-dev @ lists . ozlabs .
org [off-list ref]; linux-arm-
kernel@lists.infradead.org;
quoted
quoted
linux-kernel@vger.kernel.org; Russell King [off-list ref];
Paolo
quoted
quoted
Abeni [off-list ref]; Sean Anderson
[off-list ref];
quoted
quoted
Benjamin Herrenschmidt [off-list ref]; Krzysztof
Kozlowski
quoted
quoted
[off-list ref]; Leo Li [off-list ref];
Michael
quoted
quoted
Ellerman [off-list ref]; Paul Mackerras [off-list ref];
Rob
quoted
quoted
Herring [off-list ref]; devicetree@vger.kernel.org
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 <redacted>
---

(no changes since v4)

Changes in v4:
- New
Hi Sean,

These changes prevent MAC2 from probing on T2080RDB due to
insufficient FMan hardware resources.
quoted
fsl-fman ffe400000.fman: set_num_of_tasks: Requested num_of_tasks
and extra tasks pool for fm0 exceed total num_of_tasks.
quoted
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.
quoted
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
quoted
Regards,
Camelia

quoted
  .../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
quoted
quoted
  create mode 100644 arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-
3.dtsi
quoted
quoted
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 [off-list ref]
+ * 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 [off-list ref]
+ * 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
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help