openwrt/target/linux
Jonas Jelonek 6879c8ea53 realtek: pcs: add XSG write operations
There is some special logic used for certain writes to digital pages for
RTL93xx SerDes, especially when configuring the XSGMII mode. For
RTL930x this applies to SerDes 2 and 3, for RTL93xx to more. In this case,
a dual-read/write to SDS and SDS + 1 is done. While the corresponding
mapping from front to back SDS for RTL931x is currently covered in the
SerDes MDIO driver, it isn't for RTL930x.

To cover these special cases and provide a clear interface on that,
introduce an XSG write SerDes operation. All these dual-read/write cases
can be expressed with such an XSG operation whose internal semantics are
defined for each switchcore family.

This could be done just with plain dual read/write calls however this
isn't a clean approach and may be confusing while comparing our
functionality with the SDK, especially for RTL930x.

In practice, if this isn't handled correctly, only half of the ports of an
XSGMII-connected RTL8218D do work because some required values aren't
applied for the background SerDes 3.

Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/21592
Signed-off-by: Robert Marko <robimarko@gmail.com>
2026-01-28 21:10:42 +01:00
..
airoha airoha: reduce HWRNG quality 2026-01-28 00:52:13 +01:00
apm821xx kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
armsr kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
at91 kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
ath79 ath79: add calibration variant for TP-Link TL-WA1201 v2 2026-01-28 12:05:55 +01:00
bcm27xx kernel: bump 6.12 to 6.12.67 2026-01-24 21:36:10 +01:00
bcm47xx kernel: bump 6.12 to 6.12.64 2026-01-15 01:22:47 +01:00
bcm53xx bcm53xx: add support for ASUS RT-AC3200 and ASUS RT-AC5300 2025-12-18 18:18:48 +00:00
bcm4908 kernel: disable non layout u-boot,env 2025-11-28 01:20:33 +01:00
bmips kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
d1 d1: Enable LED driver for D1 builds 2026-01-23 10:35:36 +01:00
econet kernel: bump 6.12 to 6.12.67 2026-01-24 21:36:10 +01:00
gemini gemini: select CONFIG_BLK_DEV_LOOP 2026-01-28 08:22:25 +01:00
generic kernel: add missing kernel config option 2026-01-26 23:57:25 +01:00
imx imx: drop support for kernel 6.6 2025-11-22 10:11:52 +01:00
ipq40xx ipq40xx: fix image pipeline for MR6350 2026-01-25 22:15:48 +01:00
ipq806x kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
ixp4xx ixp4xx: select the GPIO keys input package 2026-01-28 18:59:47 +01:00
kirkwood kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
lantiq lantiq: AVM Fritz 736x: fix PCIe reset GPIO 2026-01-24 01:40:11 +01:00
layerscape layerscape: set PREEMPT_NONE as default preemption model 2026-01-24 22:52:49 +01:00
loongarch64 loongarch64: set PREEMPT_NONE as default preemption model 2026-01-24 22:54:29 +01:00
malta kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
mediatek mediatek: mt7623: set PREEMPT_NONE as default model 2026-01-24 22:54:16 +01:00
microchipsw microchipsw: lan969x: include ip-bridge and dcb tools 2026-01-25 22:10:22 +01:00
mpc85xx kernel: reorder configuration options 2026-01-26 23:57:25 +01:00
mvebu mvebu: cortex-a53: fix Methode eDPU migration to upstream DTS 2026-01-28 10:19:18 +01:00
mxs kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
octeon kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
omap kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
pistachio kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
qoriq package: uboot-qoriq: fix T4240RDB u-boot selection 2026-01-12 13:59:30 +01:00
qualcommax qualcommax: ipq807x: fix sysupgrade for TCL LINKHUB HH500V 2026-01-26 22:01:09 +01:00
qualcommbe kernel: net: phy: realtek: backport upstream commits 2026-01-19 13:51:41 +00:00
ramips ramips: mt76x8: add support for Cudy LT400E v1 2026-01-20 01:47:00 +01:00
realtek realtek: pcs: add XSG write operations 2026-01-28 21:10:42 +01:00
rockchip rockchip: add HINLINK H66K / H68K support 2026-01-24 23:46:23 +01:00
sifiveu kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
siflower kernel: bump 6.12 to 6.12.64 2026-01-15 01:22:47 +01:00
starfive kernel: net: phy: realtek: backport upstream commits 2026-01-19 13:51:41 +00:00
stm32 kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
sunxi kernel: reorder configuration options 2026-01-26 23:57:25 +01:00
tegra kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
uml kernel: cleanup CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU 2026-01-11 12:52:54 +01:00
x86 x86: cs5535audio: add support for subtarget legacy 2026-01-19 12:50:00 +01:00
zynq zynq: drop support for kernel 6.6 2025-11-25 17:27:24 +01:00
Makefile linux: fix missing default packages in profiles.json 2024-11-17 19:29:06 +01:00