USB-C dock with two 2 monitors does not work with Linux >= 5.18-rc1 (c5365554514)
2024-03-24 UPDATE - Offending commit identified:
This commit from 5.18-rc1 is what broke multiple displays over USB-C with my docked SteamDeck: https://github.com/torvalds/linux/commit/c5365554514
Reverse patching it out, I'm able use both external displays at full resolution and refresh rate on a Linux 6.8.0-rc1 kernel.
Original Issue
This is likely a duplicate of @kolAflash's #2680, but @superm1 asked me to open a new issue here.
Brief summary of the problem:
I have a Steam Deck that can run 2 external displays (1 DP and 1 HDMI) over a USB-C dock when running Windows 10 or 11 or Linux 5.15.
Any Linux kernel I've tested 6.1 or above can only run 1 external display (either the DP or the HDMI). When both external displays are connected, 1 goes into standby, detection stalls (X11 shows wallpaper on new display and mouse moves but is otherwise unresponsive).
Here are the dmesg logs for 6.7.6 and 6.8-rc5 which behave identically to previous kernels, search for ---
to see where the 2nd display is turned on or the dock is reconnected to reset:
dmesg-6.7.6-xanmod1.txt dmesg-6.8.0-rc5.txt
Here's the interesting part from dmesg-6.7.6-xanmod1.txt
[Fri Mar 1 09:31:54 2024] logitech-hidpp-device 0003:046D:1017.0012: HID++ 1.0 device connected.
--- Turn on 2nd External Display (DP) -- DP displays wallpaper, HDMI goes standby, Steam Deck display goes black -- Same behavior as all kernels after 5.15
[Fri Mar 1 09:32:41 2024] [drm] DM_MST: starting TM on aconnector: 0000000089aba462 [id: 102]
[Fri Mar 1 09:32:41 2024] [drm] DM_MST: DP14, 2-lane link detected
[Fri Mar 1 09:32:42 2024] [drm] Downstream port present 1, type 0
[Fri Mar 1 09:32:42 2024] [drm] Downstream port present 1, type 0
[Fri Mar 1 09:32:44 2024] [drm] Failed to add display topology, DTM TA is not initialized.
[Fri Mar 1 09:33:55 2024] usb 1-1: USB disconnect, device number 8
[Fri Mar 1 09:33:55 2024] usb 1-1.2: USB disconnect, device number 9
[Fri Mar 1 09:33:55 2024] usb 1-1.2.1: USB disconnect, device number 11
[Fri Mar 1 09:33:55 2024] [drm] DM_MST: stopping TM on aconnector: 0000000089aba462 [id: 102]
[Fri Mar 1 09:33:55 2024] usb 2-1: USB disconnect, device number 6
[Fri Mar 1 09:33:55 2024] r8152-cfgselector 2-1.3: USB disconnect, device number 7
[Fri Mar 1 09:33:55 2024] usb 1-1.2.3: USB disconnect, device number 12
[Fri Mar 1 09:33:55 2024] usb 1-1.2.4: USB disconnect, device number 13
[Fri Mar 1 09:33:55 2024] usb 2-1.4: USB disconnect, device number 8
[Fri Mar 1 09:33:55 2024] cs35l41 spi-VLV1776:01: DSP1: Legacy support not available
[Fri Mar 1 09:33:55 2024] cs35l41 spi-VLV1776:00: DSP1: Legacy support not available
[Fri Mar 1 09:33:55 2024] usb 1-1.4: USB disconnect, device number 10
--- Disconnect Dock, this resets the Steam Deck display and unstalls X11 display detection
[Fri Mar 1 09:34:31 2024] usb 1-1: new high-speed USB device number 14 using xhci_hcd
...
[Fri Mar 1 09:34:34 2024] [drm] Failed to add display topology, DTM TA is not initialized.
Here is a full list of all distributions tested using ISOs on Ventoy (It was not until testing Nobara that I noticed the Topology message in the dmesg log):
Status | OS | Kernel | Graphics Platform | Notes |
---|---|---|---|---|
Works | Windows 11 To Go (SD Card) | N/A | Good | |
Works | Waydroid Beta Live | 5.15 | Wayland | Good |
Works | NixOS Plasma5 Live ISO | 5.15 | Wayland | Good |
Works | NixOS Plasma5 Live ISO | 5.15 | X11 | Good |
Fails | NixOS Plasma5 Live ISO | 6.1 | X11 | Glitchy |
Fails | NixOS Plasma5 Live ISO | 6.1 | Wayland | Glitchy |
Fails | SteamOS 3.5.15 | 6.1.52-valve16-1-neptune-61 (64-bit) | X11 | Can only run: 1x 4K@60hz HDMI display (with other displays disconnected) |
Fails | NixOS Plasma5 Live ISO | 6.7.4 | Wayland | Multi-displays = Back screen on startup, Disconnect / reconnect -> Glitchy, wrong resolutions, UI elements open on wrong display |
Fails | KDE Neon Unstable Plasma 6.1 ISO | 6.5.0-17-generic | Wayland | Multi-displays = Back screen on startup, Disconnect / reconnect -> Glitchy, wrong resolutions, UI elements open on wrong display |
Fails | Nobara 39 Live ISO | 6.7.0-204.fsync.fc39.x86_64 (64-bit) | Wayland | [drm] Failed to add display topology, DTM TA is not initialized. |
Fails | NixOS Plasma5 Live ISO | 6.7.6-xanmod | X11 | Glitchy |
Fails | NixOS Plasma5 Live ISO | 6.8.0-rc5 | X11 | Glitchy |
Here is the Hardware/OS info for SteamOS 3.5 which is also effected running 6.1
Operating System: SteamOS 3.5.15
KDE Plasma Version: 5.27.5
KDE Frameworks Version: 5.107.0
Qt Version: 5.15.9
Kernel Version: 6.1.52-valve16-1-neptune-61 (64-bit)
Graphics Platform: X11
Processors: 8 × AMD Custom APU 0405
Memory: 14.5 GiB of RAM
Graphics Processor: AMD Custom GPU 0405
Manufacturer: Valve
Product Name: Jupiter
System Version: 1