Re: [PATCH 1/4] net: sfp: add workaround for Realtek RTL8672 and RTL9601C chips

From: Pali Rohár
Date: Wed Jan 06 2021 - 10:35:59 EST


On Wednesday 06 January 2021 15:27:07 Russell King - ARM Linux admin wrote:
> On Wed, Jan 06, 2021 at 03:23:38PM +0000, Russell King - ARM Linux admin wrote:
> > On Wed, Jan 06, 2021 at 03:21:38PM +0000, Russell King - ARM Linux admin wrote:
> > > On Wed, Jan 06, 2021 at 03:55:32PM +0100, Pali Rohár wrote:
> > > > On my tested CarlitoxxPro module is:
> > > >
> > > > Option values : 0x00 0x1c
> > > > Option : RX_LOS implemented, inverted
> > > > Option : TX_FAULT implemented
> > > > Option : TX_DISABLE implemented
> > > >
> > > > When cable is disconnected then in EEPROM at position 0x16e is value
> > > > 0x82. If I call 'ip link set eth1 up' then value changes to 0x02, module
> > > > itself has a link and I can connect to its internal telnet/webserver to
> > > > configure it.
> > >
> > > Bit 7 reflects the TX_DISABLE pin state. Bit 1 reflects the RX_LOS pin
> > > state. It isn't specified whether the inverted/non-inverted state is
> > > reflected in bit 1 or not - the definition just says that bit 1 is
> > > "Digital state of the RX_LOS Output Pin."
> > >
> > > > I also tested UBNT module and result is:
> > > >
> > > > Option values : 0x00 0x06
> > > > Option : RX_LOS implemented
> > > > Option : RX_LOS implemented, inverted
> > > >
> > > > Which means that those bits are not implemented.
> > > >
> > > > Anyway I check position 0x16e and value on its value is randomly either
> > > > 0x79 or 0xff independently of the state of the GPON module.
> > > >
> > > > So it is really not implemented on UBNT.
> > >
> > > There are enhanced options at offset 93 which tell you which of the
> > > offset 110 signals are implemented.
> >
> > That's the ID EEPROM (A0) offset 93 for the Diagnostic address (A2)
> > offset 110.
>
> Looking at the EEPROM dumps you've sent me... the VSOL V2801F has
> 0xe0 at offset 93, meaning TX_DISABLE and TX_FAULT soft signals
> (which is basically offset 110) are implemented, RX_LOS is not. No
> soft signals are implemented on the Ubiquiti module.

UBNT has at EEPROM offset 0x5E value 0x80.

CarlitoxxPRO has at this offset value 0xE0.

So both SFPs claims that support alarm/warning flags and CarlitoxxPRO
claims that support TX_DISABLE and TX_FAULT.