Re: [PATCH] net: bcmgenet: Fix attaching to PYH failed on RPi 4B

From: Peter Robinson
Date: Mon Jun 21 2021 - 13:06:46 EST


On Mon, Jun 21, 2021 at 5:39 PM Florian Fainelli <f.fainelli@xxxxxxxxx> wrote:
>
> On 6/21/21 6:09 AM, Andrew Lunn wrote:
> > On Mon, Jun 21, 2021 at 06:33:11PM +0800, Jian-Hong Pan wrote:
> >> The Broadcom UniMAC MDIO bus comes too late. So, GENET cannot find the
> >> ethernet PHY on UniMAC MDIO bus. This leads GENET fail to attach the
> >> PHY.
> >>
> >> bcmgenet fd580000.ethernet: GENET 5.0 EPHY: 0x0000
> >> ...
> >> could not attach to PHY
> >> bcmgenet fd580000.ethernet eth0: failed to connect to PHY
> >> uart-pl011 fe201000.serial: no DMA platform data
> >> libphy: bcmgenet MII bus: probed
> >> ...
> >> unimac-mdio unimac-mdio.-19: Broadcom UniMAC MDIO bus
> >>
> >> This patch makes GENET try to connect the PHY up to 3 times. Also, waits
> >> a while between each time for mdio-bcm-unimac module's loading and
> >> probing.
> >
> > Don't loop. Return -EPROBE_DEFER. The driver core will then probed the
> > driver again later, by which time, the MDIO bus driver should of
> > probed.
>
> This is unlikely to work because GENET register the mdio-bcm-unimac
> platform device so we will likely run into a chicken and egg problem,
> though surprisingly I have not seen this on STB platforms where GENET is
> used, I will try building everything as a module like you do. Can you
> see if the following helps:

For reference we have mdio_bcm_unimac/genet both built as modules in
Fedora and I've not seen this issue reported using vanilla upstream
kernels if that's a useful reference point.

Regards,
Peter