> @@ -3681,7 +3681,7 @@ mv88e6xxx_smi_detect(struct device *dev, struct mii_bus > *bus, int sw_addr, > u16 id; > > ops = &mv88e6xxx_smi_direct_ops; > - if (sw_addr > 0) > + if (sw_addr > 0 && info->flags & MV88E6XXX_FLAG_MULTI_CHIP) > ops = &mv88e6xxx_smi_indirect_ops;
Hi Vivien Is sw_addr is > 0 and MV88E6XXX_FLAG_MULTI_CHIP is not set, you should return -EINVAL. The device tree is invalid. Andrew