From: Piergiorgio Beruto <piergiorgio.beruto@gmail.com>
To: Andrew Lunn <andrew@lunn.ch>
Cc: "Russell King (Oracle)" <linux@armlinux.org.uk>,
Heiner Kallweit <hkallweit1@gmail.com>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
linux-kernel@vger.kernel.org, netdev@vger.kernel.org,
Oleksij Rempel <o.rempel@pengutronix.de>
Subject: Re: [PATCH net-next 4/4] driver/ncn26000: add PLCA support
Date: Sun, 4 Dec 2022 21:09:08 +0100 [thread overview]
Message-ID: <Y4z+ZKZh4c14mFzA@gvm01> (raw)
In-Reply-To: <Y4zreLCwdx+fyuCe@lunn.ch>
On Sun, Dec 04, 2022 at 07:48:24PM +0100, Andrew Lunn wrote:
> On Sun, Dec 04, 2022 at 05:06:50PM +0000, Russell King (Oracle) wrote:
> > On Sun, Dec 04, 2022 at 03:32:06AM +0100, Piergiorgio Beruto wrote:
> > > --- a/include/uapi/linux/mdio.h
> > > +++ b/include/uapi/linux/mdio.h
> > > @@ -26,6 +26,7 @@
> > > #define MDIO_MMD_C22EXT 29 /* Clause 22 extension */
> > > #define MDIO_MMD_VEND1 30 /* Vendor specific 1 */
> > > #define MDIO_MMD_VEND2 31 /* Vendor specific 2 */
> > > +#define MDIO_MMD_OATC14 MDIO_MMD_VEND2
> >
> > If this is in the vendor 2 register set, I doubt that this is a feature
> > described by IEEE 802.3, since they allocated the entirety of this MMD
> > over to manufacturers to do whatever they please with this space.
> >
> > If this is correct, then these definitions have no place being in this
> > generic header file, since they are likely specific to the vendors PHY.
>
> Piergiorgio can give you the full details.
>
> As i understand it, IEEE 802.3 defines the basic functionality, but
> did not extend the standard to define the registers.
>
> The Open Alliance member got together and added the missing parts, and
> published an Open Alliance document.
>
> Piergiorgio, i suggest you add a header file for these defines, named
> to reflect that the Open Alliance defined them. And put in a comment,
> explaining their origin, maybe a link to the standard. I also don't
> think this needs to be a uapi header, they are not needed outside of
> the kernel.
>
> I also would not use MDIO_MMD_OATC14, but rather MDIO_MMD_VEND2. There
> is no guarantee they are not being used for other things, and
> MDIO_MMD_VEND2 gives a gentle warning about this.
Thanks Andrew for commenting on this one. This is right, in the IEEE
802.3cg group we could not allocate an MMD for the PLCA reconciliation
sublayer because of an 'unfriendly' wording in Clause 45 ruling out
Reconciliation Sublayers from what can be configured via registers.
Clause 45 says you can have registers for the PHY, while it should have
said 'Physical Layer" and there is a subtle difference between the two
words. PLCA, for example, is part of the Physical Layer but not of the
PHY. Since we could not change that wording, we had to define
configuration parameters in Clause 30, and let organizations outside the
IEEE define memory maps for PHYs that integrate PLCA.
The OPEN Alliance SIG (see the reference in the patches) defined
registers for the PLCA RS in MMD31, which is in fact vendor-specific
from an IEEE perspective, but part of it is now standardized in the OPEN
Alliance. So unfortunately we have to live with this somehow.
So ok, I can separate these definitions into a different non-UAPI header
as Andrew is suggesting. I'll do this in the next patchset.
Thanks,
Piergiorgio
next prev parent reply other threads:[~2022-12-04 20:09 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <cover.1670119328.git.piergiorgio.beruto@gmail.com>
2022-12-04 2:30 ` [PATCH net-next 1/4] net/ethtool: Add netlink interface for the PLCA RS Piergiorgio Beruto
2022-12-04 2:37 ` Randy Dunlap
2022-12-04 2:49 ` Piergiorgio Beruto
2022-12-04 3:01 ` Randy Dunlap
2022-12-04 2:30 ` [PATCH net-next 2/4] phylib: Add support for 10BASE-T1S link modes and PLCA config Piergiorgio Beruto
2022-12-04 16:45 ` Russell King (Oracle)
2022-12-04 18:04 ` Piergiorgio Beruto
2022-12-04 18:12 ` Andrew Lunn
2022-12-04 20:09 ` Piergiorgio Beruto
2022-12-04 2:31 ` [PATCH net-next 3/4] drivers/net/phy: Add driver for the onsemi NCN26000 10BASE-T1S PHY Piergiorgio Beruto
2022-12-04 16:52 ` Russell King (Oracle)
2022-12-04 17:23 ` Andrew Lunn
2022-12-04 18:00 ` Andrew Lunn
2022-12-04 20:11 ` Piergiorgio Beruto
2022-12-04 18:40 ` Piergiorgio Beruto
2022-12-04 18:58 ` Andrew Lunn
2022-12-04 19:48 ` Piergiorgio Beruto
2022-12-04 2:32 ` [PATCH net-next 4/4] driver/ncn26000: add PLCA support Piergiorgio Beruto
2022-12-04 17:06 ` Russell King (Oracle)
2022-12-04 17:36 ` Andrew Lunn
2022-12-04 18:48 ` Andrew Lunn
2022-12-04 20:09 ` Piergiorgio Beruto [this message]
2022-12-04 20:22 ` Russell King (Oracle)
2022-12-04 20:33 ` Piergiorgio Beruto
2022-12-04 20:29 ` Piergiorgio Beruto
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=Y4z+ZKZh4c14mFzA@gvm01 \
--to=piergiorgio.beruto@gmail.com \
--cc=andrew@lunn.ch \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=hkallweit1@gmail.com \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=netdev@vger.kernel.org \
--cc=o.rempel@pengutronix.de \
--cc=pabeni@redhat.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).