summary refs log tree commit diff
path: root/drivers/thunderbolt
diff options
context:
space:
mode:
authorMario Limonciello <mario.limonciello@amd.com>2022-09-21 09:54:32 -0500
committerMika Westerberg <mika.westerberg@linux.intel.com>2022-09-22 14:32:16 +0300
commit31f87f705b3c1635345d8e8a493697099b43e508 (patch)
tree41b6ac9f4294fba41435ac2694980393265eb58b /drivers/thunderbolt
parent521a547ced6477c54b4b0cc206000406c221b4d6 (diff)
downloadlinux-31f87f705b3c1635345d8e8a493697099b43e508.tar.gz
thunderbolt: Explicitly reset plug events delay back to USB4 spec value
If any software has interacted with the USB4 registers before the Linux
USB4 CM runs, it may have modified the plug events delay. It has been
observed that if this value too large, it's possible that hotplugged
devices will negotiate a fallback mode instead in Linux.

To prevent this, explicitly align the plug events delay with the USB4
spec value of 10ms.

Cc: stable@vger.kernel.org
Signed-off-by: Mario Limonciello <mario.limonciello@amd.com>
Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Diffstat (limited to 'drivers/thunderbolt')
-rw-r--r--drivers/thunderbolt/switch.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/thunderbolt/switch.c b/drivers/thunderbolt/switch.c
index c63c1f4ff9dc..77d7f07ca075 100644
--- a/drivers/thunderbolt/switch.c
+++ b/drivers/thunderbolt/switch.c
@@ -2413,6 +2413,7 @@ int tb_switch_configure(struct tb_switch *sw)
 		 * additional capabilities.
 		 */
 		sw->config.cmuv = USB4_VERSION_1_0;
+		sw->config.plug_events_delay = 0xa;
 
 		/* Enumerate the switch */
 		ret = tb_sw_write(sw, (u32 *)&sw->config + 1, TB_CFG_SWITCH,