Updated the description to remove placeholder test.
** Description changed:
+ # Lenovo Legion 5 Pro (AMD + NVIDIA) wakes immediately from S3 suspend,
+ wake IRQ 7 (`pinctrl_amd`), Ubuntu 25.10 kernel 6.17.0-8-generic
+
On a Lenovo Legion 5 Pro (AMD + NVIDIA hybrid graphics) running Ubuntu
- 25.10 (questing) with kernel `6.17.0-8-generic`, suspend to RAM in
- “deep” (S3) enters S3 but resumes immediately with no user input.
- [conversation_history:1]
+ 25.10 with kernel `6.17.0-8-generic`, suspend to RAM in “deep” (S3)
+ enters S3 but resumes immediately with no user input.
- ---
+ ## System
- ### System
+ - **Distro:** Ubuntu 25.10
+ - **Kernel:** `6.17.0-8-generic`
+ - **Machine:** Lenovo Legion 5 Pro 16ADR10
+ - **CPU:** AMD Ryzen 7 8745HX with Radeon Graphics
+ - **GPU:** NVIDIA GeForce RTX 5060
+ - **BIOS/EC:** `RLCN31WW`
+ - **Secure Boot:** DISABLED
- - **Distro:** Ubuntu 25.10 (questing)
- - **Kernel:** `6.17.0-8-generic`
- - **Machine:** Lenovo Legion 5 Pro (exact model from `dmidecode`)
- - **CPU:** AMD Ryzen `<model>`
- - **GPU:** AMD iGPU + NVIDIA dGPU
- - **BIOS/EC:** `RLCN31WW` (from `dmidecode` / BIOS setup)
- - **Secure Boot:** disabled (`mokutil --sb-state` shows “SecureBoot disabled”)
-
- ---
-
- ### Problem
+ ## Problem
Using `systemctl suspend` with `mem_sleep=deep`:
- The system logs `PM: suspend entry (deep)` and `Preparing to enter system
sleep state S3`.
- CPUs are taken offline and the ACPI EC is stopped as expected.
- - Almost immediately, the kernel logs `ACPI: PM: Low-level resume complete`
and the system resumes, without any user input (no keypress, no lid open, power
button not pressed). [conversation_history:1]
+ - Almost immediately, the kernel logs `ACPI: PM: Low-level resume complete`
and the system resumes, without any user input (no keypress, no lid open, power
button not pressed).
Representative `dmesg` snippet around suspend/resume:
- ```
+ ```log
[ 1170.268659] PM: suspend entry (deep)
[ 1170.802727] ACPI: PM: Preparing to enter system sleep state S3
...
[ 1170.846860] smpboot: CPU 1 is now offline
[ 1170.848398] ACPI: PM: Low-level resume complete
[ 1170.848398] ACPI: EC: EC started
[ 1170.848398] ACPI: PM: Restoring platform NVS memory
...
[ 1170.866674] ACPI: PM: Waking up from system sleep state S3
...
[ 1172.282508] PM: suspend exit
```
So S3 is reached but a wake event fires immediately.
- [conversation_history:1]
- ---
-
- ### Wake source data
+ ## Wake Source Data
After an instant‑wake, `/sys/power/pm_wakeup_irq` consistently contains:
+ `7` and `/proc/interrupts` shows:
- ```
- 7
+ ```shell
+ $ grep "^ *7:" /proc/interrupts
+ 7: <counts> 0 ... IR-IO-APIC 7-fasteoi pinctrl_amd
```
- and `/proc/interrupts` shows:
-
- ```
- grep "^ *7:" /proc/interrupts
- 7: <counts> 0 ... IR-IO-APIC 7-fasteoi pinctrl_amd
- ```
-
- So the wake IRQ is 7, handled by `pinctrl_amd`. [conversation_history:1]
+ So the wake IRQ is 7, handled by `pinctrl_amd`
With `pm_trace` enabled for one suspend, the next boot shows in `dmesg`:
- ```
+ ```log
[ 0.516634] PM: Magic number: 5:610:555
[ 0.516661] clockevents clockevent6: hash matches
[ 0.516691] acpi PNP0C0F:06: hash matches
```
This suggests an ACPI/clockevent/GPIO‑style wake source rather than a
- simple PCI/USB device. [conversation_history:1]
+ simple PCI/USB device.
- ---
-
- ### Wake configuration
+ ## Wake Configuration
Before tuning, the following were wake‑enabled.
**`/proc/acpi/wakeup`:**
- ```
- Device S-state Status Sysfs node
- GPP0 S4 *enabled pci:0000:00:01.1
- GPP1 S3 *enabled pci:0000:00:01.2
- GPP3 S3 *enabled pci:0000:00:02.2
- GPP4 S3 *disabled
- GPP5 S3 *enabled pci:0000:00:03.3
- GP17 S3 *enabled pci:0000:00:08.1
- XHC0 S3 *enabled pci:0000:05:00.3
- XHC1 S3 *enabled pci:0000:05:00.4
- XHC2 S3 *enabled pci:0000:06:00.0
+ ```shell
+ Device S-state Status Sysfs node
+ GPP0 S4 *enabled pci:0000:00:01.1
+ GPP1 S3 *enabled pci:0000:00:01.2
+ GPP3 S3 *enabled pci:0000:00:02.2
+ GPP4 S3 *disabled
+ GPP5 S3 *enabled pci:0000:00:03.3
+ GP17 S3 *enabled pci:0000:00:08.1
+ XHC0 S3 *enabled pci:0000:05:00.3
+ XHC1 S3 *enabled pci:0000:05:00.4
+ XHC2 S3 *enabled pci:0000:06:00.0
```
**Sysfs wake flags:**
- ```
- grep enabled /sys/devices/**/power/wakeup
+ ```shell
+ $ grep enabled /sys/devices/**/power/wakeup
/sys/devices/LNXSYSTM:00/LNXPWRBN:00/power/wakeup:enabled
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:2d/PNP0C09:00/PNP0C0A:00/power/wakeup:enabled
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0C:00/power/wakeup:enabled
/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0D:00/power/wakeup:enabled
/sys/devices/pci0000:00/0000:00:01.1/power/wakeup:enabled
/sys/devices/pci0000:00/0000:00:01.2/power/wakeup:enabled
/sys/devices/pci0000:00/0000:00:02.2/power/wakeup:enabled
/sys/devices/pci0000:00/0000:00:03.3/power/wakeup:enabled
/sys/devices/pci0000:00/0000:00:08.1/0000:05:00.3/power/wakeup:enabled
/sys/devices/pci0000:00/0000:00:08.1/0000:05:00.4/power/wakeup:enabled
/sys/devices/pci0000:00/0000:00:08.1/0000:05:00.4/usb3/3-2/3-2.4/power/wakeup:enabled
/sys/devices/pci0000:00/0000:00:08.1/power/wakeup:enabled
/sys/devices/pci0000:00/0000:00:08.3/0000:06:00.0/power/wakeup:enabled
/sys/devices/platform/ACPI0003:00/power_supply/ADP0/power/wakeup:enabled
/sys/devices/platform/USBC000:00/power_supply/ucsi-source-psy-USBC000:001/power/wakeup:enabled
/sys/devices/platform/USBC000:00/power_supply/ucsi-source-psy-USBC000:002/power/wakeup:enabled
/sys/devices/platform/USBC000:00/power_supply/ucsi-source-psy-USBC000:003/power/wakeup:enabled
/sys/devices/pnp0/00:01/power/wakeup:enabled
/sys/devices/pnp0/00:01/rtc/rtc0/alarmtimer.0.auto/power/wakeup:enabled
```
- [conversation_history:1]
+ ## What Has Been Tried
- ---
+ 1. ACPI wake toggles
- ### What has been tried
-
- 1. **ACPI wake toggles**
-
- Disabled the following entries in `/proc/acpi/wakeup` (toggled from
+ Disabled the following entries in `/proc/acpi/wakeup` (toggled from
`*enabled` to `*disabled`):
- - `GPP0`, `GPP1`, `GPP3`, `GPP5`, `GP17`
- - `XHC0`, `XHC1`, `XHC2`
+ - `GPP0`, `GPP1`, `GPP3`, `GPP5`, `GP17`
+ - `XHC0`, `XHC1`, `XHC2`
- After each change and various combinations, `systemctl suspend` still
+ After each change and various combinations, `systemctl suspend` still
results in an instant wake, and `pm_wakeup_irq` remains `7`.
- [conversation_history:1]
- 2. **Sysfs `power/wakeup` toggles**
+ 1. Sysfs `power/wakeup` toggles
- Disabled wake on:
+ Disabled wake on:
- - PCIe bridges and devices under `pci0000:00`, including:
- `0000:00:01.1`, `0000:00:01.2`, `0000:00:02.2`, `0000:00:03.3`,
`0000:00:08.1`, `0000:05:00.3`, `0000:05:00.4`, `0000:06:00.0`.
- - USB endpoints:
- `/sys/devices/pci0000:00/0000:00:08.1/0000:05:00.4/usb3/3-2/3-2.2` and
`/3-2.4`.
- - Power‑supply / USB‑C power events:
- `/sys/devices/platform/ACPI0003:00/power_supply/ADP0`,
-
`/sys/devices/platform/USBC000:00/power_supply/ucsi-source-psy-USBC000:00{1,2,3}`.
+ - PCIe bridges and devices under `pci0000:00`, including:
+ `0000:00:01.1`, `0000:00:01.2`, `0000:00:02.2`, `0000:00:03.3`,
`0000:00:08.1`, `0000:05:00.3`, `0000:05:00.4`, `0000:06:00.0`.
+ - USB endpoints:
+ `/sys/devices/pci0000:00/0000:00:08.1/0000:05:00.4/usb3/3-2/3-2.2` and
`/3-2.4`.
+ - Power‑supply / USB‑C power events:
+ `/sys/devices/platform/ACPI0003:00/power_supply/ADP0`,
+
`/sys/devices/platform/USBC000:00/power_supply/ucsi-source-psy-USBC000:00{1,2,3}`.
- With all of these disabled (leaving effectively only the power button
+ With all of these disabled (leaving effectively only the power button
and RTC as wake sources), the machine still wakes immediately from S3
and `pm_wakeup_irq` is still `7` (`pinctrl_amd`).
- [conversation_history:1]
- 3. **I2C-HID devices / AMD Serial IO**
+ 1. I2C-HID devices / AMD Serial IO
- - I2C HID devices found: `ELAN06FA:00` and `IDEA5003:00`, at:
- - `/sys/devices/platform/AMDI0010:00/i2c-0/i2c-ELAN06FA:00`
- - `/sys/devices/platform/AMDI0010:03/i2c-2/i2c-IDEA5003:00`
- - These nodes do **not** expose a `power/wakeup` attribute on this kernel.
Attempts to disable wake via
`/sys/class/wakeup/wakeup{45,46}/device{,/physical_node}/power/wakeup` fail
because the `power/wakeup` file does not exist there (and cannot be created).
- - The Lenovo AMD Serial IO (SIO) driver is a Windows‑only `.exe` and
cannot be used on Linux to alter `pinctrl_amd` behaviour.
[conversation_history:1]
+ - I2C HID devices found: `ELAN06FA:00` and `IDEA5003:00`, at:
+ - `/sys/devices/platform/AMDI0010:00/i2c-0/i2c-ELAN06FA:00`
+ - `/sys/devices/platform/AMDI0010:03/i2c-2/i2c-IDEA5003:00`
+ - These nodes do **not** expose a `power/wakeup` attribute on this kernel.
Attempts to disable wake via
`/sys/class/wakeup/wakeup{45,46}/device{,/physical_node}/power/wakeup` fail
because the `power/wakeup` file does not exist there (and cannot be created).
+ - The Lenovo AMD Serial IO (SIO) driver is a Windows‑only `.exe` and cannot
be used on Linux to alter `pinctrl_amd` behaviour.
- 4. **`amd_pmc` module**
+ 1. `amd_pmc` module
- - Unloading and/or blacklisting `amd_pmc` has no effect on the
+ - Unloading and/or blacklisting `amd_pmc` has no effect on the
behaviour; suspend still instantly resumes with wake IRQ 7.
- [conversation_history:1]
- 5. **Different sleep types (`mem_sleep`)**
+ 1. Different sleep types (`mem_sleep`)
- - `mem_sleep=deep` (S3) exhibits the instant‑wake problem described.
- - `mem_sleep=s2idle` was tested; behaviour is `<fill in: e.g. “works
correctly / different issue / also wakes instantly”>`.
+ - `mem_sleep=deep` (S3) exhibits the instant‑wake problem described.
+ - `mem_sleep=s2idle` was tested; behaviour is `<fill in: e.g. “works
correctly / different issue / also wakes instantly”>`.
- 6. **Secure Boot / lockdown**
+ 1. Secure Boot / lockdown
- - Secure Boot disabled in firmware and via `mokutil --disable-validation`.
- - `/sys/kernel/security/lockdown` reports `[none] integrity
confidentiality`, meaning lockdown mode is `none`.
- - Missing/blocked `power/wakeup` writes are due to absent attributes, not
lockdown restrictions. [conversation_history:1]
+ - Secure Boot disabled in firmware and via `mokutil --disable-validation`.
+ - `/sys/kernel/security/lockdown` reports `[none] integrity confidentiality`,
meaning lockdown mode is `none`.
+ - Missing/blocked `power/wakeup` writes are due to absent attributes, not
lockdown restrictions.
- ---
-
- ### Expected vs actual
+ ## Expected vs Actual
- **Expected:** With wake sources limited (only power button and optionally
lid/RTC), S3 `deep` suspend should keep the system asleep until an explicit
wake event.
- - **Actual:** Even with all obvious wake sources disabled, the system
immediately resumes from S3; wake IRQ is consistently 7 (`pinctrl_amd`), and
there is no user input. [conversation_history:1]
+ - **Actual:** Even with all obvious wake sources disabled, the system
immediately resumes from S3; wake IRQ is consistently 7 (`pinctrl_amd`), and
there is no user input.
- ---
-
- ### Request
+ ## Request
This appears to be an issue in the AMD GPIO / `pinctrl_amd` suspend/wake
handling on this platform (a spurious or unmasked GPIO interrupt causing
- immediate wake from S3). [conversation_history:1]
+ immediate wake from S3).
Please:
- Confirm whether this is a known issue for this Legion 5 Pro / AMD platform
on 6.17.
- Advise on any additional debug flags or patches to test (e.g. `pinctrl_amd`
debug, ACPI/GPIO tracing, experimental patches).
- If appropriate, route this to the relevant AMD/platform maintainers.
I am happy to:
- Test proposed or mainline kernels,
- Try additional boot parameters,
- Capture further logs as requested on this machine.
-
- ProblemType: Bug
- DistroRelease: Ubuntu 25.10
- Package: linux-image-6.17.0-8-generic 6.17.0-8.8
- ProcVersionSignature: Ubuntu 6.17.0-8.8-generic 6.17.2
- Uname: Linux 6.17.0-8-generic x86_64
- ApportVersion: 2.33.1-0ubuntu3
- Architecture: amd64
- AudioDevicesInUse:
- USER PID ACCESS COMMAND
- /dev/snd/controlC1: harnamc 3431 F.... wireplumber
- /dev/snd/controlC0: harnamc 3431 F.... wireplumber
- /dev/snd/seq: harnamc 3412 F.... pipewire
- CasperMD5CheckResult: pass
- CurrentDesktop: ubuntu:GNOME
- Date: Tue Dec 23 00:11:09 2025
- InstallationDate: Installed on 2025-11-17 (35 days ago)
- InstallationMedia: Ubuntu 25.10 "Questing Quokka" - Release amd64 (20251007)
- MachineType: LENOVO 83LT
- ProcFB: 0 amdgpudrmfb
- ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-6.17.0-8-generic
root=UUID=c07f6655-778a-498b-96e9-7b8a0342e573 ro quiet splash
crashkernel=2G-4G:320M,4G-32G:512M,32G-64G:1024M,64G-128G:2048M,128G-:4096M
- RelatedPackageVersions:
- firmware-sof N/A
- linux-firmware 20250901.git993ff19b-0ubuntu1.4
- SourcePackage: linux
- UpgradeStatus: No upgrade log present (probably fresh install)
- dmi.bios.date: 09/24/2025
- dmi.bios.release: 1.31
- dmi.bios.vendor: LENOVO
- dmi.bios.version: RLCN31WW
- dmi.board.asset.tag: NO Asset Tag
- dmi.board.name: LNVNB161216
- dmi.board.vendor: LENOVO
- dmi.board.version: NO DPK
- dmi.chassis.asset.tag: NO Asset Tag
- dmi.chassis.type: 10
- dmi.chassis.vendor: LENOVO
- dmi.chassis.version: Legion Pro 5 16ADR10
- dmi.ec.firmware.release: 1.30
- dmi.modalias:
dmi:bvnLENOVO:bvrRLCN31WW:bd09/24/2025:br1.31:efr1.30:svnLENOVO:pn83LT:pvrLegionPro516ADR10:rvnLENOVO:rnLNVNB161216:rvrNODPK:cvnLENOVO:ct10:cvrLegionPro516ADR10:skuLENOVO_MT_83LT_BU_idea_FM_LegionPro516ADR10:
- dmi.product.family: Legion Pro 5 16ADR10
- dmi.product.name: 83LT
- dmi.product.sku: LENOVO_MT_83LT_BU_idea_FM_Legion Pro 5 16ADR10
- dmi.product.version: Legion Pro 5 16ADR10
- dmi.sys.vendor: LENOVO
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2137024
Title:
Lenovo Legion 5 Pro (AMD + NVIDIA) wakes immediately from S3 suspend,
wake IRQ 7 (`pinctrl_amd`), Ubuntu 25.10 kernel 6.17.0-8-generic
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2137024/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs