Re: [Patch v3 net-next 7/7] octeontx2-pf: ethtool physical link configuration
From: Hariprasad Kelam <hidden>
Date: 2021-02-05 16:22:48
Hi Jakub,
-----Original Message----- From: Jakub Kicinski <kuba@kernel.org> Sent: Friday, February 5, 2021 12:21 AM To: Hariprasad Kelam <redacted> Cc: netdev@vger.kernel.org; linux-kernel@vger.kernel.org; davem@davemloft.net; willemdebruijn.kernel@gmail.com; andrew@lunn.ch; Sunil Kovvuri Goutham [off-list ref]; Linu Cherian [off-list ref]; Geethasowjanya Akula [off-list ref]; Jerin Jacob Kollanukkaran [off-list ref]; Subbaraya Sundeep Bhatta [off-list ref] Subject: [EXT] Re: [Patch v3 net-next 7/7] octeontx2-pf: ethtool physical link configuration On Thu, 4 Feb 2021 17:37:41 +0000 Hariprasad Kelam wrote:quoted
quoted
quoted
+ 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 advertisedmodes and passing it to firmware.quoted
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?
Device supports IEEE autoneg mode. Agreed get_link_ksetting returns multiple modes . But set side firmware code designed in such way that it handles single mode. Upon Successful configuration firmware updates advertised modes to shared memory such that kernel will read and updates to ethtool. Thanks, Hariprasad k