[SRU][OEM-OSP1-B/E][PATCH 0/6] Fix on dock devices reprobe after resume
You-Sheng Yang
vicamo.yang at canonical.com
Mon Jan 13 09:40:28 UTC 2020
BugLink: https://bugs.launchpad.net/bugs/1859407
[Impact]
If user un-plugs and then re-plugs the thunderbolt 3 cable of Dell
WD19TB into the laptop during suspend state, peripheral devices on the
docking station cannot be re-probed after the system resumes.
[Fix]
Upstream commit 56b991849009f ("PM: sleep: Simplify suspend-to-idle control
flow") along with its dependencies are required to fix this issue:
* 56b991849009f PM: sleep: Simplify suspend-to-idle control flow
* 41275eb5c7181 ACPI: PM: Set s2idle_wakeup earlier and clear it later
* 9089f16e053af ACPI: EC: Return bool from acpi_ec_dispatch_gpe()
* 6921de898ba8f ACPICA: Return u32 from acpi_dispatch_gpe()
* 3a79bc63d9075 PCI: irq: Introduce rearm_wake_irq()
And 56b991849009f takes an additional fix as we've done for bug 1858424:
* 016b87ca5c8c6 ACPI: EC: Rework flushing of pending work
[Test Case]
1. Please make sure that the WD19 (TBT 3 cable) connects to the laptop
2. Suspend the system
3. Un-plug the TBT 3 cable of WD19 docking station from laptop
4. Re-plug the TBT 3 cable of WD19 docking station into the laptop
5. Press the Enter key or power button to wake up the system
6. Connect an Ethernet cable to a Ethernet port of WD19 docking station
7. Check if the Ethernet interface is available and networking connection is up.
[Regression Potential]
Medium. The first four patches should not affect original functionalities. The
last two mostly simplify the process and resolve a regression.
Rafael J. Wysocki (6):
PCI: irq: Introduce rearm_wake_irq()
ACPICA: Return u32 from acpi_dispatch_gpe()
ACPI: EC: Return bool from acpi_ec_dispatch_gpe()
ACPI: PM: Set s2idle_wakeup earlier and clear it later
PM: sleep: Simplify suspend-to-idle control flow
ACPI: EC: Rework flushing of pending work
drivers/acpi/acpica/evxfgpe.c | 6 ++--
drivers/acpi/ec.c | 47 ++++++++++++++-----------------
drivers/acpi/internal.h | 2 +-
drivers/acpi/sleep.c | 53 +++++++++++++++++++----------------
drivers/base/power/main.c | 5 ----
include/acpi/acpixf.h | 8 +++++-
include/linux/interrupt.h | 1 +
include/linux/suspend.h | 1 -
kernel/irq/pm.c | 20 +++++++++++++
kernel/power/suspend.c | 53 +++++++++++++++--------------------
10 files changed, 105 insertions(+), 91 deletions(-)
--
2.24.0
More information about the kernel-team
mailing list