Bug 199125 - Suspending to mem hangs the machine without the BT driver loaded
Summary: Suspending to mem hangs the machine without the BT driver loaded
Status: NEW
Alias: None
Product: Drivers
Classification: Unclassified
Component: Bluetooth (show other bugs)
Hardware: x86-64 Linux
: P1 normal
Assignee: linux-bluetooth@vger.kernel.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-03-15 09:29 UTC by Imre Deak
Modified: 2018-03-15 09:29 UTC (History)
0 users

See Also:
Kernel Version: 4.16.0-rc5
Subsystem:
Regression: No
Bisected commit-id:


Attachments

Description Imre Deak 2018-03-15 09:29:32 UTC
On an Intel GLK NUC machine suspending to memory (S3) hangs if the BT driver is not enabled. Specifically the following kconfig options need to be enabled to avoid the hang:

CONFIG_BT
CONFIG_BT_INTEL
CONFIG_BT_HCIBTUSB

An alternative is to disable the Bluetooth onboard device in BIOS.

The hang happens after execution transfers to BIOS code during suspend, after the very last ACPI register write to entry S3 in
drivers/acpi/acpica/hwsleep.c:

after the following call in acpi_hw_legacy_sleep():
/* Write #2: Write both SLP_TYP + SLP_EN */                                                                                                               
        status = acpi_hw_write_pm1_control(pm1a_control, pm1b_control); 

In general not loading the BT driver may be a useful thing to work-around potential BT driver bugs, or during isolation of a bug without a known reason (by unloading drivers one-by-one and seeing if the problem re-occurs).

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