]> git.ipfire.org Git - thirdparty/u-boot.git/commitdiff
net: mdio-mt7531-mmio: fix switch regs initialization
authorMikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
Fri, 30 Jan 2026 22:06:25 +0000 (01:06 +0300)
committerJerome Forissier <jerome.forissier@arm.com>
Fri, 6 Feb 2026 15:42:45 +0000 (16:42 +0100)
mdio is a child node of the switch, so to get switch base address
we need to lookup for a parent node

Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
drivers/net/mdio-mt7531-mmio.c

index 3e325ca58da2d0570265c90b6c79dfd3794ee2b8..5a0725010f2eabb652c2ec205f531d82dde18666 100644 (file)
@@ -151,8 +151,13 @@ static const struct mdio_ops mt7531_mdio_ops = {
 static int mt7531_mdio_probe(struct udevice *dev)
 {
        struct mt7531_mdio_priv *priv = dev_get_priv(dev);
+       ofnode switch_node;
 
-       priv->switch_regs = dev_read_addr(dev);
+       switch_node = ofnode_get_parent(dev_ofnode(dev));
+       if (!ofnode_valid(switch_node))
+               return -EINVAL;
+
+       priv->switch_regs = ofnode_get_addr(switch_node);
        if (priv->switch_regs == FDT_ADDR_T_NONE)
                return -EINVAL;