[PATCH net-next 0/3] net: phy: realtek: SerDes lane polarity and LEDs for RTL8261C/D

From: Simon Polack

Date: Mon Sep 21 2026 - 12:26:16 EST


The RTL8261CE on the Gemtek W1700K (Airoha AN7581) binds, but the 10G
ports don't come up: the board routes the USXGMII lanes inverted and the
driver never applies tx-polarity/rx-polarity from the device tree.
Patch 2 fixes that; the link then comes up at 1G and 10G.

The inversion is done in the PHY because the AN7581 PCS has no known
polarity control - nor does its MT7988 XFI T-PHY sibling - and Airoha's
own EN8811H driver handles it the same way.

Patch 3 is Chad Monroe's LED support, rebased onto the merged driver
with the RTL822X_VND2 LED definitions reused and a polarity bit fix.
Patch 1 adds the bindings for both.

Tested on an RTL8261CE (W1700K). Polarity is applied unchanged to the
RTL8261C, RTL8261D and RTL8261D_VM, which share config_init() but are
untested with inverted lanes. LEDs were also tested on RTL8261C
and RTL8261D boards.

The LED callbacks duplicate rtl822xb_led_*(); sharing the code means
touching the RTL8221B path, so that is left for a follow-up.

An LLM assistant (Claude) was used for rebasing, restructuring and the
changelogs. The register usage comes from existing driver sources and
was verified on hardware; the code has been reviewed by me.

Chad Monroe (1):
net: phy: realtek: add LED support for RTL8261C/D

Simon Polack (2):
dt-bindings: net: realtek,rtl82xx: Document RTL8261C/D PHYs
net: phy: realtek: apply SerDes lane polarity on RTL8261C/D

.../bindings/net/realtek,rtl82xx.yaml | 52 ++-
drivers/net/phy/realtek/Kconfig | 1 +
drivers/net/phy/realtek/realtek_main.c | 402 ++++++++++++++++--
3 files changed, 427 insertions(+), 28 deletions(-)


base-commit: 8830e65ed46de41f849eefb8ba227d4852c460f6
--
2.55.0