[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZUTynJpOSZVowuJk@shell.armlinux.org.uk>
Date: Fri, 3 Nov 2023 13:16:12 +0000
From: "Russell King (Oracle)" <linux@...linux.org.uk>
To: Andrew Lunn <andrew@...n.ch>
Cc: Oleksij Rempel <o.rempel@...gutronix.de>,
Shawn Guo <shawnguo@...nel.org>,
Sascha Hauer <s.hauer@...gutronix.de>,
Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Søren Andersen <san@...v.dk>,
Sam Ravnborg <sam@...nborg.org>, kernel@...gutronix.de,
linux-kernel@...r.kernel.org, devicetree@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org,
NXP Linux Team <linux-imx@....com>,
Fabio Estevam <festevam@...il.com>
Subject: Re: [PATCH v2 2/2] arm64: dts: freescale: Add SKOV IMX8MP CPU revB
board
On Fri, Nov 03, 2023 at 01:35:46PM +0100, Andrew Lunn wrote:
> > + port@2 {
> > + reg = <2>;
> > + label = "cpu";
> > + ethernet = <&eqos>;
> > + /* 2ns rgmii-rxid is implemented on PCB.
> > + * Switch should add only rgmii-txid.
> > + */
>
> Its unusual to actually see that. Its even more unusual its only one
> clock line. Can you actually see it on the PCB?
>
> > + phy-mode = "rgmii-txid";
> > + tx-internal-delay-ps = <2000>;
>
> Is this actually needed? rgmii-txid should add 2ns delay. Since this
> apparently works, i'm assuming setting tx-internal-delay-ps to 2ns
> does nothing, otherwise you would have a 4ns delay.
Umm... I think we're getting confused again.
Mode Local end Remote end
RGMII No added delays No added delays
RGMII-TXID No added delays 2ns delay on TX
RGMII-RXID No added delays 2ns delay on RX
RGMII-ID No added delays 2ns delay on both TX and RX
In the case of a network interface with a PHY, "local end" is the
MAC and "remote end" is the PHY.
For a switch port connected to an external PHY, the switch port is
as the "MAC" as above.
For a switch port connected to an ethernet MAC:
- for the MAC declaration, the local end is the MAC. There is no
communication of the interface mode with the remote end under
Linux, so this is irrelevant for Linux. However, this is an
implementation, and it should be chosen according to the hardware.
- for the switch port declaration, the local end is the switch port.
There is no communication of the interface mode with the remote
end under Linux. However, it should be chosen according to the
hardware.
So, if the 2ns delay is implemented on the RX lines (from the switch
perspective) then shouldn't the MAC side be using "rgmii-txid" to
indicate that the delay is being applied by the remote end (switch).
The switch side should be using "rgmii" because no delays are required
from the remote end (MAC), and the delay on the TX lines should be
specified using "tx-internal-delay-ps"?
--
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTP is here! 80Mbps down 10Mbps up. Decent connectivity at last!
Powered by blists - more mailing lists