[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <BYAPR11MB35584725C73534BC26009F77EC862@BYAPR11MB3558.namprd11.prod.outlook.com>
Date: Tue, 13 Aug 2024 22:17:03 +0000
From: <Tristram.Ha@...rochip.com>
To: <andrew@...n.ch>
CC: <Woojung.Huh@...rochip.com>, <UNGLinuxDriver@...rochip.com>,
<devicetree@...r.kernel.org>, <f.fainelli@...il.com>, <olteanv@...il.com>,
<robh@...nel.org>, <krzk+dt@...nel.org>, <conor+dt@...nel.org>,
<davem@...emloft.net>, <edumazet@...gle.com>, <kuba@...nel.org>,
<pabeni@...hat.com>, <marex@...x.de>, <netdev@...r.kernel.org>,
<linux-kernel@...r.kernel.org>
Subject: RE: [PATCH net-next 1/4] dt-bindings: net: dsa: microchip: add SGMII
port support to KSZ9477 switch
> > > > From: Tristram Ha <tristram.ha@...rochip.com>
> > > >
> > > > The SGMII module of KSZ9477 switch can be setup in 3 ways: 0 for direct
> > > > connect, 1 for 1000BaseT SFP, and 2 for 10/100/1000 SFP.
> > > >
> > > > SFP is typically used so the default is 1. The driver can detect
> > > > 10/100/1000 SFP and change the mode to 2. For direct connect this mode
> > > > has to be explicitly set to 0 as driver cannot detect that
> > > > configuration.
> > >
> > > Could you explain this in more detail. Other SGMII blocks don't need
> > > this. Why is this block special?
> > >
> > > Has this anything to do with in-band signalling?
> >
> > There are 2 ways to program the hardware registers so that the SGMII
> > module can communicate with either 1000Base-T/LX/SX SFP or
> > 10/100/1000Base-T SFP. When a SFP is plugged in the driver can try to
> > detect which type and if it thinks 10/100/1000Base-T SFP is used it
> > changes the mode to 2 and program appropriately.
>
> What should happen here is that phylink will read the SFP EEPROM and
> determine what mode should be used. It will then tell the MAC or PCS
> how to configure itself, 1000BaseX, or SGMII. Look at the
> mac_link_up() callback, parameter interface.
I am not sure the module can retrieve SFP EEPROM information.
Powered by blists - more mailing lists