[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20191219091025.GB17475@lunn.ch>
Date: Thu, 19 Dec 2019 10:10:25 +0100
From: Andrew Lunn <andrew@...n.ch>
To: Russell King - ARM Linux admin <linux@...linux.org.uk>
Cc: Vladimir Oltean <olteanv@...il.com>, davem@...emloft.net,
jakub.kicinski@...ronome.com, f.fainelli@...il.com,
vivien.didelot@...il.com, alexandru.marginean@....com,
claudiu.manoil@....com, xiaoliang.yang_1@....com,
yangbo.lu@....com, netdev@...r.kernel.org,
alexandre.belloni@...tlin.com, horatiu.vultur@...rochip.com,
Vladimir Oltean <vladimir.oltean@....com>
Subject: Re: [RFC PATCH v2 1/8] mii: Add helpers for parsing SGMII
auto-negotiation
> > diff --git a/include/uapi/linux/mii.h b/include/uapi/linux/mii.h
> > index 51b48e4be1f2..dc3b5d635beb 100644
> > --- a/include/uapi/linux/mii.h
> > +++ b/include/uapi/linux/mii.h
> > @@ -71,6 +71,7 @@
> > /* Advertisement control register. */
> > #define ADVERTISE_SLCT 0x001f /* Selector bits */
> > #define ADVERTISE_CSMA 0x0001 /* Only selector supported */
> > +#define ADVERTISE_SGMII 0x0001 /* Can do SGMII */
> > #define ADVERTISE_10HALF 0x0020 /* Try for 10mbps half-duplex */
> > #define ADVERTISE_1000XFULL 0x0020 /* Try for 1000BASE-X full-duplex */
> > #define ADVERTISE_10FULL 0x0040 /* Try for 10mbps full-duplex */
> > @@ -94,6 +95,7 @@
> >
> > /* Link partner ability register. */
> > #define LPA_SLCT 0x001f /* Same as advertise selector */
> > +#define LPA_SGMII 0x0001 /* Can do SGMII */
> > #define LPA_10HALF 0x0020 /* Can do 10mbps half-duplex */
> > #define LPA_1000XFULL 0x0020 /* Can do 1000BASE-X full-duplex */
> > #define LPA_10FULL 0x0040 /* Can do 10mbps full-duplex */
> > @@ -104,11 +106,19 @@
> > #define LPA_1000XPAUSE_ASYM 0x0100 /* Can do 1000BASE-X pause asym*/
> > #define LPA_100BASE4 0x0200 /* Can do 100mbps 4k packets */
> > #define LPA_PAUSE_CAP 0x0400 /* Can pause */
> > +#define LPA_SGMII_DPX_SPD_MASK 0x1C00 /* SGMII duplex and speed bits */
> > +#define LPA_SGMII_10HALF 0x0000 /* Can do SGMII 10mbps half-duplex */
> > +#define LPA_SGMII_10FULL 0x1000 /* Can do SGMII 10mbps full-duplex */
> > +#define LPA_SGMII_100HALF 0x0400 /* Can do SGMII 100mbps half-duplex */
> > +#define LPA_SGMII_100FULL 0x1400 /* Can do SGMII 100mbps full-duplex */
> > #define LPA_PAUSE_ASYM 0x0800 /* Can pause asymetrically */
> > +#define LPA_SGMII_1000HALF 0x0800 /* Can do SGMII 1000mbps half-duplex */
> > +#define LPA_SGMII_1000FULL 0x1800 /* Can do SGMII 1000mbps full-duplex */
> > #define LPA_RESV 0x1000 /* Unused... */
> > #define LPA_RFAULT 0x2000 /* Link partner faulted */
> > #define LPA_LPACK 0x4000 /* Link partner acked us */
> > #define LPA_NPAGE 0x8000 /* Next page bit */
> > +#define LPA_SGMII_LINK 0x8000 /* Link partner has link */
>
> I wonder whether mixing these definitions together is really such a
> good idea, or whether separately grouping them would be better.
I think i prefer a seperate grouping.
Andrew
Powered by blists - more mailing lists