On 10.07.2018 21:10, Andrew Lunn wrote:
>> +static int r8169_mdio_read_reg(struct mii_bus *mii_bus, int phyaddr, int 
>> phyreg)
>> +{
>> +    struct rtl8169_private *tp = mii_bus->priv;
>> +
>> +    if (phyaddr > 0)
>> +            return -EINVAL;
> 
> Please use ENODEV.
> 
> The mdio bus is scanned for devices in __mdiobus_register(). If
> mdiobus_scan() returns -ENODEV, it is not considered an error, and it
> will continue scanning other addresses on the bus. Any other error is
> a real error, and will abort the scan. That will probably abort the
> bus registration.
> 
OK

>> +static int r8169_mdio_register(struct rtl8169_private *tp)
>> +{
>> +    struct pci_dev *pdev = tp->pci_dev;
>> +    struct mii_bus *new_bus;
>> +    int ret;
>> +
>> +    new_bus = devm_mdiobus_alloc(&pdev->dev);
>> +    if (!new_bus)
>> +            return -ENOMEM;
>> +
>> +    new_bus->name = "r8169";
>> +    new_bus->phy_mask = ~1;
> 
> Once your handling of addr > 0 is correct, you don't need this.  Let
> is scan all addresses, just like a normal MDIO bus. The more we can
> keep it normal, the better.
> 
Sounds good. I'll wait for feedback on other patches of the
series and then prepare a v3.

Heiner

>      Andrew
> 

Reply via email to