Re: [Patch v3 net-next 7/7] octeontx2-pf: ethtool physical link configuration

From: Jakub Kicinski
Date: Thu Feb 04 2021 - 13:52:32 EST


On Thu, 4 Feb 2021 17:37:41 +0000 Hariprasad Kelam wrote:
> > > + req->args.speed = req_ks.base.speed;
> > > + /* firmware expects 1 for half duplex and 0 for full duplex
> > > + * hence inverting
> > > + */
> > > + req->args.duplex = req_ks.base.duplex ^ 0x1;
> > > + req->args.an = req_ks.base.autoneg;
> > > + otx2_get_advertised_mode(&req_ks, &req->args.mode);
> >
> > But that only returns the first bit set. What does the device actually do? What
> > if the user cleared a middle bit?
> >
> This is initial patch series to support advertised modes. Current firmware design is such that
> It can handle only one advertised mode. Due to this limitation we are always checking
> The first set bit in advertised modes and passing it to firmware.
> Will add multi advertised mode support in near future.

Looking at patch 6 it seems like the get side already supports multiple
modes, although the example output only lists supported no advertised.

Is the device actually doing IEEE autoneg or just configures the speed,
lanes etc. according to the link mode selected?