diff mbox series

[SRU,PULL,linux-firmware,Jammy] Update GPU F/W for DCN 3.1.4 products to fix S0i3 issue

Message ID 20230411073618.1710076-1-vicamo.yang@canonical.com
State New
Headers show
Series [SRU,PULL,linux-firmware,Jammy] Update GPU F/W for DCN 3.1.4 products to fix S0i3 issue | expand

Commit Message

You-Sheng Yang April 11, 2023, 7:36 a.m. UTC
[ Impact ]

The current GPU firmware in place for DCN 3.1.4 based products fails to resume
from s2idle on newer BIOSes.

The following GPU F/W stack is confirmed to fix the problem and works both with
the older BIOSes and newer BIOSes:

9ee24ce0 amdgpu: Update SDMA 6.0.1 firmware
7df2a1ae amdgpu: Add PSP 13.0.11 firmware
f098803d amdgpu: Update PSP 13.0.4 firmware
2cc9a4d0 amdgpu: Update GC 11.0.1 firmware
eb13e669 amdgpu: Update DCN 3.1.4 firmware
898b7def amdgpu: Add GC 11.0.4 firmware

Those binaries are part of upstream linux-firmware tag 20230404.

[ Test Plan ]

 * Run s2idle cycle using OEM-6.1 1008 or 1009 kernel on a DCN 3.1.4 platform
 * Verify that display comes back

[ Where problems could occur ]

 * This GPU F/W is only used for DCN 3.1.4 based products. These aren't yet on
   the market and there is no risk to regression to any Ubuntu users.
 * Without this firmware update OEM systems running newer BIOS won't be able to
   be certified.

[ Other Info ]

 * AMD has found this regression and validated this stack on reference hardware.
 * DCN 3.1.4 are only supported by linux/lunar, oem-6.1/jammy and eom-6.0/jammy,
   so only Lunar and Jammy will be nominated for fixing.

----------------------------------------------------------------
The following changes since commit 7e36d16f251ac31d7738a64133cdd357bd0367c5:

  UBUNTU: Ubuntu-20220329.git681281e4-0ubuntu3.12 (2023-03-24 09:09:41 +0100)

are available in the Git repository at:

  https://git.launchpad.net/~vicamo/ubuntu/+source/linux-firmware bug-2015297/update-amdgpu-fw-for-s0i3/jammy-pull

for you to fetch changes up to 7d9489f736efe053ddc24fe71abbb24b81370c83:

  amdgpu: Update SDMA 6.0.1 firmware (2023-04-11 15:12:05 +0800)

----------------------------------------------------------------
Mario Limonciello (6):
      amdgpu: Add GC 11.0.4 firmware
      amdgpu: Update DCN 3.1.4 firmware
      amdgpu: Update GC 11.0.1 firmware
      amdgpu: Update PSP 13.0.4 firmware
      amdgpu: Add PSP 13.0.11 firmware
      amdgpu: Update SDMA 6.0.1 firmware

 WHENCE                     |   9 +++++++++
 amdgpu/dcn_3_1_4_dmcub.bin | Bin 296864 -> 298016 bytes
 amdgpu/gc_11_0_1_imu.bin   | Bin 132352 -> 132352 bytes
 amdgpu/gc_11_0_1_me.bin    | Bin 263424 -> 263424 bytes
 amdgpu/gc_11_0_1_mec.bin   | Bin 268640 -> 268640 bytes
 amdgpu/gc_11_0_1_mes1.bin  | Bin 230528 -> 230368 bytes
 amdgpu/gc_11_0_1_pfp.bin   | Bin 263424 -> 263424 bytes
 amdgpu/gc_11_0_1_rlc.bin   | Bin 157440 -> 160592 bytes
 amdgpu/gc_11_0_4_imu.bin   | Bin 0 -> 132352 bytes
 amdgpu/gc_11_0_4_me.bin    | Bin 0 -> 263424 bytes
 amdgpu/gc_11_0_4_mec.bin   | Bin 0 -> 268704 bytes
 amdgpu/gc_11_0_4_mes.bin   | Bin 0 -> 288288 bytes
 amdgpu/gc_11_0_4_mes1.bin  | Bin 0 -> 229856 bytes
 amdgpu/gc_11_0_4_pfp.bin   | Bin 0 -> 263424 bytes
 amdgpu/gc_11_0_4_rlc.bin   | Bin 0 -> 159472 bytes
 amdgpu/psp_13_0_11_ta.bin  | Bin 0 -> 206272 bytes
 amdgpu/psp_13_0_11_toc.bin | Bin 0 -> 2560 bytes
 amdgpu/psp_13_0_4_ta.bin   | Bin 271808 -> 206272 bytes
 amdgpu/sdma_6_0_1.bin      | Bin 34560 -> 34560 bytes
 19 files changed, 9 insertions(+)
 create mode 100644 amdgpu/gc_11_0_4_imu.bin
 create mode 100644 amdgpu/gc_11_0_4_me.bin
 create mode 100644 amdgpu/gc_11_0_4_mec.bin
 create mode 100644 amdgpu/gc_11_0_4_mes.bin
 create mode 100644 amdgpu/gc_11_0_4_mes1.bin
 create mode 100644 amdgpu/gc_11_0_4_pfp.bin
 create mode 100644 amdgpu/gc_11_0_4_rlc.bin
 create mode 100644 amdgpu/psp_13_0_11_ta.bin
 create mode 100644 amdgpu/psp_13_0_11_toc.bin

Binary files /dev/null and b/amdgpu/psp_13_0_11_toc.bin differ
diff --git a/amdgpu/psp_13_0_4_ta.bin b/amdgpu/psp_13_0_4_ta.bin
index 17735995..22c65e8f 100644
Binary files a/amdgpu/psp_13_0_4_ta.bin and b/amdgpu/psp_13_0_4_ta.bin differ
diff --git a/amdgpu/sdma_6_0_1.bin b/amdgpu/sdma_6_0_1.bin
index f3bc9998..00944f29 100644
Binary files a/amdgpu/sdma_6_0_1.bin and b/amdgpu/sdma_6_0_1.bin differ

Comments

Juerg Haefliger April 17, 2023, 6:38 a.m. UTC | #1
Applied to linux-firmware jammy branch.

...Juerg


On Tue, 11 Apr 2023 15:36:18 +0800
You-Sheng Yang <vicamo.yang@canonical.com> wrote:

> [ Impact ]
> 
> The current GPU firmware in place for DCN 3.1.4 based products fails to resume
> from s2idle on newer BIOSes.
> 
> The following GPU F/W stack is confirmed to fix the problem and works both with
> the older BIOSes and newer BIOSes:
> 
> 9ee24ce0 amdgpu: Update SDMA 6.0.1 firmware
> 7df2a1ae amdgpu: Add PSP 13.0.11 firmware
> f098803d amdgpu: Update PSP 13.0.4 firmware
> 2cc9a4d0 amdgpu: Update GC 11.0.1 firmware
> eb13e669 amdgpu: Update DCN 3.1.4 firmware
> 898b7def amdgpu: Add GC 11.0.4 firmware
> 
> Those binaries are part of upstream linux-firmware tag 20230404.
> 
> [ Test Plan ]
> 
>  * Run s2idle cycle using OEM-6.1 1008 or 1009 kernel on a DCN 3.1.4 platform
>  * Verify that display comes back
> 
> [ Where problems could occur ]
> 
>  * This GPU F/W is only used for DCN 3.1.4 based products. These aren't yet on
>    the market and there is no risk to regression to any Ubuntu users.
>  * Without this firmware update OEM systems running newer BIOS won't be able to
>    be certified.
> 
> [ Other Info ]
> 
>  * AMD has found this regression and validated this stack on reference hardware.
>  * DCN 3.1.4 are only supported by linux/lunar, oem-6.1/jammy and eom-6.0/jammy,
>    so only Lunar and Jammy will be nominated for fixing.
> 
> ----------------------------------------------------------------
> The following changes since commit 7e36d16f251ac31d7738a64133cdd357bd0367c5:
> 
>   UBUNTU: Ubuntu-20220329.git681281e4-0ubuntu3.12 (2023-03-24 09:09:41 +0100)
> 
> are available in the Git repository at:
> 
>   https://git.launchpad.net/~vicamo/ubuntu/+source/linux-firmware bug-2015297/update-amdgpu-fw-for-s0i3/jammy-pull
> 
> for you to fetch changes up to 7d9489f736efe053ddc24fe71abbb24b81370c83:
> 
>   amdgpu: Update SDMA 6.0.1 firmware (2023-04-11 15:12:05 +0800)
> 
> ----------------------------------------------------------------
> Mario Limonciello (6):
>       amdgpu: Add GC 11.0.4 firmware
>       amdgpu: Update DCN 3.1.4 firmware
>       amdgpu: Update GC 11.0.1 firmware
>       amdgpu: Update PSP 13.0.4 firmware
>       amdgpu: Add PSP 13.0.11 firmware
>       amdgpu: Update SDMA 6.0.1 firmware
> 
>  WHENCE                     |   9 +++++++++
>  amdgpu/dcn_3_1_4_dmcub.bin | Bin 296864 -> 298016 bytes
>  amdgpu/gc_11_0_1_imu.bin   | Bin 132352 -> 132352 bytes
>  amdgpu/gc_11_0_1_me.bin    | Bin 263424 -> 263424 bytes
>  amdgpu/gc_11_0_1_mec.bin   | Bin 268640 -> 268640 bytes
>  amdgpu/gc_11_0_1_mes1.bin  | Bin 230528 -> 230368 bytes
>  amdgpu/gc_11_0_1_pfp.bin   | Bin 263424 -> 263424 bytes
>  amdgpu/gc_11_0_1_rlc.bin   | Bin 157440 -> 160592 bytes
>  amdgpu/gc_11_0_4_imu.bin   | Bin 0 -> 132352 bytes
>  amdgpu/gc_11_0_4_me.bin    | Bin 0 -> 263424 bytes
>  amdgpu/gc_11_0_4_mec.bin   | Bin 0 -> 268704 bytes
>  amdgpu/gc_11_0_4_mes.bin   | Bin 0 -> 288288 bytes
>  amdgpu/gc_11_0_4_mes1.bin  | Bin 0 -> 229856 bytes
>  amdgpu/gc_11_0_4_pfp.bin   | Bin 0 -> 263424 bytes
>  amdgpu/gc_11_0_4_rlc.bin   | Bin 0 -> 159472 bytes
>  amdgpu/psp_13_0_11_ta.bin  | Bin 0 -> 206272 bytes
>  amdgpu/psp_13_0_11_toc.bin | Bin 0 -> 2560 bytes
>  amdgpu/psp_13_0_4_ta.bin   | Bin 271808 -> 206272 bytes
>  amdgpu/sdma_6_0_1.bin      | Bin 34560 -> 34560 bytes
>  19 files changed, 9 insertions(+)
>  create mode 100644 amdgpu/gc_11_0_4_imu.bin
>  create mode 100644 amdgpu/gc_11_0_4_me.bin
>  create mode 100644 amdgpu/gc_11_0_4_mec.bin
>  create mode 100644 amdgpu/gc_11_0_4_mes.bin
>  create mode 100644 amdgpu/gc_11_0_4_mes1.bin
>  create mode 100644 amdgpu/gc_11_0_4_pfp.bin
>  create mode 100644 amdgpu/gc_11_0_4_rlc.bin
>  create mode 100644 amdgpu/psp_13_0_11_ta.bin
>  create mode 100644 amdgpu/psp_13_0_11_toc.bin
> 
> diff --git a/WHENCE b/WHENCE
> index 3ce25818..6fdb67e9 100644
> --- a/WHENCE
> +++ b/WHENCE
> @@ -2823,6 +2823,13 @@ File: amdgpu/gc_11_0_2_mes1.bin
>  File: amdgpu/gc_11_0_2_mes.bin
>  File: amdgpu/gc_11_0_2_pfp.bin
>  File: amdgpu/gc_11_0_2_rlc.bin
> +File: amdgpu/gc_11_0_4_imu.bin
> +File: amdgpu/gc_11_0_4_me.bin
> +File: amdgpu/gc_11_0_4_mec.bin
> +File: amdgpu/gc_11_0_4_mes.bin
> +File: amdgpu/gc_11_0_4_mes1.bin
> +File: amdgpu/gc_11_0_4_pfp.bin
> +File: amdgpu/gc_11_0_4_rlc.bin
>  File: amdgpu/dcn_3_1_4_dmcub.bin
>  File: amdgpu/dcn_3_1_5_dmcub.bin
>  File: amdgpu/dcn_3_1_6_dmcub.bin
> @@ -2840,6 +2847,8 @@ File: amdgpu/psp_13_0_7_ta.bin
>  File: amdgpu/psp_13_0_8_asd.bin
>  File: amdgpu/psp_13_0_8_ta.bin
>  File: amdgpu/psp_13_0_8_toc.bin
> +File: amdgpu/psp_13_0_11_ta.bin
> +File: amdgpu/psp_13_0_11_toc.bin
>  File: amdgpu/sdma_5_2_6.bin
>  File: amdgpu/sdma_5_2_7.bin
>  File: amdgpu/sdma_6_0_0.bin
> diff --git a/amdgpu/dcn_3_1_4_dmcub.bin b/amdgpu/dcn_3_1_4_dmcub.bin
> index 728285b0..86001056 100644
> Binary files a/amdgpu/dcn_3_1_4_dmcub.bin and b/amdgpu/dcn_3_1_4_dmcub.bin differ
> diff --git a/amdgpu/gc_11_0_1_imu.bin b/amdgpu/gc_11_0_1_imu.bin
> index 56238e58..18ecc33e 100644
> Binary files a/amdgpu/gc_11_0_1_imu.bin and b/amdgpu/gc_11_0_1_imu.bin differ
> diff --git a/amdgpu/gc_11_0_1_me.bin b/amdgpu/gc_11_0_1_me.bin
> index f53f25a5..db33f6b4 100644
> Binary files a/amdgpu/gc_11_0_1_me.bin and b/amdgpu/gc_11_0_1_me.bin differ
> diff --git a/amdgpu/gc_11_0_1_mec.bin b/amdgpu/gc_11_0_1_mec.bin
> index e38e38af..0d91fa6d 100644
> Binary files a/amdgpu/gc_11_0_1_mec.bin and b/amdgpu/gc_11_0_1_mec.bin differ
> diff --git a/amdgpu/gc_11_0_1_mes1.bin b/amdgpu/gc_11_0_1_mes1.bin
> index 9785c699..6b1fe332 100644
> Binary files a/amdgpu/gc_11_0_1_mes1.bin and b/amdgpu/gc_11_0_1_mes1.bin differ
> diff --git a/amdgpu/gc_11_0_1_pfp.bin b/amdgpu/gc_11_0_1_pfp.bin
> index a630a311..ee0e83c0 100644
> Binary files a/amdgpu/gc_11_0_1_pfp.bin and b/amdgpu/gc_11_0_1_pfp.bin differ
> diff --git a/amdgpu/gc_11_0_1_rlc.bin b/amdgpu/gc_11_0_1_rlc.bin
> index c8f2449c..4bb62bc0 100644
> Binary files a/amdgpu/gc_11_0_1_rlc.bin and b/amdgpu/gc_11_0_1_rlc.bin differ
> diff --git a/amdgpu/gc_11_0_4_imu.bin b/amdgpu/gc_11_0_4_imu.bin
> new file mode 100644
> index 00000000..18ecc33e
> Binary files /dev/null and b/amdgpu/gc_11_0_4_imu.bin differ
> diff --git a/amdgpu/gc_11_0_4_me.bin b/amdgpu/gc_11_0_4_me.bin
> new file mode 100644
> index 00000000..a4ffc932
> Binary files /dev/null and b/amdgpu/gc_11_0_4_me.bin differ
> diff --git a/amdgpu/gc_11_0_4_mec.bin b/amdgpu/gc_11_0_4_mec.bin
> new file mode 100644
> index 00000000..4717d24b
> Binary files /dev/null and b/amdgpu/gc_11_0_4_mec.bin differ
> diff --git a/amdgpu/gc_11_0_4_mes.bin b/amdgpu/gc_11_0_4_mes.bin
> new file mode 100644
> index 00000000..05c40f06
> Binary files /dev/null and b/amdgpu/gc_11_0_4_mes.bin differ
> diff --git a/amdgpu/gc_11_0_4_mes1.bin b/amdgpu/gc_11_0_4_mes1.bin
> new file mode 100644
> index 00000000..0806c0a5
> Binary files /dev/null and b/amdgpu/gc_11_0_4_mes1.bin differ
> diff --git a/amdgpu/gc_11_0_4_pfp.bin b/amdgpu/gc_11_0_4_pfp.bin
> new file mode 100644
> index 00000000..2f3fae2b
> Binary files /dev/null and b/amdgpu/gc_11_0_4_pfp.bin differ
> diff --git a/amdgpu/gc_11_0_4_rlc.bin b/amdgpu/gc_11_0_4_rlc.bin
> new file mode 100644
> index 00000000..8e63035f
> Binary files /dev/null and b/amdgpu/gc_11_0_4_rlc.bin differ
> diff --git a/amdgpu/psp_13_0_11_ta.bin b/amdgpu/psp_13_0_11_ta.bin
> new file mode 100644
> index 00000000..22c65e8f
> Binary files /dev/null and b/amdgpu/psp_13_0_11_ta.bin differ
> diff --git a/amdgpu/psp_13_0_11_toc.bin b/amdgpu/psp_13_0_11_toc.bin
> new file mode 100644
> index 00000000..301d6711
> Binary files /dev/null and b/amdgpu/psp_13_0_11_toc.bin differ
> diff --git a/amdgpu/psp_13_0_4_ta.bin b/amdgpu/psp_13_0_4_ta.bin
> index 17735995..22c65e8f 100644
> Binary files a/amdgpu/psp_13_0_4_ta.bin and b/amdgpu/psp_13_0_4_ta.bin differ
> diff --git a/amdgpu/sdma_6_0_1.bin b/amdgpu/sdma_6_0_1.bin
> index f3bc9998..00944f29 100644
> Binary files a/amdgpu/sdma_6_0_1.bin and b/amdgpu/sdma_6_0_1.bin differ
>
diff mbox series

Patch

diff --git a/WHENCE b/WHENCE
index 3ce25818..6fdb67e9 100644
--- a/WHENCE
+++ b/WHENCE
@@ -2823,6 +2823,13 @@  File: amdgpu/gc_11_0_2_mes1.bin
 File: amdgpu/gc_11_0_2_mes.bin
 File: amdgpu/gc_11_0_2_pfp.bin
 File: amdgpu/gc_11_0_2_rlc.bin
+File: amdgpu/gc_11_0_4_imu.bin
+File: amdgpu/gc_11_0_4_me.bin
+File: amdgpu/gc_11_0_4_mec.bin
+File: amdgpu/gc_11_0_4_mes.bin
+File: amdgpu/gc_11_0_4_mes1.bin
+File: amdgpu/gc_11_0_4_pfp.bin
+File: amdgpu/gc_11_0_4_rlc.bin
 File: amdgpu/dcn_3_1_4_dmcub.bin
 File: amdgpu/dcn_3_1_5_dmcub.bin
 File: amdgpu/dcn_3_1_6_dmcub.bin
@@ -2840,6 +2847,8 @@  File: amdgpu/psp_13_0_7_ta.bin
 File: amdgpu/psp_13_0_8_asd.bin
 File: amdgpu/psp_13_0_8_ta.bin
 File: amdgpu/psp_13_0_8_toc.bin
+File: amdgpu/psp_13_0_11_ta.bin
+File: amdgpu/psp_13_0_11_toc.bin
 File: amdgpu/sdma_5_2_6.bin
 File: amdgpu/sdma_5_2_7.bin
 File: amdgpu/sdma_6_0_0.bin
diff --git a/amdgpu/dcn_3_1_4_dmcub.bin b/amdgpu/dcn_3_1_4_dmcub.bin
index 728285b0..86001056 100644
Binary files a/amdgpu/dcn_3_1_4_dmcub.bin and b/amdgpu/dcn_3_1_4_dmcub.bin differ
diff --git a/amdgpu/gc_11_0_1_imu.bin b/amdgpu/gc_11_0_1_imu.bin
index 56238e58..18ecc33e 100644
Binary files a/amdgpu/gc_11_0_1_imu.bin and b/amdgpu/gc_11_0_1_imu.bin differ
diff --git a/amdgpu/gc_11_0_1_me.bin b/amdgpu/gc_11_0_1_me.bin
index f53f25a5..db33f6b4 100644
Binary files a/amdgpu/gc_11_0_1_me.bin and b/amdgpu/gc_11_0_1_me.bin differ
diff --git a/amdgpu/gc_11_0_1_mec.bin b/amdgpu/gc_11_0_1_mec.bin
index e38e38af..0d91fa6d 100644
Binary files a/amdgpu/gc_11_0_1_mec.bin and b/amdgpu/gc_11_0_1_mec.bin differ
diff --git a/amdgpu/gc_11_0_1_mes1.bin b/amdgpu/gc_11_0_1_mes1.bin
index 9785c699..6b1fe332 100644
Binary files a/amdgpu/gc_11_0_1_mes1.bin and b/amdgpu/gc_11_0_1_mes1.bin differ
diff --git a/amdgpu/gc_11_0_1_pfp.bin b/amdgpu/gc_11_0_1_pfp.bin
index a630a311..ee0e83c0 100644
Binary files a/amdgpu/gc_11_0_1_pfp.bin and b/amdgpu/gc_11_0_1_pfp.bin differ
diff --git a/amdgpu/gc_11_0_1_rlc.bin b/amdgpu/gc_11_0_1_rlc.bin
index c8f2449c..4bb62bc0 100644
Binary files a/amdgpu/gc_11_0_1_rlc.bin and b/amdgpu/gc_11_0_1_rlc.bin differ
diff --git a/amdgpu/gc_11_0_4_imu.bin b/amdgpu/gc_11_0_4_imu.bin
new file mode 100644
index 00000000..18ecc33e
Binary files /dev/null and b/amdgpu/gc_11_0_4_imu.bin differ
diff --git a/amdgpu/gc_11_0_4_me.bin b/amdgpu/gc_11_0_4_me.bin
new file mode 100644
index 00000000..a4ffc932
Binary files /dev/null and b/amdgpu/gc_11_0_4_me.bin differ
diff --git a/amdgpu/gc_11_0_4_mec.bin b/amdgpu/gc_11_0_4_mec.bin
new file mode 100644
index 00000000..4717d24b
Binary files /dev/null and b/amdgpu/gc_11_0_4_mec.bin differ
diff --git a/amdgpu/gc_11_0_4_mes.bin b/amdgpu/gc_11_0_4_mes.bin
new file mode 100644
index 00000000..05c40f06
Binary files /dev/null and b/amdgpu/gc_11_0_4_mes.bin differ
diff --git a/amdgpu/gc_11_0_4_mes1.bin b/amdgpu/gc_11_0_4_mes1.bin
new file mode 100644
index 00000000..0806c0a5
Binary files /dev/null and b/amdgpu/gc_11_0_4_mes1.bin differ
diff --git a/amdgpu/gc_11_0_4_pfp.bin b/amdgpu/gc_11_0_4_pfp.bin
new file mode 100644
index 00000000..2f3fae2b
Binary files /dev/null and b/amdgpu/gc_11_0_4_pfp.bin differ
diff --git a/amdgpu/gc_11_0_4_rlc.bin b/amdgpu/gc_11_0_4_rlc.bin
new file mode 100644
index 00000000..8e63035f
Binary files /dev/null and b/amdgpu/gc_11_0_4_rlc.bin differ
diff --git a/amdgpu/psp_13_0_11_ta.bin b/amdgpu/psp_13_0_11_ta.bin
new file mode 100644
index 00000000..22c65e8f
Binary files /dev/null and b/amdgpu/psp_13_0_11_ta.bin differ
diff --git a/amdgpu/psp_13_0_11_toc.bin b/amdgpu/psp_13_0_11_toc.bin
new file mode 100644
index 00000000..301d6711