I'll submit patch for review.

- Woojung

> On 10/02/2016 15:18, woojung....@microchip.com wrote:
> >>> +static int lan88xx_config_init(struct phy_device *phydev)
> >>> +{
> >>> + phydev->supported &= phydev->drv->features;
> >>> + phydev->advertising &= phydev->drv->features;
> >>
> >> This looks suspicious, phy_probe() takes the driver supported features
> >> and assigns it to phydev->supported, and phydev->advertising, is not
> >> that working somehow?
> >>
> >> genphy_config_init() does look at the current MII_BMRS value to
> >> determine what is supported by the PHY, and masks it in
> >> phydev->supported, so that could indeed be an issue if we had not had a
> >> change to mask with the supported modes before.
> >>
> >> I think we need more explanation here as to what kind of bug you may
> >> have been observing, there could be one.
> >
> > SUPPORTED_Pause & SUPPORTED_Asym_Pause set at phydev->features
> are removed by genphy_config_init().
> > As you pointed, it may be better to modify genphy_config_init() than each
> driver's config_init routine.
> 
> I see, that is definitively a bug, we should not clear these bits if the
> Ethernet MAC driver asked for them.
> --
> Florian

Reply via email to