Hi Andrew,

Andrew Lunn <and...@lunn.ch> writes:

>> @@ -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;
>
> Is sw_addr is > 0 and MV88E6XXX_FLAG_MULTI_CHIP is not set, you should
> return -EINVAL. The device tree is invalid.

OK, I'll change this snippet for the following until we explicitly add
support for such device with non-zero address and direct SMI access:

    if (sw_addr == 0)
        ops = &mv88e6xxx_smi_direct_ops;
    else if (info->flags & MV88E6XXX_FLAG_MULTI_CHIP)
        ops = &mv88e6xxx_smi_indirect_ops;
    else
        return NULL;

Thanks,

        Vivien

Reply via email to