Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bc786d62 authored by Andrew Halaney's avatar Andrew Halaney Committed by Greg Kroah-Hartman
Browse files

net: stmmac: Handle disabled MDIO busses from devicetree



[ Upstream commit e23c0d21ce9234fbc31ece35663ababbb83f9347 ]

Many hardware configurations have the MDIO bus disabled, and are instead
using some other MDIO bus to talk to the MAC's phy.

of_mdiobus_register() returns -ENODEV in this case. Let's handle it
gracefully instead of failing to probe the MAC.

Fixes: 47dd7a54 ("net: add support for STMicroelectronics Ethernet controllers.")
Signed-off-by: default avatarAndrew Halaney <ahalaney@redhat.com>
Reviewed-by: default avatarSerge Semin <fancer.lancer@gmail.com>
Link: https://lore.kernel.org/r/20231212-b4-stmmac-handle-mdio-enodev-v2-1-600171acf79f@redhat.com


Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent 2698050c
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -360,7 +360,11 @@ int stmmac_mdio_register(struct net_device *ndev)
	new_bus->parent = priv->device;

	err = of_mdiobus_register(new_bus, mdio_node);
	if (err != 0) {
	if (err == -ENODEV) {
		err = 0;
		dev_info(dev, "MDIO bus is disabled\n");
		goto bus_register_fail;
	} else if (err) {
		dev_err(dev, "Cannot register the MDIO bus\n");
		goto bus_register_fail;
	}