Plasma+Wayland: 2nd monitor (USB4/HDMI) no display after sleep/reboot

I have an annoying problem with my 2nd monitor not activating after sleep or reboot.
I’ve had this problem from day-1 of my EOS/KDE install.
I have an Asus Zenbook S16 connected to an Asus DC500 dock (via USB4/Thunderbolt) which connects via HDMI to an external BenQ GL2580 external screen. Both screens work perfectly under Windows11 (yuk), so I know it’s not a bandwidth/hardware problem.
Symptoms: After waking from sleep or reboot, the BenQ screen is blank (no signal). Opening the KDE Display Configuration in system settings, most times the BenQ is listed as an available and enabled device, just no signal. After several attempts (sometimes dozens) to disable/enable/disable/enable/etc. or logout/login, the monitor it will sometimes just start working.
Another minor annoyance is that the part of the display configuration control where you drag screens to rearrange them, no longer shows the BenQ monitor at all (it used to).
I’m wondering if this is an actual bug with the Kwin/SDDM or a configuration problem. I used my Ventoy to boot a live ISO of Gnome Ubuntu and it detected both screens fine in the live environment (LXQt Ubuntu did NOT however).
Below is a screenshot of my current config when it’s working, and a dump of inxi. With everything working, I can load up Steam and play games with no dropped frames (so AMDGPU is also working fine). Let me know if you have any advice on where to look or commands to use to try and fix this. I’d really rather not have to install Gnome just to get this working.
[Laptop]–TB4 cable–[Dock]–HDMI cable–[monitor]

$ inxi -b

System:
  Host: erik-um5606wa Kernel: 6.14.4-arch1-2 arch: x86_64 bits: 64
  Desktop: KDE Plasma v: 6.3.4 Distro: EndeavourOS
Machine:
  Type: Laptop System: ASUSTeK product: ASUS Zenbook S 16 UM5606WA_UM5606WA
    v: 1.0 serial: <superuser required>
  Mobo: ASUSTeK model: UM5606WA v: 1.0 serial: <superuser required>
    UEFI: American Megatrends LLC. v: UM5606WA.317 date: 03/21/2025
Battery:
  ID-1: BAT0 charge: 59.7 Wh (79.5%) condition: 75.1/78.0 Wh (96.3%)
    volts: 8.3 min: 8.0
CPU:
  Info: 12-core AMD Ryzen AI 9 HX 370 w/ Radeon 890M [MT MCP] speed (MHz):
    avg: 1951 min/max: 599/5157:3289
Graphics:
  Device-1: Advanced Micro Devices [AMD/ATI] Strix [Radeon 880M / 890M]
    driver: amdgpu v: kernel
  Device-2: Shinetech ASUS FHD webcam driver: hid-sensor-hub,usbhid,uvcvideo
    type: USB
  Display: wayland server: X.org v: 1.21.1.16 with: Xwayland v: 24.1.6
    compositor: kwin_wayland driver: X: loaded: amdgpu unloaded: modesetting
    dri: radeonsi gpu: amdgpu resolution: 1: 1920x1080~60Hz 2: 2880x1800~120Hz
  API: OpenGL v: 4.6 compat-v: 4.5 vendor: amd mesa v: 25.0.5-arch1.1
    renderer: AMD Radeon Graphics (radeonsi gfx1150 LLVM 19.1.7 DRM 3.61
    6.14.4-arch1-2)
  Info: Tools: api: clinfo, eglinfo, glxinfo, vulkaninfo
    de: kscreen-console,kscreen-doctor wl: wayland-info
    x11: xdpyinfo, xprop, xrandr
Network:
  Device-1: MEDIATEK driver: mt7925e
  Device-2: Realtek USB 10/100/1G/2.5G LAN driver: r8152 type: USB
Drives:
  Local Storage: total: 3.64 TiB used: 36.59 GiB (1.0%)
Info:
  Memory: total: 32 GiB note: est. available: 30.46 GiB used: 3.9 GiB (12.8%)
  Processes: 435 Uptime: 9m Shell: Bash inxi: 3.3.38
$ lspci -k -d ::03xx

c4:00.0 Display controller: Advanced Micro Devices, Inc. [AMD/ATI] Strix [Radeon 880M / 890M] (rev c1)
        Subsystem: ASUSTeK Computer Inc. Device 1df3
        Kernel driver in use: amdgpu
        Kernel modules: amdgpu

Updating with a related section from dmesg.log.


[   36.326453] amdgpu 0000:c4:00.0: [drm] *ERROR* dpcd_set_link_settings:1113: core_link_write_dpcd (DP_DOWNSPREAD_CTRL) failed
[   36.345052] amdgpu 0000:c4:00.0: [drm] *ERROR* dpcd_set_link_settings:1118: core_link_write_dpcd (DP_LANE_COUNT_SET) failed
[   36.363647] amdgpu 0000:c4:00.0: [drm] *ERROR* dpcd_set_link_settings:1146: core_link_write_dpcd (DP_LINK_BW_SET) failed
[   36.457119] [drm] DMUB notification skipped due to no handler: type=SET_CONFIGC_REPLY
[   46.720021] [drm:amdgpu_dm_process_dmub_set_config_sync [amdgpu]] *ERROR* wait_for_completion_timeout timeout!
[   46.971570] [drm] DMUB HPD RX IRQ callback: link_index=6
[   47.146715] [drm] DMUB HPD RX IRQ callback: link_index=6
[   51.409005] [drm] DMUB HPD RX IRQ callback: link_index=6
[   67.484041] [drm] DMUB HPD RX IRQ callback: link_index=6

I’m starting to think this is more of a AMDGPU kernel driver problem rather than a KDE/sddm specific issue. Or a weird incompatibility problem with the monitor/HDMI link.
Similar bug reports:

OK, now I’m nearly convinced the problem is with either my dock or monitor.
I brought my laptop to work along with a cheap Orico dock (never did work with my monitor which is why I bought the DC500), plugged it into the HDMI port on the Samsung monitor on my desk and it worked on the 1st try. No drama, no errors, no playing with the display settings. Just woke up on the native resolution right after boot.
I’ll confirm by dragging my work monitor home to connect to my existing setup.

Confirmed. 2nd monitor problem is the Asus DC500 dock.
Disconnected the Asus DC500 and connected the Orico dock and the monitor fired right up. Now I need to find out WHY this dock isn’t talking to the kernel driver. :frowning: