Great news, everyone! I've finally found a solution to properly and reliably switch a Pro Display XDR between a Mac and a PC, the latter being connected with a bidirectional DisplayPort-to-USB-C cable.
It's this product:
Cable Matters 20Gbps USB-C Switch
✅ 6K@60Hz from both Mac and PC
✅ Switches quickly (~3 seconds)
✅ Works every time (as opposed to Sabrent's Thunderbolt 4 KVM)
✅ Not expensive
✅ Good cable length
✅ Not external power supply required
Important to note:
- It's a USB-C switch, not a Thunderbolt switch. Despite this, System Profiler shows the Pro Display XDR as being connected in "Thunderbolt 3" mode.
- The switch didn't seem to work with Thunderbolt cables connected directly to it (but that may have been a cable issue).
- The USB-C cable connecting to the switch needs to support a data rate of 20gbps. The two included cables do that. If the cable only supports 10gbps, there will either be no connection (black screen), lots of flickering or even a kernel panic. That being said, I've had success with a short USB-C cable that was only rated at 10gbps (but did connect at 20gbps).
- When using a Thunderbolt Dock between the Mac and the Switch, make sure to connect the switch to one of the Thunderbolt ports.
- HDR works fine from the Mac, but Windows stopped showing it as supported after some Nvidia driver update or so. I don't care enough to investigate. Interestingly enough, the Nvidia driver panel allows switching to 12 bits per channel.
I use the switch like this: Mac Studio -> Thunderbolt 3 Dock -> Cable Matters Switch -> Pro Display XDR
Multiple Thunderbolt docks seem to work in that configuration; I've tried both a Promise TD-300 (JHL6540 I believe) and a Orico TB3-S2 (JHL7440).
Note regarding availability: The switch is sometimes out of stock and doesn't seem to be available outside the US (yet). I managed to buy a used one on Amazon, which for some reason does ship to Europe.