https://bugzilla.kernel.org/show_bug.cgi?id=221217

--- Comment #1 from [email protected] ---
**Resolution: s2idle now working on Lenovo IdeaPad Slim 3 15ABR8 (82XM)**

After further investigation, two separate issues were blocking s2idle on this
system. Both are resolved with the fixes below.

**Issue 1: ACPI namespace mismatch (SNTM)**

The BIOS calls `\_SB.PC00.LPCB.EC0.SNTM` (Intel-style path) but the actual ACPI
namespace uses `\_SB.PCI0.LPC0.EC0.SNTM` (AMD-style path). This causes
`AE_NOT_FOUND` during suspend entry, aborting the `\_SB.PEP._DSM` method.

Fix: inject a minimal SSDT that creates the missing path as a stub delegating
to the real method. Compiled with iasl and injected via a cpio archive
prepended to initrd:

```
mkdir -p kernel/firmware/acpi
cp sntm_fix.aml kernel/firmware/acpi/
find kernel | cpio -H newc --create > /boot/acpi_override.cpio
```

With `GRUB_EARLY_INITRD_LINUX_CUSTOM="acpi_override.cpio"` in
`/etc/default/grub`.

**Issue 2: Unserviced GPIO interrupt from I2C touchpad and touchscreen**

After resolving Issue 1, s2idle still failed immediately with IRQ 7
(pinctrl_amd) as the wakeup source. Diagnosed using `amd-debug-tools`
(`amd-s2idle test`), which identified that GPIO interrupts were not being
serviced.

Root cause: `AMDI0010:01` (I2CB bus, carrying the ELAN06FA touchpad) has a
confirmed DSDT firmware bug — bus speed declared as 400kHz but forced to 100kHz
by the kernel. This prevents the touchpad GPIO interrupt from being properly
serviced during suspend, causing immediate wakeup.

Fix: disable wakeup for both I2C HID devices permanently via udev:

`/etc/udev/rules.d/99-sleep-fix.rules`:
```
ACTION=="add", SUBSYSTEM=="i2c", KERNEL=="i2c-ELAN06FA:00",
ATTR{power/wakeup}="disabled"
ACTION=="add", SUBSYSTEM=="i2c", KERNEL=="i2c-GTCH7503:00",
ATTR{power/wakeup}="disabled"
```

With both fixes applied, s2idle works correctly. The system enters sleep and
wakes cleanly on keyboard/power button press. Verified on kernel
6.17.0-19-generic, Ubuntu 25.10, BIOS KYCN40WW v1.40.

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are watching the assignee of the bug.

_______________________________________________
acpi-bugzilla mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/acpi-bugzilla

Reply via email to