Subject: Re: [PATCH v2 1/2] net: phy: micrel: add Microchip KSZ 9897 Switch PHY support

From: Andrew Lunn <[email-masked]>
Date: Tue, 8 Feb 2022 14:13:41 +0100

On Tue, Feb 08, 2022 at 03:38:41AM -0500, Enguerrand de Ribaucourt wrote:
> ----- Original Message -----
> > From: "Andrew Lunn" <[email-masked]>
> > To: "Enguerrand de Ribaucourt" <[email-masked]>
> > Cc: "netdev" <[email-masked]>, "hkallweit1" <[email-masked]>, "linux" <[email-masked]>
> > Sent: Tuesday, February 8, 2022 12:28:53 AM
> > Subject: Re: [PATCH v2 1/2] net: phy: micrel: add Microchip KSZ 9897 Switch PHY support
> 
> > > + /* KSZ8081A3/KSZ8091R1 PHY and KSZ9897 switch share the same
> > > + * exact PHY ID. However, they can be told apart by the default value
> > > + * of the LED mode. It is 0 for the PHY, and 1 for the switch.
> > > + */
> > > + ret &= (MICREL_KSZ8081_CTRL2_LED_MODE0 | MICREL_KSZ8081_CTRL2_LED_MODE1);
> > > + if (!ksz_8081)
> > > + return ret;
> > > + else
> > > + return !ret;
> 
> > What exactly does MICREL_KSZ8081_CTRL2_LED_MODE0 and
> > MICREL_KSZ8081_CTRL2_LED_MODE1 mean? We have to be careful in that
> > there could be use cases which actually wants to configure the
> > LEDs. There have been recent discussions for two other PHYs recently
> > where the bootloader is configuring the LEDs, to something other than
> > their default value.
> 
> Those registers configure the LED Mode according to the KSZ8081 datasheet:
> [00] = LED1: Speed LED0: Link/Activity
> [01] = LED1: Activity LED0: Link
> [10], [11] = Reserved
> default value is [00].
> 
> Indeed, if the bootloader changes them, we would match the wrong
> device. However, I closely examined all the registers, and there is no
> read-only bit that we can use to differentiate both models. The
> LED mode bits are the only ones that have a different default value on the
> KSZ8081: [00] and the KSZ9897: [01]. Also, the RMII registers are not
> documented in the KSZ9897 datasheet so that value is not guaranteed to
> be [01] even though that's what I observed.
> 
> Do you think we should find another way to match KSZ8081 and KSZ9897?
> The good news is that I'm now confident about the phy_id emitted by
> both models.

Lets try asking Prasanna Vengateshan, who is working on other
Microchip switches and PHYs at Microchip.

     Andrew