[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20230817191754.vopvjus6gjkojyjz@skbuf>
Date: Thu, 17 Aug 2023 22:17:54 +0300
From: Vladimir Oltean <olteanv@...il.com>
To: Andrew Lunn <andrew@...n.ch>
Cc: "Russell King (Oracle)" <linux@...linux.org.uk>,
Linus Walleij <linus.walleij@...aro.org>,
Heiner Kallweit <hkallweit1@...il.com>,
Florian Fainelli <f.fainelli@...il.com>,
"David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
netdev@...r.kernel.org
Subject: Re: [PATCH net-next] net: dsa: mark parsed interface mode for legacy
switch drivers
On Thu, Aug 17, 2023 at 08:52:12PM +0200, Andrew Lunn wrote:
> > Andrew, I'd argue that the MAC-PHY relationship between the DSA master
> > and the CPU port is equally clear as between 2 arbitrary cascade ports.
> > Which is: not clear at all. The RGMII standard does not talk about the
> > existence of a MAC role and a PHY role, to my knowledge.
>
> The standard does talk about an optional in band status, placed onto
> the RXD pins during the inter packet gap. For that to work, there
> needs to be some notion of MAC and PHY side.
Well, opening the RGMII standard, it was quite stupid of myself to say
that. It says that the purpose of RGMII is to interconnect the MAC and
the PHY right from the first phrase.
You're also completely right in pointing out that the optional in-band
status is provided by the PHY on RXD[3:0].
Actually, MAC-to-MAC is not explicitly supported anywhere in the standard
(RGMII 2.0, 4/1/2002) that I can find. It simply seems to be a case of:
"whatever the PHY is required by the standard to do is specified in such
a way that when another MAC is put in its place (with RX and TX signals
inverted), the protocol still makes sense".
But, with that stretching of the standard considered, I'm still not
necessarily seeing which side is the MAC and which side is the PHY in a
MAC-to-MAC scenario.
With a bit of imagination, I could actually see 2 back-to-back MAC IPs
which both have logic to provide the optional in-band status (with
hardcoded information) to the link partner's RXD[3:0]. No theory seems
to be broken by this (though I can't point to any real implementation).
So a MAC role would be the side that expects the in-band status to be
present on its RXD[3:0], and a PHY role would be the side that provides
it, and being in the MAC role does not preclude being in the PHY role?
Powered by blists - more mailing lists