[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <eb62f85a050e47c3d8d9114b33f94f97822df06b.camel@siemens.com>
Date: Thu, 19 Dec 2024 18:50:18 +0000
From: "Sverdlin, Alexander" <alexander.sverdlin@...mens.com>
To: "olteanv@...il.com" <olteanv@...il.com>, "andrew@...n.ch" <andrew@...n.ch>
CC: "netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: Re: [PATCH net-next] net: dsa: honor "max-speed" for implicit PHYs on
user ports
Hello Vladimir, Andrew,
thanks for the quick feedback!
On Thu, 2024-12-19 at 19:46 +0200, Vladimir Oltean wrote:
> On Thu, Dec 19, 2024 at 06:38:01PM +0100, A. Sverdlin wrote:
> > From: Alexander Sverdlin <alexander.sverdlin@...mens.com>
> >
> > If the PHYs on user ports are not specified explicitly, but a common
> > user_mii_bus is being registered and scanned there is no way to limit
> > Auto Negotiation options currently. If a gigabit switch is deployed in a
> > way that the ports cannot support gigabit rates (4-wire PCB/magnetics,
> > for instance), there is no way to limit ports' AN not to advertise gigabit
> > options. Some PHYs take considerably longer time to AutoNegotiate in such
> > cases.
> >
> > Provide a way to limit AN advertisement options by examining "max-speed"
> > property in the DT node of the corresponding user port and call
> > phy_set_max_speed() right before attaching the PHY to he port netdevice.
> >
> > Signed-off-by: Alexander Sverdlin <alexander.sverdlin@...mens.com>
> > ---
>
> The user_mii_bus mechanism is redundant when we have device tree
> available (as opposed to probing on platform data), let's not make it
> even more redundant. Why don't you just declare the MDIO bus in the
> device tree, with the PHYs on it, and place max-speed there?
There are still switch drivers in tree, which only implement .phy_read/.phy_write
callbacks (which means, they rely on .user_mii_bus ?), even gigabit-capable,
such as vsc73xx, rtl8365mb, rtl8366rb... But I'm actually interested in an
out of tree driver for a new generation of lantiq_gsw hardware, under
Maxlinear branch, which is planned to be submitted upstream at some point.
The relevant question is then, is it acceptable API (.phy_read/.phy_write),
or any new gigabit-capable driver must use some form of mdiobus_register
to populate the MDIO bus explicitly itself?
--
Alexander Sverdlin
Siemens AG
www.siemens.com
Powered by blists - more mailing lists