amd-xgbe: CL73 autoneg never completes on 10GBASE-T port (ASUSTOR AS6804T), forced 10G works

From: V3C14-Embed dead

Date: Mon Sep 28 2026 - 09:29:54 EST


Hi,

On an ASUSTOR Lockerstor 4 Gen3 (AS6804T) running Proxmox VE with
kernel 7.0.14-19-pve (a downstream kernel, I have not tested
mainline), the two AMD XGMAC 10GbE ports never link up with
autonegotiation enabled. Forcing the speed works.

Hardware / firmware:
- ASUSTOR AS6804T, BIOS V1.23
- 2x AMD XGMAC 10GbE [1022:1458], driver amd-xgbe
(enp233s0f2 / enp233s0f3), firmware-version 19.118.48
- Link partner: Netgear GS110EMX switch, fixed RJ45 10GBASE-T port

Symptoms:
1. Autoneg on: ethtool reports Supported ports: TP and advertises
1000/2500/10000baseT/Full, but "Link detected: no" on both ports.
Same result when advertising only 10G (advertise 0x1000) or only
1G (advertise 0x20).
2. Autoneg off, forced speed:
ethtool -s enp233s0f2 autoneg off speed 10000 duplex full
with the interface up gives "Speed: 10000Mb/s, Link detected:
yes" ("Link is Up - 10Gbps/Full" in dmesg).
3. /sys/class/net/enp233s0f2/phydev points to the driver's own MDIO
bus (mdio_bus/0000:e9:00.2/0000:e9:00.2:00) with phy_id
0x00000000, so no external PHY is identified by phylib.

Log with dynamic debug (echo 'module amd_xgbe +p' > .../control),
after ip link set down/up (prefix "amd-xgbe 0000:e9:00.2" omitted):

[ 2206.375463] enp233s0f2: starting PHY
[ 2206.375466] enp233s0f2: starting I2C
[ 2207.390072] enp233s0f2: firmware mailbox command did not complete
[ 2207.390147] enp233s0f2: firmware mailbox reset performed
[ 2207.390162] enp233s0f2: 10GbE KR mode set
[ 2207.428875] enp233s0f2: firmware mailbox not ready for command
[ 2207.428945] enp233s0f2: firmware mailbox reset performed
[ 2207.430443] enp233s0f2: 1GbE SGMII mode set
[ 2207.430454] enp233s0f2: CL73 AN initialized
[ 2207.430805] enp233s0f2: CL73 AN enabled/restarted
[ 2207.990892] enp233s0f2: CL73 AN Incompatible-Link
[ 2207.990909] enp233s0f2: CL73 AN result: No-Link
[ 2207.990913] enp233s0f2: CL73 AN Ready
[ 2212.583519] enp233s0f2: AN link timeout
[ 2212.583855] enp233s0f2: AN PHY configuration

The last block (timeout, reconfiguration, Incompatible-Link) repeats
every ~5 seconds and the link never comes up.

I looked at the recent amd-xgbe work on netdev (RX adaptation with AN
disabled, MAC_AUTO_SW in CL37 AN, the pending "synchronize KR
training with device operations" series) and none of it seems to
cover this case; the last one is not present in my running module.

Questions:
- Is CL73 AN expected on a 10GBASE-T port on this platform, or
should the port mode come out differently from the BIOS/ACPI
properties?
- I saw ASUSTOR users being pointed to AMD's Ryzen Embedded V3000
Linux driver package, which carries extra amd-xgbe patches. Are
those meant to go upstream?

Happy to provide more logs or run further tests on request.

Thanks,