Re: Aquantia PHY in OCSGMII mode?
From: Alexander Wilhelm <hidden>
Date: 2025-08-01 12:36:47
Also in:
lkml
Am Fri, Aug 01, 2025 at 01:23:44PM +0100 schrieb Russell King (Oracle):
On Fri, Aug 01, 2025 at 02:06:16PM +0200, Alexander Wilhelm wrote:quoted
Am Fri, Aug 01, 2025 at 12:58:23PM +0100 schrieb Russell King (Oracle):quoted
On Fri, Aug 01, 2025 at 01:54:29PM +0200, Alexander Wilhelm wrote:quoted
Am Fri, Aug 01, 2025 at 02:01:06PM +0300 schrieb Vladimir Oltean:quoted
On Thu, Jul 31, 2025 at 08:26:43PM +0100, Russell King (Oracle) wrote:quoted
and this works. So... we could actually reconfigure the PHY independent of what was programmed into the firmware.It does work indeed, the trouble will be adding this code to the common mainline kernel driver and then watching various boards break after their known-good firmware provisioning was overwritten, from a source of unknown applicability to their system.You're right. I've now selected a firmware that uses a different provisioning table, which already configures the PHY for 2500BASE-X with Flow Control. According to the documentation, it should support all modes: 10M, 100M, 1G, and 2.5G. It seems the issue lies with the MAC, as it doesn't appear to handle the configured PHY_INTERFACE_MODE_2500BASEX correctly. I'm currently investigating this further.Which MAC driver, and is it using phylink?If I understand it correclty, then yes. It is an Freescale FMAN driver that is called through phylink callbacks like the following: static const struct phylink_mac_ops memac_mac_ops = { .validate = memac_validate, .mac_select_pcs = memac_select_pcs, .mac_prepare = memac_prepare, .mac_config = memac_mac_config, .mac_link_up = memac_link_up, .mac_link_down = memac_link_down, };Thanks. It looks like memac_select_pcs() and memac_prepare() fail to handle 2500BASEX despite memac_initialization() suggesting the SGMII PCS supports 2500BASEX. It would also be good if the driver can also use pcs->supported_interfaces which states which modes the PCS layer supports as well.
Thank you for your detailed support, Russell. I believe I now have a good understanding of the next steps. I'll respond later once I’ve made some progress and have results to share. Best regards Alexander Wilhelm