netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Philippe Schenker <philippe.schenker@toradex.com>
To: "geert@linux-m68k.org" <geert@linux-m68k.org>
Cc: "andrew@lunn.ch" <andrew@lunn.ch>,
	"linux@armlinux.org.uk" <linux@armlinux.org.uk>,
	"kernel@pengutronix.de" <kernel@pengutronix.de>,
	"hkallweit1@gmail.com" <hkallweit1@gmail.com>,
	"davem@davemloft.net" <davem@davemloft.net>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"sergei.shtylyov@cogentembedded.com" 
	<sergei.shtylyov@cogentembedded.com>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
	"david@protonic.nl" <david@protonic.nl>,
	"f.fainelli@gmail.com" <f.fainelli@gmail.com>,
	"linux-renesas-soc@vger.kernel.org" 
	<linux-renesas-soc@vger.kernel.org>,
	"kazuya.mizuguchi.ks@renesas.com"
	<kazuya.mizuguchi.ks@renesas.com>
Subject: Re: [PATCH net-next v3] net: phy: micrel: add phy-mode support for the KSZ9031 PHY
Date: Wed, 29 Apr 2020 10:02:46 +0000	[thread overview]
Message-ID: <446fdadabfb852db3278553c5b6f8cbc003de5ea.camel@toradex.com> (raw)
In-Reply-To: <CAMuHMdXm7n6cE5-ZjwxU_yKSrCaZCwqc_tBA+M_Lq53hbH2-jg@mail.gmail.com>

On Wed, 2020-04-29 at 10:45 +0200, Geert Uytterhoeven wrote:
> Hi Philippe,
> 
> On Tue, Apr 28, 2020 at 6:16 PM Philippe Schenker
> <philippe.schenker@toradex.com> wrote:
> > On Tue, 2020-04-28 at 17:47 +0200, Andrew Lunn wrote:
> > > On Tue, Apr 28, 2020 at 05:28:30PM +0200, Geert Uytterhoeven
> > > wrote:
> > > > This triggers on Renesas Salvator-X(S):
> > > > 
> > > >     Micrel KSZ9031 Gigabit PHY e6800000.ethernet-ffffffff:00:
> > > > *-skew-ps values should be used only with phy-mode = "rgmii"
> > > > 
> > > > which uses:
> > > > 
> > > >         phy-mode = "rgmii-txid";
> > > > 
> > > > and:
> > > > 
> > > >         rxc-skew-ps = <1500>;
> > > > 
> > > > If I understand Documentation/devicetree/bindings/net/ethernet-
> > > > controller.yaml
> > > > correctly:
> > > 
> > > Checking for skews which might contradict the PHY-mode is new. I
> > > think
> > > this is the first PHY driver to do it. So i'm not too surprised it
> > > has
> > > triggered a warning, or there is contradictory documentation.
> > > 
> > > Your use cases is reasonable. Have the normal transmit delay, and
> > > a
> > > bit shorted receive delay. So we should allow it. It just makes
> > > the
> > > validation code more complex :-(
> > 
> > I reviewed Oleksij's patch that introduced this warning. I just want
> > to
> > explain our thinking why this is a good thing, but yes maybe we
> > change
> > that warning a little bit until it lands in mainline.
> > 
> > The KSZ9031 driver didn't support for proper phy-modes until now as
> > it
> > don't have dedicated registers to control tx and rx delays. With
> > Oleksij's patch this delay is now done accordingly in skew registers
> > as
> > best as possible. If you now also set the rxc-skew-ps registers
> > those
> > values you previously set with rgmii-txid or rxid get overwritten.
> > 
> > We chose the warning to occur on phy-modes 'rgmii-id', 'rgmii-rxid'
> > and
> > 'rgmii-txid' as on those, with the 'rxc-skew-ps' value present,
> > overwriting skew values could occur and you end up with values you
> > do
> > not wanted. We thought, that most of the boards have just 'rgmii'
> > set in
> > phy-mode with specific skew-values present.
> > 
> > @Geert if you actually want the PHY to apply RXC and TXC delays just
> > insert 'rgmii-id' in your DT and remove those *-skew-ps values. If
> > you
> 
> That seems to work for me, but of course doesn't take into account PCB
> routing.
> 
> > need custom timing due to PCB routing it was thought out to use the
> > phy-
> > mode 'rgmii' and do the whole required timing with the *-skew-ps
> > values.
> 
> That mean we do have to provide all values again?

In the case that you have not length-matched rgmii signals on the PCB I
would advise you to check the skew settings closely. Otherwise you might
end up with values that work on the border and may fail on the full
temperature-range.

If the length is not off by huge amounts, rgmii-id
should work fine.

> Using "rgmii" without any skew values makes DHCP fail on R-Car H3
> ES2.0,

That sounds like the R-Car H3 ES2.0 is not providing a RXC delay.

> M3-W (ES1.0), and M3-N (ES1.0). Interestingly, DHCP still works on R-
> Car
> H3 ES1.0.
> 
> Note that I'm not too-familiar with the actual skew values needed
> (CC Mizuguchi-san).
> 
> Related commits:
>   - 0e45da1c6ea6b186 ("arm64: dts: r8a7795: salvator-x: Fix
> EthernetAVB PHY timing")
>   - dda3887907d74338 ("arm64: dts: r8a7795: Use rgmii-txid phy-mode
> for EthernetAVB")
>   - 7eda14afb8843a0d ("arm64: dts: renesas: r8a77990: ebisu: Fix
> EthernetAVB phy mode to rgmii")
> 
> Thanks!
> 
> Gr{oetje,eeting}s,
> 
>                         Geert
> 
> --
> Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- 
> geert@linux-m68k.org
> 
> In personal conversations with technical people, I call myself a
> hacker. But
> when I'm talking to journalists I just say "programmer" or something
> like that.
>                                 -- Linus Torvalds

  parent reply	other threads:[~2020-04-29 10:02 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-22  7:21 [PATCH net-next v3] net: phy: micrel: add phy-mode support for the KSZ9031 PHY Oleksij Rempel
2020-04-22  8:48 ` Philippe Schenker
2020-04-22 13:39 ` Andrew Lunn
2020-04-23  2:39 ` David Miller
2020-04-28 15:28 ` Geert Uytterhoeven
2020-04-28 15:47   ` Andrew Lunn
2020-04-28 16:16     ` Philippe Schenker
2020-04-29  8:45       ` Geert Uytterhoeven
2020-04-29  9:26         ` Oleksij Rempel
2020-05-27 19:11           ` Geert Uytterhoeven
2020-05-27 20:52             ` Andrew Lunn
2020-05-28 13:10               ` Geert Uytterhoeven
2020-05-28 16:08                 ` Andrew Lunn
2020-05-29  4:59                   ` Oleksij Rempel
2020-05-29 10:17                   ` Geert Uytterhoeven
2020-05-28  8:20             ` Philippe Schenker
2020-05-28 12:51               ` Geert Uytterhoeven
2020-05-28 23:31                 ` Florian Fainelli
2020-04-29 10:02         ` Philippe Schenker [this message]
2020-05-05 18:26 ` Grygorii Strashko
2020-05-06  4:51   ` Oleksij Rempel
2020-07-10 22:36 ` Alexandre Belloni
2020-07-10 22:54   ` Andrew Lunn
2020-07-10 23:25     ` Alexandre Belloni
  -- strict thread matches above, loose matches on Subject: below --
2020-04-07  9:36 Oleksij Rempel
2020-04-07 10:57 ` Philippe Schenker
2020-04-07 11:02   ` Marc Kleine-Budde
2020-04-07 12:34     ` Philippe Schenker
2020-04-07 11:05   ` Russell King - ARM Linux admin
2020-04-07 20:13 ` David Miller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=446fdadabfb852db3278553c5b6f8cbc003de5ea.camel@toradex.com \
    --to=philippe.schenker@toradex.com \
    --cc=andrew@lunn.ch \
    --cc=davem@davemloft.net \
    --cc=david@protonic.nl \
    --cc=f.fainelli@gmail.com \
    --cc=geert@linux-m68k.org \
    --cc=hkallweit1@gmail.com \
    --cc=kazuya.mizuguchi.ks@renesas.com \
    --cc=kernel@pengutronix.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-renesas-soc@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=netdev@vger.kernel.org \
    --cc=sergei.shtylyov@cogentembedded.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).