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

Edoardo Canepa edoardo.canepa at canonical.com
Thu Jul 30 23:06:33 UTC 2026


Rejected for the following reasons:

As stated in the cover letter, this is diverging from upstream adapting a v1
when a v6 is being discussed online. It is also gating a specific behavior
to the Dell P5M1260, hence is more suited on oem kernels rather than 
generic.

Besides, on patch gate RTL8116AF fixes behind Dell DMI match:

@@ -3804,16 +3815,22 @@ static void rtl_hw_start_8117(struct rtl8169_private *tp)
  	}
  
  	r8168_mac_ocp_modify(tp, 0xe056, 0x00f0, 0x0000);
-	r8168_mac_ocp_write(tp, 0xea80, 0x0000);
-	r8168_mac_ocp_modify(tp, 0xe052, 0x0009, 0x0000);
-	r8168_mac_ocp_modify(tp, 0xd420, 0x0fff, 0x045f);
+	if (tp->rtl8116af_quirk) {
+		r8168_mac_ocp_write(tp, 0xea80, 0x0000);
+		r8168_mac_ocp_modify(tp, 0xe052, 0x0009, 0x0000);
+		r8168_mac_ocp_modify(tp, 0xd420, 0x0fff, 0x045f);
+	} else {
+		r8168_mac_ocp_modify(tp, 0xe052, 0x0000, 0x0009);
+		r8168_mac_ocp_modify(tp, 0xd420, 0x0fff, 0x047f);
+	}

shouldn't the non-quirk path also have the

r8168_mac_ocp_write(tp, 0xea80, 0x0000);

at first glance seems like the gating is modifying the sequence
for all rtl8116af cards?

On 7/17/26 07:10, 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(-)
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature.asc
Type: application/pgp-signature
Size: 840 bytes
Desc: OpenPGP digital signature
URL: <https://lists.ubuntu.com/archives/kernel-team/attachments/20260731/6c8f1065/attachment-0001.sig>


More information about the kernel-team mailing list