aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Vasut <marex@denx.de>2021-01-17 00:16:16 +0100
committerTom Rini <trini@konsulko.com>2021-01-27 10:47:54 -0500
commitb5f09df246a8a24a3b4acb669cbf95d2a063176b (patch)
tree69e5bf8f47272b2f365933033c79d75e1bd16502
parentc34a927566d553a799b4811456b49c88b6e5e30c (diff)
downloadu-boot-b5f09df246a8a24a3b4acb669cbf95d2a063176b.zip
u-boot-b5f09df246a8a24a3b4acb669cbf95d2a063176b.tar.gz
u-boot-b5f09df246a8a24a3b4acb669cbf95d2a063176b.tar.bz2
net: phy: micrel: Try default PHY ofnode first
The phydev structure has a PHY OF node pointer in it, use that OF node first when looking up PHY OF node properties, since that is likely the correct PHY OF node pointer. If the pointer is not valid, which is the case e.g. on legacy DTs, fall back to parsing MAC ethernet-phy subnode. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Joe Hershberger <joe.hershberger@ni.com> Cc: Ramon Fried <rfried.dev@gmail.com>
-rw-r--r--drivers/net/phy/micrel_ksz90x1.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/net/phy/micrel_ksz90x1.c b/drivers/net/phy/micrel_ksz90x1.c
index 77fad4a..e5f5782 100644
--- a/drivers/net/phy/micrel_ksz90x1.c
+++ b/drivers/net/phy/micrel_ksz90x1.c
@@ -120,8 +120,13 @@ static int ksz90x1_of_config_group(struct phy_device *phydev,
if (!drv || !drv->writeext)
return -EOPNOTSUPP;
- /* Look for a PHY node under the Ethernet node */
- node = dev_read_subnode(dev, "ethernet-phy");
+ node = phydev->node;
+
+ if (!ofnode_valid(node)) {
+ /* Look for a PHY node under the Ethernet node */
+ node = dev_read_subnode(dev, "ethernet-phy");
+ }
+
if (!ofnode_valid(node)) {
/* No node found, look in the Ethernet node */
node = dev_ofnode(dev);