Re: [PATCH 0/9] renesas: Add compatible properties to Ethernet PHY nodes
From: Andrew Lunn <andrew@lunn.ch>
Date: 2021-09-23 14:09:49
Also in:
linux-devicetree, linux-renesas-soc, netdev
On Thu, Sep 23, 2021 at 01:00:11PM +0200, Geert Uytterhoeven wrote:
On Thu, Sep 9, 2021 at 10:49 AM Geert Uytterhoeven [off-list ref] wrote:quoted
If an Ethernet PHY reset is asserted when the Ethernet driver is initialized, the PHY cannot be probed: mdio_bus ee700000.ethernet-ffffffff: MDIO device at address 1 is missing This happens because the Linux PHY subsystem tries to read the PHY Identifier registers before handling PHY reset. Hence if the PHY reset was asserted before, identification fails. An easy way to reproduce this issue is by using kexec to launch a new kernel (the PHY reset will be asserted before starting the new kernel), or by unbinding and rebinding the Ethernet driver (the PHY reset will be asserted during unbind), e.g. on koelsch: echo ee700000.ethernet > /sys/bus/platform/drivers/sh-eth/unbind $ echo ee700000.ethernet > /sys/bus/platform/drivers/sh-eth/bind The recommended approach[1][2] seems to be working around this issue by adding compatible values to all ethernet-phy nodes, so Linux can identify the PHY at any time, without reading the PHY ID from the device, and regardless of the state of the PHY reset line. Hence this patch series adds such compatible values to all Ethernet PHY subnodes representing PHYs on all boards with Renesas ARM and ARM64 SoCs. For easier review, I have split the series in one patch per PHY model.
It is a reasonable approach.
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Andrew
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel