summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPooja Katiyar <pooja.katiyar@intel.com>2026-05-08 00:46:30 +0300
committerMika Westerberg <mika.westerberg@linux.intel.com>2026-05-20 12:54:34 +0300
commit95c4379e37a0abea72dfd389cfe2c54452523690 (patch)
treef7666d02d6521050820037f4972326fc9bab2030
parentafe9021d63b46233f5c87d52b820fa26e7f562cd (diff)
downloadlinux-95c4379e37a0abea72dfd389cfe2c54452523690.tar.xz
thunderbolt: Don't access path config space on Lane 1 adapters in tb_switch_reset_host()
USB4 Lane 1 adapters do not have accessible path config space. Skip the path config space cleanup in tb_switch_reset_host() for these ports. The check is for USB4 switches only. Thunderbolt 1-3 Lane 1 adapters stay as is because we do need to program their path config space. Co-developed-by: Rene Sapiens <rene.sapiens@linux.intel.com> Signed-off-by: Rene Sapiens <rene.sapiens@linux.intel.com> Signed-off-by: Pooja Katiyar <pooja.katiyar@intel.com> Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
-rw-r--r--drivers/thunderbolt/switch.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/thunderbolt/switch.c b/drivers/thunderbolt/switch.c
index bfcab98faf4b..ad0ec8f8ee28 100644
--- a/drivers/thunderbolt/switch.c
+++ b/drivers/thunderbolt/switch.c
@@ -1620,6 +1620,12 @@ static int tb_switch_reset_host(struct tb_switch *sw)
ret = tb_port_reset(port);
if (ret)
return ret;
+ /*
+ * USB4 Lane 1 adapters do not have accessible
+ * path config space.
+ */
+ if (tb_switch_is_usb4(sw) && !port->usb4)
+ continue;
} else if (tb_port_is_usb3_down(port) ||
tb_port_is_usb3_up(port)) {
tb_usb3_port_enable(port, false);