Good afternoon. I’m trying to solve a mystery involving my laptop with Claude’s help; if anyone can assist me, please see the attachment.
Technical Report — Suspend/Resume Failure (s2idle) and DMCUB Errors on AMD Renoir/Lucienne APU under Ubuntu 26.04 LTS
Report date: August 2, 2026
Author: End user (assisted report)
1. Summary
After migrating the laptop from Windows 11 to Ubuntu 26.04 LTS, the lid-close suspend behavior stopped working correctly. On Windows, closing the lid suspended the system normally and opening it resumed work without issues. On Ubuntu, the same action results in a black screen with no response to keyboard, mouse, or the power button, requiring a forced shutdown (removing the battery / holding the physical power button) to power the machine back on.
An error related to the DMCUB firmware in the amdgpu driver was identified in the kernel logs as the most likely failure point, occurring both during screen transitions (screen lock / DPMS) and during real suspend (s2idle).
2. Hardware and software
| Item | Detail |
|---|---|
| Laptop model | Dell Vostro 3525 |
| APU | AMD Ryzen (Renoir/Lucienne), PCI ID 1002:164C, subsystem 1028:0BA1 |
| Integrated GPU | AMD Radeon (Renoir), Display Core DCN 2.1 |
| BIOS/VBIOS | ATOM BIOS 113-LUCIENNE-017 |
| DMUB firmware | version 0x0101002B |
| Storage | NVMe 2450 NVMe 512GB (also identified as HFS960G32FEH-7A10A in another firmware report) |
| Wi-Fi | Realtek rtw88_8821ce |
| Operating system | Ubuntu 26.04 LTS |
| Kernel tested | 7.0.0-28-generic |
| BIOS status | Confirmed up to date (via fwupdmgr, no pending “System Firmware” updates) |
| Supported sleep state | s2idle only (/sys/power/mem_sleep does not expose deep) |
| Swap | Swap file (/swap.img, 32G), not a dedicated partition |
3. Diagnostic timeline
-
Initial symptom: closing the lid caused a black screen with no response (forced shutdown required). This occurred even in simple screen-lock scenarios (
HandleLidSwitch=lock), not only during real suspend. -
/sys/power/mem_sleepcheck: confirmed exclusive support fors2idle; attempting to forcedeepresulted in an error (Invalid argument, os error 22), confirming the hardware does not expose S3 support. -
Log analysis (
journalctl -b -1 -p err): repeatedly identified the error:amdgpu 0000:04:00.0: [drm] *ERROR* dc_dmub_srv_log_diagnostic_data: DMCUB error - collecting diagnostic dataThis error occurred both during screen-lock events and during the logon process (restarting
systemd-logind), suggesting the problem is tied to any reinitialization of the display pipeline (DPMS, lock, resume), not exclusively to system suspend. -
Additional error observed (unrelated to the freeze):
amdgpu 0000:04:00.0: psp gfx command LOAD_TA(0x1) failed and response status is (0x7)Occurs normally at boot with no noticeable impact — associated with an RAS (Reliability, Availability, Serviceability) module unavailable on this chip.
-
Test 1 — kernel parameter
amdgpu.dcdebugmask=0x10: applied via GRUB. Not sufficient to eliminate the DMCUB errors. -
Test 2 — kernel parameter
amdgpu.dcdebugmask=0x600(disables Panel Self Refresh and Panel Replay): fully resolved the freeze caused by screen lock / DPMS (lid lock, session resume via logind). Repeatedly tested with success. -
Test 3 — real suspend (
s2idle) withHandleLidSwitch=suspend: even withamdgpu.dcdebugmask=0x600active, real suspend via lid close still results in a resume failure (permanent black screen, requires forced shutdown). Kernel log confirms suspend entry:systemd-logind[1903]: The system will suspend now! systemd[1]: Starting systemd-suspend.service - System Suspend... systemd-sleep[5043]: Performing sleep operation 'suspend'... kernel: PM: suspend entry (s2idle)No further log entries are recorded after this point — the system freezes before it can persist any information about the resume process.
-
Test 4 — additional parameters
nvme_core.default_ps_max_latency_us=0 pcie_aspm=off(targeting a possible NVMe/PCIe wake failure): tested together withamdgpu.dcdebugmask=0x600. Did not resolve the real-suspend resume failure.
4. Current state (workaround adopted)
Given the inability to fully resolve real suspend (s2idle) with the parameters tested, the user opted for a stable configuration that avoids the freeze in daily use, at the cost of giving up real suspend:
-
/etc/systemd/logind.conf:HandleLidSwitch=lock HandleLidSwitchExternalPower=lock HandleLidSwitchDocked=ignore -
/etc/default/grub(GRUB_CMDLINE_LINUX_DEFAULT):quiet splash amdgpu.dcdebugmask=0x600 -
GNOME Settings Daemon configured to never suspend on idle:
org.gnome.settings-daemon.plugins.power sleep-inactive-battery-type = 'nothing' org.gnome.settings-daemon.plugins.power sleep-inactive-ac-type = 'nothing'
With this configuration, closing the lid only locks the screen (without truly suspending), and the system resumes normally when opened, with no freezes. Real suspend (s2idle) remains non-functional on this hardware.
5. Technical summary for triage
- Affected component:
amdgpudriver, DC/DMCUB subsystem, on Renoir/Lucienne APU (0x164C). - Trigger: any reinitialization of the display pipeline — screen lock, DPMS timeout, or entering/exiting
s2idlesuspend. - Partial mitigation:
amdgpu.dcdebugmask=0x600(disables PSR and Panel Replay) eliminates the freeze in screen-lock/DPMS scenarios, but does not resolve the resume failure during reals2idlesuspend. - Unmitigated failure:
s2idleentry succeeds, but resume fails silently — no further logs afterPM: suspend entry (s2idle), suggesting the freeze occurs before log persistence, possibly within DMCUB firmware reinitialization or another component that could not be isolated with standard logging tools (journalctl,dmesg). - Not yet tested: alternative kernels (newer via HWE, or older),
linux-firmwarebisection, log capture via serial console ornetconsole(needed since local logs do not survive the freeze).
6. Suggestions for further investigation (for AMD/Ubuntu teams)
- Test with a serial console or
netconsoleto capture the exact moment of the resume failure, since local logs do not persist after the freeze. - Check whether a newer DMUB firmware version exists outside the currently distributed
linux-firmwarepackage. - Confirm whether this bug matches known
amdgpuissues on Renoir/Lucienne related todc_dmub_srv_log_diagnostic_data— a recurring issue reported in the Linux/AMD community for this APU generation.