Hi, just saw this and thought of a small patch I just wrote for mdio bus, o idea
if it is relevant but here goes:
From fe0b98d54a79779482700676331b4d10a0f3cada Mon Sep 17 00:00:00 2001
From: Joakim Tjernlund <redacted>
Date: Sun, 14 Jan 2018 21:27:20 +0100
Subject: [PATCH] of_mdiobus_register: Continue after error
of_mdiobus_register unregister itself if one phy fails to register
which is bad for system having all its PHYs on the same MDIO bus.
Just log the error and continue with the remaining PHYs instead.
Signed-off-by: Joakim Tjernlund <redacted>
Hi Joakim
You appear to be using an old kernel. Take a look at:
commit 95f566de0269a0c59fd6a737a147731302136429
Author: Madalin Bucur [off-list ref]
Date: Tue Jan 9 14:43:34 2018 +0200
of_mdio: avoid MDIO bus removal when a PHY is missing
If one of the child devices is missing the of_mdiobus_register_phy()
call will return -ENODEV. When a missing device is encountered the
registration of the remaining PHYs is stopped and the MDIO bus will
fail to register. Propagate all errors except ENODEV to avoid it.
Signed-off-by: Madalin Bucur [off-list ref]
Reviewed-by: Andrew Lunn [off-list ref]
Signed-off-by: David S. Miller [off-list ref]
Andrew