Re: [PATCH] net: phy: marvell: fix detection of PHY on Topaz switches

From: Pali Rohár
Date: Mon Apr 12 2021 - 12:48:09 EST


On Monday 12 April 2021 18:12:35 Andrew Lunn wrote:
> On Mon, Apr 12, 2021 at 05:52:39PM +0200, Pali Rohár wrote:
> > On Monday 12 April 2021 17:32:33 Andrew Lunn wrote:
> > > > Anyway, now I'm looking at phy/marvell.c driver again and it supports
> > > > only 88E6341 and 88E6390 families from whole 88E63xxx range.
> > > >
> > > > So do we need to define for now table for more than
> > > > MV88E6XXX_FAMILY_6341 and MV88E6XXX_FAMILY_6390 entries?
> > >
> > > Probably not. I've no idea if the 6393 has an ID, so to be safe you
> > > should add that. Assuming it has a family of its own.
> >
> > So what about just?
> >
> > if (reg == MII_PHYSID2 && !(val & 0x3f0)) {
> > if (chip->info->family == MV88E6XXX_FAMILY_6341)
> > val |= MV88E6XXX_PORT_SWITCH_ID_PROD_6341 >> 4;
> > else if (chip->info->family == MV88E6XXX_FAMILY_6390)
> > val |= MV88E6XXX_PORT_SWITCH_ID_PROD_6390 >> 4;
> > }
>
> As i said, i expect the 6393 also has no ID. And i recently found out
> Marvell have some automotive switches, 88Q5xxx which are actually
> based around the same IP and could be added to this driver. They also
> might not have an ID. I suspect this list is going to get longer, so
> having it table driven will make that simpler, less error prone.
>
> Andrew

Ok, I will use table but I fill it only with Topaz (6341) and Peridot
(6390) which was there before as I do not have 6393 switch for testing.

If you or anybody else has 6393 unit for testing, please extend then
table.