linux-stable/drivers/thunderbolt
Gil Fine cd0c1e582b thunderbolt: Add missing UNSET_INBOUND_SBTX for retimer access
According to USB4 retimer specification, the process of firmware update
sequence requires issuing a SET_INBOUND_SBTX port operation that later
shall be followed by UNSET_INBOUND_SBTX port operation. This last step
is not currently issued by the driver but it is necessary to make sure
the retimers are put back to passthrough mode even during enumeration.

If this step is missing the link may not come up properly after
soft-reboot for example.

For this reason issue UNSET_INBOUND_SBTX after SET_INBOUND_SBTX for
enumeration and also when the NVM upgrade is run.

Reported-by: Christian Schaubschläger <christian.schaubschlaeger@gmx.at>
Link: https://lore.kernel.org/linux-usb/b556f5ed-5ee8-9990-9910-afd60db93310@gmx.at/
Cc: stable@vger.kernel.org
Signed-off-by: Gil Fine <gil.fine@linux.intel.com>
Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
2023-03-13 11:54:20 +02:00
..
acpi.c thunderbolt: Refactor tb_acpi_add_link() 2023-01-04 09:44:22 +02:00
cap.c thunderbolt: cap: Fix kernel-doc formatting issue 2021-01-28 12:33:18 +03:00
ctl.c thunderbolt: Add support for DisplayPort bandwidth allocation mode 2023-01-17 11:37:16 +02:00
ctl.h thunderbolt: Add support for DisplayPort bandwidth allocation mode 2023-01-17 11:37:16 +02:00
debugfs.c thunderbolt: Fix memory leak in margining 2023-03-13 11:54:14 +02:00
dma_port.c thunderbolt: Use generic tb_nvm_[read|write]_data() for Thunderbolt 2/3 devices 2021-05-31 14:37:54 +03:00
dma_port.h thunderbolt: Convert rest of the driver files to use SPDX identifier 2018-10-02 15:52:08 -07:00
dma_test.c thunderbolt: Allow multiple DMA tunnels over a single XDomain connection 2021-03-18 18:25:31 +03:00
domain.c thunderbolt: Convert to use sysfs_emit()/sysfs_emit_at() APIs 2022-09-24 09:22:01 +03:00
eeprom.c thunderbolt: Rename EEPROM handling bits to match USB4 spec 2022-03-04 17:10:36 +03:00
icm.c thunderbolt: Changes for v6.1 merge window 2022-09-30 13:44:59 +02:00
Kconfig thunderbolt: Changes for v6.1 merge window 2022-09-30 13:44:59 +02:00
lc.c thunderbolt: Add internal xHCI connect flows for Thunderbolt 3 devices 2022-02-02 13:56:51 +03:00
Makefile thunderbolt: build kunit tests without structleak plugin 2021-10-06 17:53:49 -06:00
nhi_ops.c thunderbolt: Software CM only should set force power in Tiger Lake 2020-09-03 12:06:40 +03:00
nhi_regs.h thunderbolt: Add support for Intel Ice Lake 2019-08-26 12:15:06 +03:00
nhi.c USB/Thunderbolt changes for 6.1-rc1 2022-10-07 16:48:26 -07:00
nhi.h thunderbolt: Changes for v6.1 merge window 2022-09-30 13:44:59 +02:00
nvm.c thunderbolt: Add support for ASMedia NVM image format 2022-09-07 09:06:51 +03:00
path.c thunderbolt: Dump path config space entries during discovery 2022-04-19 10:26:13 +03:00
property.c thunderbolt: Add tb_property_copy_dir() 2021-03-18 18:25:31 +03:00
quirks.c thunderbolt: Add quirk to disable CLx 2023-03-06 11:54:44 +02:00
retimer.c thunderbolt: Add missing UNSET_INBOUND_SBTX for retimer access 2023-03-13 11:54:20 +02:00
sb_regs.h thunderbolt: Add missing UNSET_INBOUND_SBTX for retimer access 2023-03-13 11:54:20 +02:00
switch.c Driver core changes for 6.3-rc1 2023-02-24 12:58:55 -08:00
tb_msgs.h thunderbolt: Add support for DisplayPort bandwidth allocation mode 2023-01-17 11:37:16 +02:00
tb_regs.h thunderbolt: Add functions to support DisplayPort bandwidth allocation mode 2023-01-17 11:37:05 +02:00
tb.c thunderbolt: Changes for v6.3 merge window 2023-02-08 12:49:26 +01:00
tb.h thunderbolt: Add missing UNSET_INBOUND_SBTX for retimer access 2023-03-13 11:54:20 +02:00
test.c thunderbolt: test: Use kunit_test_suite() macro 2022-07-11 17:13:21 -06:00
tmu.c thunderbolt: Change TMU mode to HiFi uni-directional once DisplayPort tunneled 2022-06-06 12:24:56 +03:00
tunnel.c thunderbolt: Changes for v6.3 merge window 2023-02-08 12:49:26 +01:00
tunnel.h thunderbolt: Add missing kernel-doc comment to tb_tunnel_maximum_bandwidth() 2023-01-27 08:25:59 +02:00
usb4_port.c thunderbolt: Add wake on connect/disconnect on USB4 ports 2022-11-07 14:36:47 +02:00
usb4.c thunderbolt: Add missing UNSET_INBOUND_SBTX for retimer access 2023-03-13 11:54:20 +02:00
xdomain.c driver core: make struct device_type.uevent() take a const * 2023-01-27 13:45:36 +01:00