Re: [PATCH v2] net: lantiq: Wait for the GPHY firmware to be ready

From: Andrew Lunn
Date: Mon Nov 16 2020 - 09:38:43 EST


On Sun, Nov 15, 2020 at 05:57:57PM +0100, Martin Blumenstingl wrote:
> A user reports (slightly shortened from the original message):
> libphy: lantiq,xrx200-mdio: probed
> mdio_bus 1e108000.switch-mii: MDIO device at address 17 is missing.
> gswip 1e108000.switch lan: no phy at 2
> gswip 1e108000.switch lan: failed to connect to port 2: -19
> lantiq,xrx200-net 1e10b308.eth eth0: error -19 setting up slave phy
>
> This is a single-port board using the internal Fast Ethernet PHY. The
> user reports that switching to PHY scanning instead of configuring the
> PHY within device-tree works around this issue.
>
> The documentation for the standalone variant of the PHY11G (which is
> probably very similar to what is used inside the xRX200 SoCs but having
> the firmware burnt onto that standalone chip in the factory) states that
> the PHY needs 300ms to be ready for MDIO communication after releasing
> the reset.
>
> Add a 300ms delay after initializing all GPHYs to ensure that the GPHY
> firmware had enough time to initialize and to appear on the MDIO bus.
> Unfortunately there is no (known) documentation on what the minimum time
> to wait after releasing the reset on an internal PHY so play safe and
> take the one for the external variant. Only wait after the last GPHY
> firmware is loaded to not slow down the initialization too much (
> xRX200 has two GPHYs but newer SoCs have at least three GPHYs).
>
> Fixes: 14fceff4771e51 ("net: dsa: Add Lantiq / Intel DSA driver for vrx200")
> Reviewed-by: Andrew Lunn <andrew@xxxxxxx>
> Signed-off-by: Martin Blumenstingl <martin.blumenstingl@xxxxxxxxxxxxxx>

Reviewed-by: Andrew Lunn <andrew@xxxxxxx>

Andrew