Re: [PATCH v2 2/2] arm64: dts: freescale: Add SKOV IMX8MP CPU revB board

From: Andrew Lunn
Date: Fri Nov 03 2023 - 09:15:47 EST


On Fri, Nov 03, 2023 at 01:53:06PM +0100, Oleksij Rempel wrote:
> Hi Andrew,
>
> 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?
>
> Yes. I even made a delay calculation by measuring this trace on PCB,
> just to make sure I see it correctly.

Cool. I need to keep this board in mind, its about the only one i know
of which actually does this.

> > > + 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.
>
> Without it the driver will complain:
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/net/dsa/microchip/ksz_common.c?h=v6.6#n3496

Ah! Humm. I forget how this all works. This is the port node, not the
PHY. We are configuring the MAC delays with tx-internal-delay-ps.
There is no PHY here, so phy-mode is not used by any PHY. All that
might matter is that you indicate rgmii or some sort. Have you tried
plain "rgmii". It then looks less like you have 4ns of delay.

Andrew