[PATCH 0/5][SRU][Lunar] System hangs at S3 for amdgpu Navi 31/Navi33

You-Sheng Yang vicamo.yang at canonical.com
Fri Jul 7 07:54:17 UTC 2023


BugLink: https://bugs.launchpad.net/bugs/2024427

[Impact]

Under stress testing it was reported that the amdgpu Navi31/Navi33 platforms
will sometimes fail to wake from S3.

[Fix]

kernel patches:
ac2f5739fdca drm/amdgpu/mes11: enable reg active poll
a2fe4534bb38 drm/amd/amdgpu: update mes11 api def
da9a8dc33da2 drm/amdgpu: reserve the old gc_11_0_*_mes.bin
616843d5a11b drm/amd/amdgpu: introduce gc_*_mes_2.bin v2
09bf14907d86 drm/amdgpu: declare firmware for new MES 11.0.4

firmware patches:
* Navi31: ffe1a41e2ddb amdgpu: update GC 11.0.0 firmware for amd.5.5 release
* Navi33: a5d7b4df1a76 amdgpu: update GC 11.0.2 firmware for amd.5.5 release

Three prerequisite commits for backporting to v6.2 (linux/lunar):
* cc42e76e7de5 drm/amd: Load MES microcode during early_init
* 2210af50ae7f drm/amd: Add a new helper for loading/validating microcode
* 11e0b0067ec0 drm/amd: Use `amdgpu_ucode_*` helpers for MES

[Test Case]

$ checkbox-cli run com.canonical.certification::stress-suspend-30-cycles-with-reboots-automated

[Where problems could occur]

Little we know about the firmware fixes. However, while with these commits have
been pulled via stable kernel fixes, the driver begins to request new firmware
blobs of a different filename.

[Other Info]

The kernel driver commits are in v6.4-rc1, backported to v6.3.4, v6.1.31, and
partially (missing da9a8dc33da2, 616843d5a11b) v6.2.16. Only linux/lunar has to
be fixed.

For the firmware parts, they have been included in linux-firmware/mantic,
leaving linux-firmware/lunar and linux-firmware/jammy to be fixed.

Jack Xiao (1):
  drm/amd/amdgpu: introduce gc_*_mes_2.bin v2

Li Ma (1):
  drm/amdgpu: reserve the old gc_11_0_*_mes.bin

Mario Limonciello (3):
  drm/amd: Load MES microcode during early_init
  drm/amd: Add a new helper for loading/validating microcode
  drm/amd: Use `amdgpu_ucode_*` helpers for MES

 drivers/gpu/drm/amd/amdgpu/amdgpu_mes.c   |  77 ++++++++++++++++
 drivers/gpu/drm/amd/amdgpu/amdgpu_mes.h   |   1 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.c |  36 ++++++++
 drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.h |   3 +
 drivers/gpu/drm/amd/amdgpu/mes_v10_1.c    | 107 ++++------------------
 drivers/gpu/drm/amd/amdgpu/mes_v11_0.c    | 103 +++++----------------
 6 files changed, 158 insertions(+), 169 deletions(-)

-- 
2.40.1




More information about the kernel-team mailing list