This series addresses link-related issues on Wangxun Amber-lite 25G/40G NICs
(CR/KR training, hot-plug, 10G link state).
---
v10:
- P12: check the FFE taps against the register field width of the MAC in
use, instead of only for the 40G one. On the Sapphire the main and
pre taps are six-bit fields and the post tap is seven-bit, so a
larger value spills into the neighbouring field rather than being
truncated.
- P12/P13: say "Amber-Lite 40G NIC" for bp_capa and laser_off, the only
MAC that implements either.
- P17: add a new patch to rename fiber_suppport_speed to fiber_support_speed.
The field was added with the misspelling in 234ce0d1fa, copied from the
out-of-tree base driver.
---
v9:
- P02: build autoneg_advertised from one mask instead of three ifs, and
drop the out-of-tree reference from the message.
- P03: fix the same wrong RXS field in txgbe_e56_cfg_10g(), and add the
Fixes tag for the 25G commit that introduced that copy.
- P10: report module removal and cancel the AN73 watchdog only on the
transition to not-present, so an empty cage no longer repeats both
on every poll.
- P12: reset invalid bp_capa values to 0, log AML40 ffe_* values above
0xFF before their low bytes are replicated across the four lanes,
and document the applicable FFE value range.
- P13: clarify that laser_off disables the E56 PHY PMD through PMD_CFG0
for DAC cables, while QSFP modules use the SFF-8636 Tx-disable byte.
- P15: rewrite the unknown-module comment, drop the debug print that ran
on every watchdog tick, and drop a commit-message bullet for a branch
that is not in the parent tree.
- P16: clear TXGBE_FLAG_NEED_LINK_CONFIG before the administrative-down
early return, so a 25G SFP port can recover after set_link_down() and
set_link_up().
---
v8:
- P05: keep a retry from reconfiguring an established AN73 link, while
still restarting PHY configuration when the link is down or AN is
incomplete.
- P10: on AML40, mark unsupported and unclassifiable QSFP modules as
unknown so the module poll does not repeatedly identify them or
rerun module and link setup.
- P12: place the txgbe release-note entries between the Solarflare and
ZTE driver entries.
- P13: rerun complete AML40 link setup on set_link_up() with laser_off
enabled, restoring the DAC configuration without adding a separate
state flag.
- P14: correct the AN FSM condition described in the commit message
and remove the stray line after the Signed-off-by trailer.
- P15: assign the detected 10G speed for passive and active-limiting
DACs, and remove the unreachable AML40 10G SFP capability branch.
- P16: add a new patch to keep Amber-Lite ports administratively down
by preventing the AN73 watchdog and setup-link retry paths from
configuring PHY while hw->dev_start is cleared.
---
Zaiyu Wang (17):
net/txgbe: fix failure to configure 10G on dual-speed DAC
net/txgbe: use the requested speed in E56 AN setup
net/txgbe: fix E56 PHY configuration error
net/txgbe: fix incorrect link state in 10G forced mode
net/txgbe: do not force reconfig on link retry
net/txgbe: set i2c sda hold time
net/txgbe: fix link speed display info for 10G mode
net/txgbe: remove stale outer UDP checksum offload flag
net/txgbe: fix SFP hot-plug when auto-negotiation is on
net/txgbe: fix DAC hot-plug on AML40 with auto-negotiation
net/txgbe: fix 40G FFE tuning applied to first lane only
net/txgbe: add pre2 FFE tap and backplane capability devargs
net/txgbe: add devarg to turn off Tx laser for AML40
net/txgbe: fix CR/KR link training and recovery
net/txgbe: align link capabilities and DAC classification
net/txgbe: respect manual link-down on Amber-Lite
net/txgbe: fix typo in the fiber_support_speed field
doc/guides/nics/txgbe.rst | 32 +++-
doc/guides/rel_notes/release_26_11.rst | 12 ++
drivers/net/txgbe/base/txgbe_aml.c | 13 +-
drivers/net/txgbe/base/txgbe_aml40.c | 78 +++++++--
drivers/net/txgbe/base/txgbe_e56.c | 16 +-
drivers/net/txgbe/base/txgbe_e56.h | 4 +
drivers/net/txgbe/base/txgbe_e56_bp.c | 196 +++++++++++++--------
drivers/net/txgbe/base/txgbe_e56_bp.h | 4 +-
drivers/net/txgbe/base/txgbe_hw.c | 33 ++++
drivers/net/txgbe/base/txgbe_osdep.h | 12 +-
drivers/net/txgbe/base/txgbe_phy.c | 42 ++++-
drivers/net/txgbe/base/txgbe_phy.h | 7 +
drivers/net/txgbe/base/txgbe_regs.h | 3 +
drivers/net/txgbe/base/txgbe_type.h | 19 +-
drivers/net/txgbe/txgbe_ethdev.c | 232 +++++++++++++++++++++++--
drivers/net/txgbe/txgbe_ethdev.h | 2 +
drivers/net/txgbe/txgbe_rxtx.c | 1 -
17 files changed, 566 insertions(+), 140 deletions(-)
--
2.55.0.windows.2