On Tue, Apr 28, 2020 at 07:58:33PM +0200, Andrew Lunn wrote: > The change to polled IO for MDIO completion assumes that MII events > are only generated for MDIO transactions. However on some SoCs writing > to the MII_SPEED register can also trigger an MII event. As a result, > the next MDIO read has a pending MII event, and immediately reads the > data registers before it contains useful data. When the read does > complete, another MII event is posted, which results in the next read > also going wrong, and the cycle continues. > > By writing 0 to the MII_DATA register before writing to the speed > register, this MII event for the MII_SPEED is suppressed, and polled > IO works as expected.
Hi Andy Could you get your LAVA instances to test this? Or do we need to wait for it to make its way into net-next? Thanks Andrew