Asus DC500 dock rarely working under Arch: "Step 2 of creating MST payload"

Hi,
I’m having some issues using my FW16 with an Asus DC500 dock. I run Arch and WIndows 10 (I’m aware neither is officially supported).
In addition to the laptop display, I have a single display (a BenQ BL series…) connected via HDMI to an Asus DC500 dock. The dock also works as an Ethernet adapter.
When under Windows, everything is working fine. Under Linux, Ethernet and USB work fine via the dock. But the display stays blank. It’s detected by the OS, I can change the resolution, orientation etc… (using the KDE Plasma settings panel). But the display receives no video signal. The few rare times it works is when I reboot with the dock connected but even then, it’s fairly rare. Whenever I connect the dock, the computer freezes for about 10 seconds. Power cycling the dock, the monitor and the computer doesn’t help.
Interestingly, sometimes, when I replug the dock, instead of properly recognizing the screen, it calls it dp-11 (the number changes iirc), and gives it some BS resolution such as 640x480. The display itself doesn’t work in that case either. Replugging the dock makes it recognize the proper resolution.

dmesg gives this (there are several attempts in there when I try to change the resolution of the connected display)

[ 2479.327313] [drm] DMUB HPD IRQ callback: link_index=7
[ 2479.342179] r8152 8-1.4.1.3:1.0 eth0: carrier on
[ 2479.384255] [drm] DMUB HPD IRQ callback: link_index=7
[ 2479.441367] [drm] DMUB HPD IRQ callback: link_index=7
[ 2479.517303] [drm] DMUB HPD IRQ callback: link_index=7
[ 2479.585512] [drm] DMUB HPD IRQ callback: link_index=7
[ 2479.599991] r8152 8-1.4.1.3:1.0 eth0: carrier off
[ 2479.645582] [drm] DMUB HPD IRQ callback: link_index=7
[ 2479.687304] [drm] DMUB HPD IRQ callback: link_index=7
[ 2479.698280] [drm] DMUB HPD IRQ callback: link_index=7
[ 2479.756381] [drm] DMUB HPD IRQ callback: link_index=7
[ 2479.767336] [drm] DMUB HPD IRQ callback: link_index=7
[ 2479.843041] [drm] DMUB HPD IRQ callback: link_index=7
[ 2479.892373] [drm] DMUB HPD IRQ callback: link_index=7
[ 2479.949378] [drm] DMUB HPD IRQ callback: link_index=7
[ 2480.015163] [drm] DMUB HPD IRQ callback: link_index=7
[ 2480.071625] [drm] DMUB HPD IRQ callback: link_index=7
[ 2480.156691] [drm] DMUB HPD IRQ callback: link_index=7
[ 2480.225500] [drm] DMUB HPD IRQ callback: link_index=7
[ 2480.284448] [drm] DMUB HPD IRQ callback: link_index=7
[ 2480.330377] [drm] Downstream port present 1, type 2
[ 2481.391201] r8152 8-1.4.1.3:1.0 eth0: carrier on
[ 2484.722241] amdgpu 0000:c2:00.0: [drm] *ERROR* Step 2 of creating MST payload for 000000009deb4670 failed: -5
[ 2485.039618] [drm] DMUB HPD IRQ callback: link_index=7
[ 2485.216427] [drm] DMUB HPD IRQ callback: link_index=7
[ 2485.278486] [drm] DMUB HPD IRQ callback: link_index=7
[ 2485.339471] [drm] DMUB HPD IRQ callback: link_index=7
[ 2485.409655] [drm] DMUB HPD IRQ callback: link_index=7
[ 2485.462468] [drm] DMUB HPD IRQ callback: link_index=7
[ 2485.538600] [drm] DMUB HPD IRQ callback: link_index=7
[ 2485.590857] [drm] DMUB HPD IRQ callback: link_index=7
[ 2485.651763] [drm] DMUB HPD IRQ callback: link_index=7
[ 2485.726849] [drm] DMUB HPD IRQ callback: link_index=7
[ 2485.768525] [drm] DMUB HPD IRQ callback: link_index=7
[ 2650.707065] [drm] DMUB HPD IRQ callback: link_index=7
[ 2650.872653] [drm] DMUB HPD IRQ callback: link_index=7
[ 2651.051500] [drm] DMUB HPD IRQ callback: link_index=7
[ 2655.428940] amdgpu 0000:c2:00.0: [drm] *ERROR* Step 2 of creating MST payload for 000000009deb4670 failed: -5
[ 2660.178344] [drm] DMUB HPD IRQ callback: link_index=7
[ 2665.263887] [drm] DMUB HPD IRQ callback: link_index=7
[ 2665.459608] [drm] DMUB HPD IRQ callback: link_index=7
[ 2669.645517] amdgpu 0000:c2:00.0: [drm] *ERROR* Step 2 of creating MST payload for 000000009deb4670 failed: -5
[ 2674.098705] amdgpu 0000:c2:00.0: [drm] *ERROR* Step 2 of creating MST payload for 000000009deb4670 failed: -5
[ 2682.373515] [drm] DMUB HPD IRQ callback: link_index=7
[ 2682.530905] [drm] DMUB HPD IRQ callback: link_index=7
[ 2682.716875] [drm] DMUB HPD IRQ callback: link_index=7
[ 2683.122392] [drm] DMUB HPD IRQ callback: link_index=7
[ 2689.633959] [drm] DMUB HPD IRQ callback: link_index=7
[ 2689.841761] [drm] DMUB HPD IRQ callback: link_index=7
[ 2693.985401] amdgpu 0000:c2:00.0: [drm] *ERROR* Step 2 of creating MST payload for 000000009deb4670 failed: -5
[ 2698.452077] amdgpu 0000:c2:00.0: [drm] *ERROR* Step 2 of creating MST payload for 000000009deb4670 failed: -5

Here you can find some basic info on the dock: https://www.asus.com/event/2023/productguide/accessories/asus-triple-4k-thunderbolt-4-dock-dc500.pdf

The computer is a FW16 DIY 7940HS without a dGPU, I run Arch with KDE Plasma with Wayland. Kernel is 6.9.9
Monitor is BENQ BL2420-T, connected via HDMI to the dock.

Any help or ideas welcome.
If any additional information or logs are necessary, I can provide them of course.

Best regards,
Semptum

Interestingky, when I first installed the dock, it was working under Linux after every reboot. It became rarer and rarer after each reboot. 2 days in and it stopped working altogether. I tried plugging an identical dock to check if it was hardware problems. It worked after a reboot but then never worked again…
Really really weird that it would progressively stop working without changing anything and that it would work with a different but identical dock…