Re: [PATCH v3 2/2] net: fec: do not double-parse 'phy-reset-active-high' property

From: Andrew Lunn
Date: Thu Feb 02 2023 - 08:22:28 EST


On Wed, Feb 01, 2023 at 05:08:05PM -0800, Dmitry Torokhov wrote:
> On Wed, Feb 01, 2023 at 03:21:53PM -0800, Dmitry Torokhov wrote:
> > On Wed, Feb 01, 2023 at 11:54:02PM +0100, Andrew Lunn wrote:
> > > On Wed, Feb 01, 2023 at 01:53:20PM -0800, Dmitry Torokhov wrote:
> > > > Conversion to gpiod API done in commit 468ba54bd616 ("fec: convert
> > > > to gpio descriptor") clashed with gpiolib applying the same quirk to the
> > > > reset GPIO polarity (introduced in commit b02c85c9458c). This results in
> > > > the reset line being left active/device being left in reset state when
> > > > reset line is "active low".
> > > >
> > > > Remove handling of 'phy-reset-active-high' property from the driver and
> > > > rely on gpiolib to apply needed adjustments to avoid ending up with the
> > > > double inversion/flipped logic.
> > >
> > > I searched the in tree DT files from 4.7 to 6.0. None use
> > > phy-reset-active-high. I'm don't think it has ever had an in tree
> > > user.
>
> FTR I believe this was added in 4.6-rc1 (as 'phy-reset-active-low' in
> first iteration by Bernhard Walle (CCed), so maybe he can tell us a bit
> more about hardware and where it is still in service and whether this
> quirk is still relevant.
>
> > >
> > > This property was marked deprecated Jul 18 2019. So i suggest we
> > > completely drop it.
> >
> > I'd be happy kill the quirk in gpiolibi-of.c if that is what we want to
> > do, although DT people sometimes are pretty touchy about keeping
> > backward compatibility.

Generally, that is for in kernel users. When a new feature is added,
you are also supposed to add an in kernel user. I could of missed it
in my search, but i didn't find an in-kernel user. If there is one,
then we should keep it. Otherwise, i would remove it.

> > I believe this should not stop us from merging this patch though, as the
> > code is currently broken when this deprecated property is not present.

Reviewed-by: Andrew Lunn <andrew@xxxxxxx>

Andrew