[SRU][Hirsute][PULL] Add s2idle support on AMD Renoir and Cezanne
Kai-Heng Feng
kai.heng.feng at canonical.com
Tue May 4 14:58:16 UTC 2021
BugLink: https://bugs.launchpad.net/bugs/1927067
[Impact]
S2idle doesn't work on AMD Renoir and Cezanne.
[Fix]
Backport AMD PMC driver and pull many new patches let AMDGPU support s2idle.
[Test]
Suspend the laptop and the system freezes.
With the patch applied, suspend works but with some caveats:
1) Keyboard sometimes can't wake up the laptop.
2) Touchpad sometimes can wake up the laptop.
3) RTC can't wake up the laptop.
[Where problems could occur]
Most changes are limited to logic of suspend/resume, and specific to Renoir GFX.
However, there are some refactoring patches may cause unintended
results, so AMDGPU may break for sleep/hibernation/runtime suspend on
non-Renoir GFXs.
--
The following changes since commit 5ba37be432361c9b7bfe988212c877c66ba20b18:
ALSA: hda/realtek: Enable mute/micmute LEDs and limit mic boost on
EliteBook 845 G8 (2021-04-23 11:42:33 +0200)
are available in the Git repository at:
https://git.launchpad.net/~kaihengfeng/+git/linux amd-s0ix-5.11
for you to fetch changes up to 0947779e0df7ece3efd41ae8844f31a7fabcb11d:
UBUNTU: SAUCE: platform/x86: force LPS0 functions for AMD
(2021-05-04 20:12:38 +0800)
----------------------------------------------------------------
Alex Deucher (14):
drm/amdgpu: drop extra drm_kms_helper_poll_enable/disable calls
drm/amdgpu: use runpm flag rather than fbcon for kfd runtime suspend (v2)
drm/amdgpu: reset runpm flag if device suspend fails
drm/amdgpu: rework S3/S4/S0ix state handling
drm/amdgpu: don't evict vram on APUs for suspend to ram (v4)
drm/amdgpu: clean up non-DC suspend/resume handling
drm/amdgpu: move s0ix check into amdgpu_device_ip_suspend_phase2 (v3)
drm/amdgpu: re-enable suspend phase 2 for S0ix
drm/amdgpu/swsmu: skip gfx cgpg on s0ix suspend
drm/amdgpu: update comments about s0ix suspend/resume
drm/amdgpu: drop S0ix checks around CG/PG in suspend
drm/amdgpu: skip kfd suspend/resume for S0ix
UBUNTU: SAUCE: platform/x86: Add missing LPS0 functions for AMD
UBUNTU: SAUCE: platform/x86: force LPS0 functions for AMD
Kai-Heng Feng (1):
UBUNTU: SAUCE: Move ASPM quirk flag to MSB
Marcin Bachry (1):
UBUNTU: SAUCE: PCI: quirks: Quirk PCI d3hot delay for AMD xhci
Pratik Vishwakarma (1):
drm/amdgpu: skip CG/PG for gfx during S0ix
Prike Liang (2):
UBUNTU: SAUCE: usb: pci-quirks: disable D3cold on AMD xhci
suspend for s2idle
UBUNTU: SAUCE: nvme: put some AMD PCIE downstream NVME device to
simple suspend/resume path
Prike.Liang (1):
UBUNTU: SAUCE: ACPI / idle: override and update c-state latency
when not conformance with s0ix
drivers/acpi/processor_idle.c | 17 ++++
drivers/acpi/x86/s2idle.c | 11 +++
drivers/gpu/drm/amd/amdgpu/amdgpu.h | 10 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 138 +++++++---------------------
drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | 89 ++++++++++++++++++
drivers/gpu/drm/amd/amdgpu/amdgpu_display.h | 3 +
drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 36 +++++---
drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 7 +-
drivers/gpu/drm/amd/amdgpu/dce_v10_0.c | 9 +-
drivers/gpu/drm/amd/amdgpu/dce_v11_0.c | 9 +-
drivers/gpu/drm/amd/amdgpu/dce_v6_0.c | 8 +-
drivers/gpu/drm/amd/amdgpu/dce_v8_0.c | 9 +-
drivers/gpu/drm/amd/amdgpu/dce_virtual.c | 15 ++-
drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c | 5 +-
drivers/nvme/host/pci.c | 5 +
drivers/pci/quirks.c | 12 +++
drivers/usb/host/xhci-pci.c | 6 +-
drivers/usb/host/xhci.h | 1 +
include/linux/pci.h | 4 +-
include/linux/pci_ids.h | 2 +
20 files changed, 256 insertions(+), 140 deletions(-)
More information about the kernel-team
mailing list