Bug 216464 - On TGL-H, unplugging TBT dock wakes the system up from s2idle
Summary: On TGL-H, unplugging TBT dock wakes the system up from s2idle
Status: NEW
Alias: None
Product: ACPI
Classification: Unclassified
Component: Power-Sleep-Wake (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: acpi_power-sleep-wake
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-09-08 15:05 UTC by Kai-Heng Feng
Modified: 2022-09-26 06:26 UTC (History)
3 users (show)

See Also:
Kernel Version: mainline, linux-next
Subsystem:
Regression: No
Bisected commit-id:


Attachments
dmesg (318.11 KB, text/plain)
2022-09-08 15:05 UTC, Kai-Heng Feng
Details
lspci -vvnn (65.28 KB, text/plain)
2022-09-08 15:05 UTC, Kai-Heng Feng
Details

Description Kai-Heng Feng 2022-09-08 15:05:16 UTC
Created attachment 301775 [details]
dmesg

The GPE of TBT's power resource gets toggled:
[  186.866656] PM: suspend-to-idle
[  186.866772] ACPI: EC: ACPI EC GPE status set
[  186.866802] ACPI: PM: Rearming ACPI SCI for wakeup
[  192.934925] Timekeeping suspended for 5.659 seconds
[  192.935494] ACPI: PM: ACPI non-EC GPE wakeup
[  192.935513] PM: resume from suspend-to-idle
Comment 1 Kai-Heng Feng 2022-09-08 15:05:32 UTC
Created attachment 301776 [details]
lspci -vvnn
Comment 2 Kai-Heng Feng 2022-09-08 15:08:13 UTC
Preferably Linux should have a "wakeup reason" so the kernel can decide to go back to sleep again, but it may not be feasible with current suspend flow, so maybe a firmware tweak at TBT host is more plausible.
Comment 3 Neo Wong 2022-09-22 08:37:59 UTC
Hi, Will you let us know the behavior you saw in :

1. ADL vs TGL
2. Linux vs Windows 

With same device and OS configuration.
Comment 4 Neo Wong 2022-09-23 06:49:37 UTC
The wakeup in TGL-H when unplugging a device in s2idle (or Modern Standby in Windows terms) is a platform feature. So this is not a bug.
Comment 5 Max Lee 2022-09-23 07:09:35 UTC
In the ADL-P. the system doesn't wake up after unplug TBT devices.
but the TGL-U/H, we can see the wake up. 
Do you have such document can share the feature details for reference?

and Windows is wakeup by power source changed.
but in Linux, it's not an AC power wake and wake by TBT.

The GPE of TBT's power resource gets toggled:
[  186.866656] PM: suspend-to-idle
[  186.866772] ACPI: EC: ACPI EC GPE status set
[  186.866802] ACPI: PM: Rearming ACPI SCI for wakeup
[  192.934925] Timekeeping suspended for 5.659 seconds
[  192.935494] ACPI: PM: ACPI non-EC GPE wakeup
[  192.935513] PM: resume from suspend-to-idle
Comment 6 Neo Wong 2022-09-23 07:16:36 UTC
It could be due to SW_CM (ADL) vs FM_CM (TGL) result the different configurations.

> but in Linux, it's not an AC power wake and wake by TBT.
Yes, it's control by TBT FW.
Comment 7 Max Lee 2022-09-23 07:31:39 UTC
That's make sense, will you debug the TBT CM FW to fix the issue?
Comment 8 Neo Wong 2022-09-26 06:17:44 UTC
As it's a platform feature, there is no plan to fix or change the behavior.
Comment 9 Max Lee 2022-09-26 06:26:36 UTC
Do you have any TA or documents can share about the behavior?

Note You need to log in before you can comment on or make changes to this bug.