ACK: [SRU][R][PATCH 0/7] System cannot enter s0ix suspend on Dell with RTL8116AF ethernet

Tim Whisonant tim.whisonant at canonical.com
Wed Jul 29 17:41:09 UTC 2026


On Fri, Jul 17, 2026 at 01:10:16PM +0800, AceLan Kao via kernel-team wrote:
> From: "Chia-Lin Kao (AceLan)" <acelan.kao at canonical.com>
> 
> BugLink: https://bugs.launchpad.net/bugs/2160475
> 
> [Impact]
> On Dell Pro 5 Micro P5M1260 (RTL8116AF / "RTK 1G OM"), the system cannot
> enter suspend. Screen turns off, fan stops, power LED goes off, but the
> system never reaches S0ix: slp_s0_residency stays 0 and package C-state
> stalls at C10 entry. Hits 100%.
> 
> Root cause: RTL8116AF runs in SFP/SerDes mode. The r8169 driver needs a
> dummy PHY ID so phylib can attach a dummy Realtek PHY driver, with the
> needed standard PHY registers served through the SerDes register. Also
> RTL8116AF is a multi-function card: all functions (including hidden
> functions 2-7) must be put to D3hot and have ASPM enabled so the platform
> can reach C10 and s0ix. Without these, the PCIe link stays active and
> blocks package low-power entry.
> 
> [Fix]
> Backport Realtek's 5-patch r8169 RTL8116AF series (v1, the smallest set
> that fixes the issue):
> 
>   net: phy: realtek: add support for dummy phy
>   r8169: move functions forward
>   r8169: fix RTL8116af link readiness bug
>   r8169: add ltr support for RTL8116af
>   r8169: fix RTL8116af can not enter s0idle and c10
> 
> These add the dummy PHY, SerDes register handling, LTR/ASPM and
> multi-function D3hot programming for RTL_GIGA_MAC_VER_52 (RTL8116AF).
> 
> Because these changes touch RTL_GIGA_MAC_VER_52 broadly, they are gated
> behind a Dell Pro 5 Micro P5M1260 DMI quirk (a per-device rtl8116af_quirk
> flag). Only the matched machine takes the new path; other
> RTL8116AF/VER_52 systems keep the current behavior.
> 
> Upstream status: not merged into a released kernel yet. Realtek posted a
> larger phylink-based series (v6, 7 patches) still under review on netdev:
>   https://lore.kernel.org/netdev/20260709100237.541-1-javen_xu@realsil.com.cn/
> We use the smaller v1 5-patch set as a quirk workaround until that lands.
> The 5-patch set we carry:
>   https://lore.kernel.org/netdev/20260603065916.334-1-javen_xu@realsil.com.cn/
> 
> [Test Plan]
> On Dell Pro 5 Micro P5M1260:
> 1. Boot the fixed kernel.
> 2. Trigger suspend:
>    $ sudo rtcwake -m mem -s 20
> 3. After resume, check S0ix residency:
>    $ sudo cat /sys/kernel/debug/pmc_core/slp_s0_residency_usec
>    (or: sudo turbostat --show=Pkg%LPI,PkgC10 --quiet sleep 1)
> 
> Without patch: slp_s0_residency stays 0; package never reaches C10/s0ix;
> system looks suspended (screen/fan/LED off) but never enters S0ix.
> With patch: slp_s0_residency increments after each suspend; package
> reaches C10/s0ix.
> Repeat 20+ cycles to confirm stability.
> 
> [Where problems could occur]
> Could break the r8169 driver on RTL8116AF / RTL_GIGA_MAC_VER_52 systems.
> If the DMI match or the rtl8116af_quirk gating is wrong, the dummy-PHY /
> SerDes / LTR changes could apply to the wrong device or be skipped on the
> target, causing: the link not coming up (dummy PHY not attached), wrong
> link speed reported, or the device failing to reach low-power states on
> other VER_52 boards. The quirk uses an exact DMI product-name match to
> keep the blast radius to the single matched Dell machine; any regression
> is confined to that platform.
> 
> Chia-Lin Kao (AceLan) (2):
>   Revert "UBUNTU: SAUCE: r8169: add quirk for RTL8116af SerDes"
>   UBUNTU: SAUCE: r8169: gate RTL8116AF fixes behind Dell P5M1260 quirk
> 
> Javen Xu (5):
>   UBUNTU: SAUCE: net: phy: realtek: add support for dummy phy
>   UBUNTU: SAUCE: r8169: move funcitons forward
>   UBUNTU: SAUCE: r8169: fix RTL8116af link readiness bug
>   UBUNTU: SAUCE: r8169: add ltr support for RTL8116af
>   UBUNTU: SAUCE: r8169: fix RTL8116af can not enter s0idle and c10
> 
>  drivers/net/ethernet/realtek/r8169_main.c | 274 ++++++++++++++--------
>  drivers/net/phy/realtek/realtek_main.c    |  54 +++++
>  include/net/phy/realtek_phy.h             |   1 +
>  3 files changed, 233 insertions(+), 96 deletions(-)
> 
> -- 
> 2.53.0
> 

Acked-by: Tim Whisonant <tim.whisonant at canonical.com>



More information about the kernel-team mailing list