thunderbolt: Make tb_next_port_on_path() work with tree topologies
authorMika Westerberg <mika.westerberg@linux.intel.com>
Wed, 29 Apr 2020 14:00:30 +0000 (17:00 +0300)
committerMika Westerberg <mika.westerberg@linux.intel.com>
Mon, 22 Jun 2020 16:58:19 +0000 (19:58 +0300)
commit69eb79f7d294f92696de8010432758dbd3d1ecb3
treeebb5a81cd161788daf4574b961bb6d38f1a2efb5
parent783735f84fea6aad9b1e5931d6ea632796feaae3
thunderbolt: Make tb_next_port_on_path() work with tree topologies

USB4 makes it possible to have tree topology of devices connected in the
same way than USB3. This was actually possible in Thunderbolt 1, 2 and 3
as well but all the available devices only had two ports which allows
building only daisy-chains of devices.

With USB4 it is possible for example that there is DP IN adapter as part
of eGPU device router and that should be tunneled over the tree topology
to a DP OUT adapter. This updates the tb_next_port_on_path() to support
such topologies.

Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
drivers/thunderbolt/switch.c