]> git.ipfire.org Git - thirdparty/u-boot.git/blobdiff - drivers/net/mv88e6xxx.c
net: mv88e6xxx: fix missing SMI address initialization
[thirdparty/u-boot.git] / drivers / net / mv88e6xxx.c
index c073f81e72d0dffc1f3a94bd451cb64acce68256..8fbbc1caccad0c534f1f48dc311b6da8f46f247f 100644 (file)
@@ -745,6 +745,7 @@ static int mv88e6xxx_probe(struct udevice *dev)
 {
        struct dsa_pdata *dsa_pdata = dev_get_uclass_plat(dev);
        struct mv88e6xxx_priv *priv = dev_get_priv(dev);
+       fdt_addr_t smi_addr;
        int val, ret;
 
        if (ofnode_valid(dev_ofnode(dev)) &&
@@ -753,6 +754,13 @@ static int mv88e6xxx_probe(struct udevice *dev)
                return -ENODEV;
        }
 
+       smi_addr = dev_read_addr(dev);
+       if (smi_addr == FDT_ADDR_T_NONE) {
+               dev_err(dev, "Missing SMI address\n");
+               return -EINVAL;
+       }
+       priv->smi_addr = smi_addr;
+
        /* probe internal mdio bus */
        ret = mv88e6xxx_probe_mdio(dev);
        if (ret)