WSL2-Linux-Kernel/drivers/thunderbolt
Mika Westerberg 04a8e39c8c thunderbolt: Use different lane for second DisplayPort tunnel
[ Upstream commit 9d2d0a5cf0 ]

Brad reported that on Apple hardware with Light Ridge or Falcon Ridge
controller, plugging in a chain of Thunderbolt displays (Light Ridge
based controllers) causes all kinds of tearing and flickering. The
reason for this is that on Thunderbolt 1 hardware there is no lane
bonding so we have two independent 10 Gb/s lanes, and currently Linux
tunnels both displays through the lane 1. This makes the displays to
share the 10 Gb/s bandwidth which may not be enough for higher
resolutions.

For this reason make the second tunnel go through the lane 0 instead.
This seems to match what the macOS connection manager is also doing.

Reported-by: Brad Campbell <lists2009@fnarfbargle.com>
Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Tested-by: Brad Campbell <lists2009@fnarfbargle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-06-14 18:36:20 +02:00
..
Kconfig thunderbolt: Add DMA traffic test driver 2020-11-11 10:20:16 +03:00
Makefile thunderbolt: build kunit tests without structleak plugin 2021-10-06 17:53:49 -06:00
acpi.c thunderbolt: Runtime PM activate both ends of the device link 2022-01-27 11:04:36 +01:00
cap.c thunderbolt: cap: Fix kernel-doc formatting issue 2021-01-28 12:33:18 +03:00
ctl.c thunderbolt: Decrease control channel timeout for software connection manager 2021-03-18 18:25:30 +03:00
ctl.h thunderbolt: Decrease control channel timeout for software connection manager 2021-03-18 18:25:30 +03:00
debugfs.c thunderbolt: debugfs: Show all accessible dwords 2021-03-12 13:13:34 +03: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 bus: Make remove callback return void 2021-07-21 11:53:42 +02:00
eeprom.c thunderbolt: Fix DROM handling for USB4 DROM 2021-06-15 13:51:07 +03:00
icm.c thunderbolt: Add support for Intel Alder Lake 2021-06-11 11:42:54 +03:00
lc.c thunderbolt: Add wake from DisplayPort 2021-05-31 14:39:52 +03:00
nhi.c thunderbolt: Handle ring interrupt by reading interrupt status register 2021-08-09 14:58:29 +03:00
nhi.h thunderbolt: Add support for Intel Alder Lake 2021-06-11 11:42:54 +03: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
nvm.c thunderbolt: Split NVM read/write generic functions out from usb4.c 2021-05-31 14:37:48 +03:00
path.c thunderbolt: Move nfc_credits field to struct tb_path_hop 2021-06-01 10:48:59 +03:00
property.c thunderbolt: Add tb_property_copy_dir() 2021-03-18 18:25:31 +03:00
quirks.c thunderbolt: Add quirk for Intel Goshen Ridge DP credits 2021-06-01 10:48:59 +03:00
retimer.c thunderbolt: Check for NVM authentication status after the operation started 2021-06-01 10:53:32 +03:00
sb_regs.h thunderbolt: Add additional USB4 port operations for retimer access 2021-06-01 10:53:31 +03:00
switch.c thunderbolt: Changes for v5.15 merge window 2021-08-24 15:31:33 +02:00
tb.c thunderbolt: Use different lane for second DisplayPort tunnel 2022-06-14 18:36:20 +02:00
tb.h thunderbolt: Add WRITE_ONLY and AUTHENTICATE_ONLY NVM operations for retimers 2021-06-01 10:53:32 +03:00
tb_msgs.h thunderbolt: Add USB4 router operation proxy for firmware connection manager 2020-11-30 14:39:24 +03:00
tb_regs.h thunderbolt: Read router preferred credit allocation information 2021-06-01 10:48:59 +03:00
test.c thunderbolt: Use different lane for second DisplayPort tunnel 2022-06-14 18:36:20 +02:00
tmu.c thunderbolt: Add support for Time Management Unit 2019-12-18 15:41:15 +01:00
tunnel.c thunderbolt: Use different lane for second DisplayPort tunnel 2022-06-14 18:36:20 +02:00
tunnel.h thunderbolt: Use different lane for second DisplayPort tunnel 2022-06-14 18:36:20 +02:00
usb4.c thunderbolt: Add WRITE_ONLY and AUTHENTICATE_ONLY NVM operations for retimers 2021-06-01 10:53:32 +03:00
usb4_port.c thunderbolt: No need to include <linux/acpi.h> in usb4_port.c 2021-06-11 11:42:54 +03:00
xdomain.c thunderbolt: Update port credits after bonding is enabled/disabled 2021-06-01 10:48:59 +03:00