Boot hang on AMD Ryzen systems with Phoenix2 / Hawk Point 2 graphics on 24.04

Summary

Some AMD Ryzen systems with GC 11.0.4 graphics (Phoenix2 / Hawk Point 2 APUs) may fail to boot after a kernel update, hanging at a black screen. This affects Ubuntu 24.04 LTS users running the linux-hwe-6.17 or linux-oem-6.17 kernel with the current linux-firmware package from noble-updates.

The root cause is a kernel-firmware version mismatch: the kernel sends a command to the GPU’s micro-engine scheduler (MES) that the installed firmware does not support.

Users of the linux-oem-6.17 kernel already have a fix available via regular updates (version 6.17.0-1017.17 or later). Users of the linux-hwe-6.17 kernel (the default HWE kernel on 24.04.4 and later) do not yet have a kernel fix and should use the workaround below.


Am I Affected?

You are likely affected if all of the following are true:

  • Your system has an AMD APU with GC 11.0.4 / gfx1104 graphics
  • You are running kernel 6.17.x (either linux-hwe-6.17 or linux-oem-6.17 prior to 6.17.0-1017.17)
  • Your system hangs at a black screen during boot (no login screen, no error message)
  • Booting an older kernel (e.g., 6.8.x from the GA kernel) works normally

Known affected systems

  • ASUS Vivobook S16 (AMD Phoenix2)
  • Dell Inspiron 16 DC16255
  • HP Victus 15 (Ryzen 7 7445HS, Radeon 740M)
  • Lenovo Thinkpad L14 Gen 6 AMD

Immediate Workaround: Boot an Older Kernel

If your system is stuck at a black screen, you can recover by booting an older kernel:

Step 1: Access the GRUB menu

  1. Restart your computer
  2. Press/Hold Esc or Shift immediately after the firmware splash screen to access the GRUB menu
  3. If that doesn’t work, try pressing Esc repeatedly right after power-on

Step 2: Select an older kernel

  1. In the GRUB menu, select “Advanced options for Ubuntu”
  2. Choose an older kernel version (e.g., 6.8.x or any kernel version that previously worked)
  3. Press Enter to boot

Step 3: Verify you’re running the older kernel

Once booted, confirm with:

uname -r

This should show the older kernel version you selected.

Note: You will need to repeat this process at each boot until a permanent fix is installed. You can also set the older kernel as default — see “Setting a default kernel” below.

Setting a default kernel (optional)

To avoid manually selecting the kernel each boot:

# List installed kernels
dpkg -l | grep linux-image

# Set the default kernel in GRUB (replace with your working kernel version)
sudo nano /etc/default/grub

Change the GRUB_DEFAULT line to:

GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu, with Linux 6.8.0-xx-generic"

Then update GRUB:

sudo update-grub

Alternative workaround: Boot with nomodeset

If you cannot access an older kernel from GRUB, you can add the nomodeset kernel parameter to prevent the GPU driver from loading during boot:

  1. In the GRUB menu, highlight the kernel entry and press e to edit
  2. Find the line starting with linux and add nomodeset at the end of the line
  3. Press Ctrl+X or F10 to boot

This disables GPU hardware acceleration but allows the system to boot so you can apply a permanent fix.

To make this persistent until the fix lands, edit /etc/default/grub and add nomodeset to the

GRUB_CMDLINE_LINUX_DEFAULT line:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset"

Then run:

sudo update-grub

Note: With nomodeset, the desktop will run in software rendering mode. This is a temporary measure — remove nomodeset after applying a permanent fix.


Permanent Fixes

Option A: Update to the fixed OEM kernel (if applicable)

If you are using the linux-oem-6.17 kernel, update to version 6.17.0-1017.17 or later:

sudo apt update && sudo apt upgrade

This version includes the kernel-side fix that correctly skips the unsupported MES command on older firmware. This is the simplest fix if you are already on the OEM kernel.

Option B: Install updated firmware from noble-proposed

Warning: The -proposed pocket contains packages undergoing testing. While this firmware update specifically fixes the boot hang, packages in -proposed have not completed the full SRU verification cycle and may carry other risks. Use at your own discretion.

If you are on the linux-hwe-6.17 kernel (the default HWE kernel on 24.04.4), there is currently no kernel fix available in noble-updates. However, an updated linux-firmware package (version .26) is available in noble-proposed that includes MES firmware version 0x52, which supports the command the kernel sends.

To install it:

# 1. Boot into a working older kernel first (see workaround above)

# 2. Temporarily enable noble-proposed
echo "deb http://archive.ubuntu.com/ubuntu/ noble-proposed main" | sudo tee /etc/apt/sources.list.d/ubuntu-noble-proposed.list
sudo apt update

# 3. Install the updated firmware
sudo apt -t noble-proposed install linux-firmware

# 4. Disable noble-proposed
sudo rm /etc/apt/sources.list.d/ubuntu-noble-proposed.list
sudo apt update

# 5. Reboot into the 6.17 kernel
sudo reboot

After rebooting, the system should boot normally with the 6.17 kernel.


Related Bug Reports


This article will be updated as fixes are promoted to noble-updates.

3 Likes