Patch "thunderbolt: Reset only non-USB4 host routers in resume" has been added to the 6.6-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    thunderbolt: Reset only non-USB4 host routers in resume

to the 6.6-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-reset-only-non-usb4-host-routers-in-resume.patch
and it can be found in the queue-6.6 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.


>From 8cf9926c537ce8b0c7783afebe752e084765d553 Mon Sep 17 00:00:00 2001
From: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
Date: Wed, 31 Jan 2024 11:12:59 +0200
Subject: thunderbolt: Reset only non-USB4 host routers in resume

From: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>

commit 8cf9926c537ce8b0c7783afebe752e084765d553 upstream.

There is no need to reset the USB4 host routers on resume because they
are reset already and this may cause problems if the link does not come
up soon enough. For this reason limit this to happen in non-USB4 host
routers only (that's Apple systems with Intel Thunderbolt controllers).

Fixes: 59a54c5f3dbd ("thunderbolt: Reset topology created by the boot firmware")
Cc: Sanath S <Sanath.S@xxxxxxx>
Reviewed-by: Mario Limonciello <mario.limonciello@xxxxxxx>
Signed-off-by: Mika Westerberg <mika.westerberg@xxxxxxxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
---
 drivers/thunderbolt/tb.c |    8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

--- a/drivers/thunderbolt/tb.c
+++ b/drivers/thunderbolt/tb.c
@@ -2259,8 +2259,12 @@ static int tb_resume_noirq(struct tb *tb
 
 	tb_dbg(tb, "resuming...\n");
 
-	/* remove any pci devices the firmware might have setup */
-	tb_switch_reset(tb->root_switch);
+	/*
+	 * For non-USB4 hosts (Apple systems) remove any PCIe devices
+	 * the firmware might have setup.
+	 */
+	if (!tb_switch_is_usb4(tb->root_switch))
+		tb_switch_reset(tb->root_switch);
 
 	tb_switch_resume(tb->root_switch, false);
 	tb_free_invalid_tunnels(tb);


Patches currently in stable-queue which might be from mika.westerberg@xxxxxxxxxxxxxxx are

queue-6.6/thunderbolt-avoid-notify-pm-core-about-runtime-pm-resume.patch
queue-6.6/thunderbolt-reset-topology-created-by-the-boot-firmware.patch
queue-6.6/thunderbolt-fix-wake-configurations-after-device-unplug.patch
queue-6.6/thunderbolt-introduce-tb_port_reset.patch
queue-6.6/thunderbolt-introduce-tb_path_deactivate_hop.patch
queue-6.6/thunderbolt-reset-only-non-usb4-host-routers-in-resume.patch
queue-6.6/thunderbolt-make-tb_switch_reset-support-thunderbolt-2-3-and-usb4-routers.patch




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux