This is a note to let you know that I've just added the patch titled thunderbolt: Do not create DisplayPort tunnels on adapters of the same router to the 6.8-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: thunderbolt-do-not-create-displayport-tunnels-on-adapters-of-the-same-router.patch and it can be found in the queue-6.8 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. >From c032cdd48b29549e8283c2fea99e7d91ddefebf7 Mon Sep 17 00:00:00 2001 From: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx> Date: Tue, 26 Mar 2024 10:58:15 +0200 Subject: thunderbolt: Do not create DisplayPort tunnels on adapters of the same router From: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx> commit c032cdd48b29549e8283c2fea99e7d91ddefebf7 upstream. Probably due to a firmware bug Dell TB16 dock announces that one of its DisplayPort adapters is actually DP IN. Now this is possible and used with some external GPUs but not likely in this case as we are dealing with a dock. Anyways the problem is that the driver tries to create a DisplayPort tunnel between adapters of the same router which then shows to user that there is no picture on the display (because there are no available DP OUT adapters on the dock anymore). Fix this by not creating DisplayPort tunnels between adapters that are on the same router. Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/10265 Fixes: 274baf695b08 ("thunderbolt: Add DP IN added last in the head of the list of DP resources") Cc: Gil Fine <gil.fine@xxxxxxxxxxxxxxx> Cc: stable@xxxxxxxxxxxxxxx Signed-off-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- drivers/thunderbolt/tb.c | 6 ++++++ 1 file changed, 6 insertions(+) --- a/drivers/thunderbolt/tb.c +++ b/drivers/thunderbolt/tb.c @@ -1717,6 +1717,12 @@ static struct tb_port *tb_find_dp_out(st continue; } + /* Needs to be on different routers */ + if (in->sw == port->sw) { + tb_port_dbg(port, "skipping DP OUT on same router\n"); + continue; + } + tb_port_dbg(port, "DP OUT available\n"); /* Patches currently in stable-queue which might be from mika.westerberg@xxxxxxxxxxxxxxx are queue-6.8/thunderbolt-avoid-notify-pm-core-about-runtime-pm-resume.patch queue-6.8/thunderbolt-do-not-create-displayport-tunnels-on-adapters-of-the-same-router.patch queue-6.8/thunderbolt-fix-wake-configurations-after-device-unplug.patch