lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250804145614.ca27e2h44khdfzbz@skbuf>
Date: Mon, 4 Aug 2025 17:56:14 +0300
From: Vladimir Oltean <vladimir.oltean@....com>
To: "Russell King (Oracle)" <linux@...linux.org.uk>
Cc: Alexander Wilhelm <alexander.wilhelm@...termo.com>,
	Andrew Lunn <andrew@...n.ch>,
	Heiner Kallweit <hkallweit1@...il.com>,
	"David S. Miller" <davem@...emloft.net>,
	Eric Dumazet <edumazet@...gle.com>,
	Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
	netdev@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: Aquantia PHY in OCSGMII mode?

On Mon, Aug 04, 2025 at 03:22:50PM +0100, Russell King (Oracle) wrote:
> We're falling foul of the historic crap that 2500base-X is (802.3 were
> very very late to the party in "standardising" it, but after there were
> many different implementations with varying capabilities already on the
> market.)
> 
> aquantia_main.c needs to implement the .inband_caps() method, and
> report what its actual capabilities are for the supplied interface
> mode according to how it has been provisioned.

I have some patches for that which need testing, because I don't yet
fully understand why there are 2 different settings for this operation,
and how they interact.

- Bit 3 of the aqr_global_cfg_regs[] registers (1e.310, 1e.31b, 1e.31c,
  1e.31d, 1e.31e, 1e.31f) is "System Interface Autoneg". There's one of
  these for each supported media side link speed. We have to filter for
  those media link speeds where the translated VEND1_GLOBAL_CFG_SERDES_MODE
  matches the phy_interface_t given to .inband_caps(), and warn on
  inconsistent settings (the same phy_interface_t is provisioned with
  inband enabled at speed X, and disabled at speed Y). I'm crossing my
  fingers this warning isn't going to fire on OCSGMII/2500base-x on live
  systems, but who knows. I am unlikely to be able to find out whether
  setting or unsetting this bit makes any difference for OCSGMII, since
  my PCS does not see the 16-bit config words.

- Bit 3 of register 4.C441 is "USX Autoneg Control For MAC". Not clear
  whether it is an alternative or additional configuration specific for
  USXGMII. This bit I can test.

There is some non-trivial consolidation which needs to be dealt with
first. The driver does not call aqr107_fill_interface_modes() for many
of the PHY IDs for which it could do that. And we can't implement
.inband_caps() except for those PHYs where we know that the registers
read by aqr107_fill_interface_modes() are accessible. I think I do have
those consolidation patches in a reasonably good state.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ