Hi Robert, On Tue, 10 Sep 2019 16:41:47 +0100, Robert Beckett <bob.beck...@collabora.com> wrote: > Configure autoneg for phy connected CPU ports. > This allows us to use autoneg between the CPU port's phy and the link > partner's phy. > This enables us to negoatiate pause frame transmission to prioritise > packet delivery over throughput. > > Signed-off-by: Robert Beckett <bob.beck...@collabora.com> > --- > net/dsa/port.c | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/net/dsa/port.c b/net/dsa/port.c > index f071acf2842b..1b6832eac2c5 100644 > --- a/net/dsa/port.c > +++ b/net/dsa/port.c > @@ -538,10 +538,20 @@ static int dsa_port_setup_phy_of(struct dsa_port *dp, > bool enable) > return PTR_ERR(phydev); > > if (enable) { > + phydev->supported = PHY_GBIT_FEATURES | SUPPORTED_MII | > + SUPPORTED_AUI | SUPPORTED_FIBRE | > + SUPPORTED_BNC | SUPPORTED_Pause | > + SUPPORTED_Asym_Pause; > + phydev->advertising = phydev->supported; > +
This seems a bit intruisive to me. I'll get back to you. > err = genphy_config_init(phydev); > if (err < 0) > goto err_put_dev; > > + err = genphy_config_aneg(phydev); > + if (err < 0) > + goto err_put_dev; > + > err = genphy_resume(phydev); > if (err < 0) > goto err_put_dev;