[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <6b022bcc-a670-da1d-5f5a-bdf4af667652@gmail.com>
Date: Mon, 29 Jun 2020 20:35:11 -0700
From: Florian Fainelli <f.fainelli@...il.com>
To: Andrew Lunn <andrew@...n.ch>,
Claudiu Beznea <claudiu.beznea@...rochip.com>
Cc: hkallweit1@...il.com, linux@...linux.org.uk, robh+dt@...nel.org,
frowand.list@...il.com, netdev@...r.kernel.org,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] of: of_mdio: count number of regitered phys
On 6/29/2020 5:45 PM, Andrew Lunn wrote:
> On Mon, Jun 29, 2020 at 10:26:36AM +0300, Claudiu Beznea wrote:
>> In case of_mdiobus_register_phy()/of_mdiobus_register_device()
>> returns -ENODEV for all PHYs in device tree or for all scanned
>> PHYs there is a chance that of_mdiobus_register() to
>> return success code although no PHY devices were registered.
>> Add a counter that increments every time a PHY was registered
>> to avoid the above scenario.
>
> Hi Claudiu
>
> There is a danger here this will break something. Without this patch,
> an empty bus is O.K. But with this patch, a bus without a PHY is a
> problem.
>
> Take for example FEC. It often comes in pairs. Each has an MDIO
> bus. But to save pins, there are some designs which place two PHYs on
> one bus, leaving the other empty. The driver unconditionally calls
> of_mdiobus_register() and if it returns an error, it will error out
> the probe. So i would not be too surprised if you get reports of
> missing interfaces with this patch.
Agreed, the potential for breakage here is too high especially given
this is fixing a hypothetical problem rather an an actual one. Even if
we were taking this from the angle of power management, runtime PM
should ensure that a MDIO bus with no slave, or no activity gets runtime
suspended.
--
Florian
Powered by blists - more mailing lists