[RX 7900 XTX] Sudden "PSP firmware loading failed"

I haven’t experienced this before but if I got the same log, I’d probably see what chatgpt can find on the web. It seems that with the newer kernels seem to be unstable for 7900xtx
In my experience I’ve had issues with suspend to ram

Initial chatgpt search

Those messages mean the AMDGPU kernel driver tried to bring the card up, failed in the PSP (Platform Security Processor) stage, and then aborted GPU init.

What your log is saying, in order:

  • PSP load sos failed → the PSP couldn’t load its “secure OS” firmware blob.
  • PSP firmware loading failed → PSP init failed, so the driver treats this as fatal.(Launchpad)
  • hw_init of IP block <psp> failed -22 → error -22 is EINVAL (“invalid argument”), a generic failure code when the driver’s firmware/parameters don’t line up with what the hardware expects.(Wikipedia)
  • amdgpu_device_ip_init failed / Fatal error during GPU init → the whole amdgpu bring-up is aborted, so the card is not usable by the amdgpu driver.(Launchpad)

This exact sequence shows up in multiple reports where the root cause is missing or mismatched AMD firmware for that GPU/PSP.(Launchpad)


On Arch specifically: things to check

  1. Make sure the AMD GPU firmware package is installed and current

Arch recently split linux-firmware into vendor-specific packages; linux-firmware is now a meta-package that depends on things like linux-firmware-amdgpu, linux-firmware-radeon, etc.(Reddit)

On Arch:

pacman -Qs linux-firmware

You should see at least:

  • linux-firmware
  • linux-firmware-amdgpu
  • (optionally also linux-firmware-radeon for older cards)(Arch Linux)

If linux-firmware-amdgpu is missing or looks out of date compared to your kernel, install/update it:

sudo pacman -Syu linux-firmware linux-firmware-amdgpu
  1. Confirm the card’s firmware blobs exist

List the AMDGPU firmware directory:

ls /usr/lib/firmware/amdgpu | head

For your GPU generation (e.g. naviXX/gfx11XX, etc.), you should see several files including PSP-related ones. A number of bug reports with your exact error turned out to be missing psp_*.bin or card-specific blobs under amdgpu/.(about.gitlab.com)

If Pacman shows linux-firmware-amdgpu installed but key files under /usr/lib/firmware/amdgpu/ are absent or obviously wrong for your GPU, the firmware installation is broken and needs to be reinstalled.

  1. Rebuild the initramfs after firmware changes

If you installed or changed firmware, regenerate the initramfs so the kernel sees the right blobs during boot:

sudo mkinitcpio -P

Then reboot into the same kernel. Several distributions have seen display/GPU breakage after updates until mkinitcpio was rerun, because the older initramfs didn’t include the new firmware.(Manjaro Linux Forum)

  1. Check that Arch is actually using amdgpu and not something else

After boot:

dmesg | grep -i amdgpu | head -n 50
lspci -k | grep -A3 -i vga

You want to see your discrete GPU bound to amdgpu and not to vfio-pci or left with “kernel driver in use: ”. If VFIO or another driver is grabbing the device, amdgpu’s probe can fail in odd ways, though most PSP errors people see are still firmware-related.(Super User)

  1. Kernel / firmware mismatch

If you are on a very new kernel (e.g. Arch testing or a custom 6.x) but firmware is older, PSP init can fail because the kernel expects newer blobs. This is exactly what’s described in some distro bug reports where AMD GPUs fail to initialize until firmware is updated.(about.gitlab.com)

On Arch, keeping linux and linux-firmware-amdgpu at their normal repo versions via sudo pacman -Syu is usually enough; mixing a mainline/custom kernel with stock firmware is where mismatches often appear.

  1. BIOS / hardware sanity checks (if the above doesn’t fix it)

If firmware and initramfs look correct and you still get the same PSP load failure on every boot:

  • In UEFI setup, ensure the card is in a full-speed PCIe slot and that any “Above 4G decoding” / “Resizable BAR” / CSM options are in sane defaults (often: CSM disabled, Above 4G decoding enabled for modern GPUs).
  • If you dual-boot another OS that can use the card with no PSP-related errors (e.g. another Linux install with up-to-date firmware), that points to an Arch configuration/firmware issue.
  • If the PSP error appears identically across multiple OS installs with current firmware, that starts to look like a hardware/board issue (PSP failing self-tests).

If you paste the output of:

pacman -Qs linux-firmware
ls /usr/lib/firmware/amdgpu | grep -i psp
uname -a

I can walk through the next concrete change to try.

Seems a work around someone got working was to turn off other monitors temporarily

In the same Ubuntu thread, someone linked this stackoverflow thread

I tried another search but specifically with arch and looking explicitly for similar error logs

another search but with arch explicit

Here are threads that match your messages almost exactly, including the hw_init of IP block <psp> failed -22 plus the PSP firmware lines:

  1. Reddit – Radeon VII, almost line-for-line match
    Logs in the post:

    amdgpu 0000:08:00.0: amdgpu: PSP firmware loading failed
    [drm:amdgpu_device_fw_loading [amdgpu]] *ERROR* hw_init of IP block <psp> failed -22
    amdgpu 0000:08:00.0: amdgpu: amdgpu_device_ip_init failed
    amdgpu 0000:08:00.0: amdgpu: Fatal error during GPU init
    

    Context: Radeon VII on Linux, driver refuses to initialize GPU. Discussion is around firmware/driver mismatches and kernel versions.

  2. Kernel bugzilla 215285 + linuxppc-dev mirror
    Bug report and mailing list mirror show:

    amdgpu ... PSP firmware loading failed
    [drm:amdgpu_device_fw_loading [amdgpu]] *ERROR* hw_init of IP block <psp> failed -22
    amdgpu ... amdgpu_device_ip_init failed
    amdgpu ... Fatal error during GPU init
    

    Context: POWER9 + discrete AMD GPU; root cause is PSP firmware/driver interaction, handled by kernel-side fixes.

  3. Superuser – Radeon Instinct MI25
    Question “AMD Radeon Instinct MI25 fails to initialize” with:

    [drm:amdgpu_device_fw_loading [amdgpu]] *ERROR* hw_init of IP block <psp> failed -22
    amdgpu ... amdgpu_device_ip_init failed
    amdgpu ... Fatal error during GPU init
    

    Context: data center card; answer again points at firmware and kernel support level.

  4. ROCm GitHub issue #2995 (Radeon Pro V620 MxGPU)
    dmesg excerpt:

    ... PSP firmware loading failed
    ... *ERROR* hw_init of IP block <psp> failed -22
    ... amdgpu_device_ip_init failed
    

    Context: RHEL 8.9, ROCm not seeing GPU after boot; devs dig into amdgpu firmware loading and platform support.

  5. Proxmox / PCIe passthrough threads with the same block
    Typical snippet:

    [drm:psp_hw_init [amdgpu]] *ERROR* PSP firmware loading failed
    [drm:amdgpu_device_fw_loading [amdgpu]] *ERROR* hw_init of IP block <psp> failed -22
    amdgpu ... amdgpu_device_ip_init failed
    amdgpu ... Fatal error during GPU init
    

    Contexts:

    • GPU or iGPU used in a VM then rebound to host.
    • Newer kernels with certain Navi / Granite Ridge iGPUs.
    • Mix of “needs newer firmware” and “hypervisor passthrough quirk”.
  6. Launchpad SRU for Navi3x (Ubuntu)
    Logs:

    PSP load kdb failed!
    PSP firmware loading failed
    *ERROR* hw_init of IP block <psp> failed -22
    amdgpu: amdgpu_device_ip_init failed
    amdgpu: Fatal error during GPU init
    

    Context: Ubuntu bug specifically about amdgpu on Navi3x needing firmware/kernel fixes.

  7. Other distro threads (Linux Mint, Framework, etc.)
    All show the same pattern:
    PSP firmware loading failed → hw_init of IP block <psp> failed -22 → amdgpu_device_ip_init failed → Fatal error during GPU init.

Across all of these, the recurring themes are:

  • Kernel is new enough to expect certain PSP/VCN/GC firmware blobs.

  • The installed linux-firmware / linux-firmware-amdgpu either:

    • Lacks the exact PSP blob (missing psp_13_*_sos.bin), or
    • Has a version that doesn’t match the driver’s expectations, or
    • Is fine, but the platform (passthrough, POWER9, some Navi variants) hits a driver bug.

Resolutions in those threads fall into a few buckets:

  1. Install newer firmware to match the kernel (or vice versa) and rebuild initramfs.
  2. Temporarily downgrade linux-firmware(-amdgpu) to a known-good version until the distro publishes a fixed one.
  3. For passthrough/proxmox cases, adjust VFIO / reset handling so that PSP isn’t left in a bad state between boots.
  4. In a few corner cases, it turned out to be a hardware/board issue (PSP never comes up even on multiple OSes).

So your exact string isn’t unique to Arch or 7900 XTX; it’s the generic PSP-init failure path for amdgpu across several GPUs and distros, nearly always tied to PSP firmware health or how the kernel talks to it.

Another source also linked this fedora thread which seems to have issues to

In the meantime as you wait for more people to respond, are you able to fall back to another GPU to upgrade arch or roll back to a previous version? My system is most stable on Kernel 6.16.9