
29 Apr
2021
29 Apr
'21
10:12 p.m.
On Mon, Apr 26, 2021 at 6:47 PM Patrick Delaunay patrick.delaunay@foss.st.com wrote:
Bind any subnode with name beginning by mdio, mdio0 for example, and not only the "mdio" as namei of subnode.
Signed-off-by: Patrick Delaunay patrick.delaunay@foss.st.com
Changes in v2:
- update eth-phy driver to support STM32 binding with a mdio0 subnode (NEW)
drivers/net/eth-phy-uclass.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/drivers/net/eth-phy-uclass.c b/drivers/net/eth-phy-uclass.c index 962084a7c9..f04f1c8f09 100644 --- a/drivers/net/eth-phy-uclass.c +++ b/drivers/net/eth-phy-uclass.c @@ -27,12 +27,18 @@ int eth_phy_binds_nodes(struct udevice *eth_dev) const char *node_name; int ret;
mdio_node = dev_read_subnode(eth_dev, "mdio");
/* search a subnode named "mdio.*" */
dev_for_each_subnode(mdio_node, eth_dev) {
node_name = ofnode_get_name(mdio_node);
if (!strncmp(node_name, "mdio", 4))
break;
} if (!ofnode_valid(mdio_node)) {
dev_dbg(eth_dev, "%s: %s mdio subnode not found!", __func__,
dev_dbg(eth_dev, "%s: %s mdio subnode not found!\n", __func__, eth_dev->name); return -ENXIO; }
dev_dbg(eth_dev, "%s: %s subnode found!\n", __func__, node_name); ofnode_for_each_subnode(phy_node, mdio_node) { node_name = ofnode_get_name(phy_node);
-- 2.17.1
Reviewed-by: Ramon Fried rfried.dev@gmail.com