[PATCH v2 0/4] ACPI: Serialize battery, INT3403 _TMP and ideapad methods
From: Ali Ahmet Memiş
Date: Sat Oct 17 2026 - 09:07:23 EST
On ThinkPad P1 Gen2 and P53, INT3403 _TMP switches the EC page selector
without taking the mutex the battery methods use. On some Lenovo
IdeaPad and Yoga models, the battery _BIX and the ideapad GBMD take the
EC mutex and a serialized method in opposite order and deadlock until
an AML mutex times out.
As discussed in [1], add exclusive variants of the AML evaluation
helpers and use them for the battery, INT3403 _TMP and ideapad methods.
Patches 2-4 depend on patch 1.
Changes in v2:
- Merge the follow-up series [2] and drop its EC query and UCSI patches
until they are shown to help
- Add acpi_execute_simple_method_exclusive() for _BTP and ideapad
- Make the helpers wrappers that take the lock around the existing ones
- Join lines up to 100 columns, add a Link: for Suggested-by:
Link: https://lore.kernel.org/all/CAJZ5v0gS4agVUkCO6M=VW4Wi2y1-s+k23bpzmX9aAZ0Rsv4z9Q@xxxxxxxxxxxxxx/ [1]
Link: https://lore.kernel.org/all/20261014190544.150093-1-aliamemis@xxxxxxxxxxx/ [2]
Link: https://bugzilla.kernel.org/show_bug.cgi?id=221065
v1: https://lore.kernel.org/all/20261014132703.93355-1-aliamemis@xxxxxxxxxxx/
Ali Ahmet Memiş (4):
ACPI: utils: Add exclusive AML evaluation helpers
ACPI: battery: Evaluate battery methods exclusively
thermal: intel: int340x: Evaluate _TMP exclusively
platform/x86: ideapad-laptop: Evaluate ACPI methods exclusively
drivers/acpi/battery.c | 12 +++---
drivers/acpi/utils.c | 41 +++++++++++++++++++
drivers/platform/x86/lenovo/ideapad-laptop.c | 12 ++++--
.../int340x_thermal/int340x_thermal_zone.c | 6 ++-
include/acpi/acpi_bus.h | 7 ++++
5 files changed, 66 insertions(+), 12 deletions(-)
base-commit: 24a19b953e2a3d0ea5a8c4951a0ab8f32720c907
--
2.55.0