[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CA+aJhH3SE1s8P+srhO_-Za3E0KdHVn2_bK=Kf+-Jtbm1vJNm1w@mail.gmail.com>
Date: Wed, 17 Feb 2021 08:57:13 +1000
From: Nathan Rossi <nathan@...hanrossi.com>
To: Florian Fainelli <f.fainelli@...il.com>
Cc: Andrew Lunn <andrew@...n.ch>, netdev@...r.kernel.org,
Nathan Rossi <nathan.rossi@...i.com>,
Heiner Kallweit <hkallweit1@...il.com>,
"David S. Miller" <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>
Subject: Re: [PATCH] of: of_mdio: Handle properties for non-phy mdio devices
On Wed, 17 Feb 2021 at 03:50, Florian Fainelli <f.fainelli@...il.com> wrote:
>
>
>
> On 2/16/2021 5:06 AM, Andrew Lunn wrote:
> > On Mon, Feb 15, 2021 at 07:02:18AM +0000, Nathan Rossi wrote:
> >> From: Nathan Rossi <nathan.rossi@...i.com>
> >>
> >> The documentation for MDIO bindings describes the "broken-turn-around",
> >> "reset-assert-us", and "reset-deassert-us" properties such that any MDIO
> >> device can define them. Other MDIO devices may require these properties
> >> in order to correctly function on the MDIO bus.
> >>
> >> Enable the parsing and configuration associated with these properties by
> >> moving the associated OF parsing to a common function
> >> of_mdiobus_child_parse and use it to apply these properties for both
> >> PHYs and other MDIO devices.
> >
> > Hi Nathan
> >
> > What device are you using this with?
> >
> > The Marvell Switch driver does its own GPIO reset handling. It has a
> > better idea when a hardware reset should be applied than what the
> > phylib core has. It will also poll the EEPROM busy bit after a
> > reset. How long a pause you need after the reset depends on how full
> > the EEPROM is.
> >
> > And i've never had problems with broken-turn-around with Marvell
> > switches.
>
> The patch does make sense though, Broadcom 53125 switches have a broken
> turn around and are mdio_device instances, the broken behavior may not
> show up with all MDIO controllers used to interface though. For the
Yes the reason we needed this change was to enable broken turn around,
specifically with a Marvell 88E6390.
> reset, I would agree with you this is better delegated to the switch
> driver, given that unlike PHY devices, we have no need to know the
> mdio_device ID prior to binding the device and the driver together.
>
> >
> > Given the complexity of an Ethernet switch, it is probably better if
> > it handles its own reset.
We are not using the reset assert, I included this as part of the
change to match the existing phy parsing behavior. I can update this
change to only handle broken turn around, or is it also preferred that
broken turn around is handled by the e.g. switch driver?
Thanks,
Nathan
Powered by blists - more mailing lists