[PATCH] thunderbolt: Disable CL states for the Anker Prime TB5 dock
From: Kurt Lieber
Date: Thu Sep 24 2026 - 08:28:45 EST
The Anker Prime TB5 dock identifies itself in the DROM as 01ea:83b5.
Its router config space is an Intel Barlow Ridge 80G hub (8087:5786).
The upstream lane adapter advertises CL0s, CL1, and CL2. With CLx left
enabled, TMU uni-directional LowRes setup fails with -ENOTCONN, the USB3
and DisplayPort tunnels are aborted, and the router reconnects in a loop.
Loading thunderbolt with clx=0 keeps the link up on this machine.
Match the DROM id together with the Barlow Ridge hub id and disable CL
states for this dock only. QUIRK_NO_CLX takes the same early-out as the
module parameter, without disabling CLx for every other router.
Assisted-by: LLM
Signed-off-by: Kurt Lieber <kurt@xxxxxxxxxx>
---
Runtime-tested on linux-omarchy 7.2.5-3 (LG Gram 17Z90S, Meteor Lake).
Booted with thunderbolt.clx left at the default (Y). The dock came up
once, CL0s/CL1/CL2 Enable stayed 0 while the support bits stayed 1, the
link stayed in CL0 at 40 Gb/s, and the TMU uni-directional reconnect
loop did not occur.
drivers/thunderbolt/quirks.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/thunderbolt/quirks.c b/drivers/thunderbolt/quirks.c
--- a/drivers/thunderbolt/quirks.c
+++ b/drivers/thunderbolt/quirks.c
@@ -116,2 +116,5 @@
{ 0x0438, 0x020b, 0x0000, 0x0000, quirk_clx_disable },
+ /* CLx is unstable on the Anker Prime TB5 dock (DROM 01ea:83b5). */
+ { 0x8087, PCI_DEVICE_ID_INTEL_BARLOW_RIDGE_HUB_80G_BRIDGE, 0x01ea, 0x83b5,
+ quirk_clx_disable },
};