Amdgpu driver fails to load

After a recent reboot I suddenly can’t get into my desktop. After some digging it seems the amdgpu driver fails to load. I did run a package update (didn’t look too closely at what was updating sadly…) just before, so that probably has something to do with it.

Steps I have taken so far:

  • Checked that the firmwares it’s trying to load is actually on disk in /usr/lib/firmware/amdgpu/
  • Rebuilt initramfs (manually first, but happens automatically on kernel / firmware reinstalls as well)
  • Reinstalled linux-firmware
  • Downgraded linux-firmware to an earlier version
  • Downgraded kernel (6.9 → 6.8 → 6.6)

Still no luck loading the firmware. Any suggestions on how to troubleshoot this?

System: AMD 7950X / 7900XTX, fully updated manjaro install

I was a bit worried my GPU had somehow failed, given the sudden appearance of the issue… So I downloaded the latest manjaro USB install ISO and booted on that, and installed the vulkan-radeon package. Things like vulkaninfo and vkcube works fine, so the gpu itself seems to be fine.

I could reinstall ofc, but I would really prefer to get to the bottom of the issue as I’ve spend too much time installing / configuring everything as I want it :wink:

inxi -Farz
System:
  Kernel: 6.9.0-1-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 13.2.1 clocksource: tsc
    avail: hpet,acpi_pm parameters: BOOT_IMAGE=/boot/vmlinuz-6.9-x86_64
    root=UUID=3f5611e0-a181-4dac-995b-ea585e261b2c rw quiet udev.log_priority=3
    split_lock_detect=off
  Console: tty 2 DM: SDDM Distro: Manjaro base: Arch Linux
Machine:
  Type: Desktop System: ASUS product: N/A v: N/A serial: <superuser required>
  Mobo: ASUSTeK model: ROG CROSSHAIR X670E GENE v: Rev 1.xx serial: <superuser required>
    part-nu: SKU uuid: <superuser required> UEFI: American Megatrends v: 1516 date: 07/21/2023
CPU:
  Info: model: AMD Ryzen 9 7950X bits: 64 type: MT MCP arch: Zen 4 gen: 5 level: v4 note: check
    built: 2022+ process: TSMC n5 (5nm) family: 0x19 (25) model-id: 0x61 (97) stepping: 2
    microcode: 0xA601203
  Topology: cpus: 1x cores: 16 tpc: 2 threads: 32 smt: enabled cache: L1: 1024 KiB desc: d-16x32
    KiB; i-16x32 KiB L2: 16 MiB desc: 16x1024 KiB L3: 64 MiB desc: 2x32 MiB
  Speed (MHz): avg: 600 high: 3600 min/max: 400/5881 scaling: driver: amd-pstate-epp
    governor: powersave cores: 1: 400 2: 400 3: 400 4: 400 5: 400 6: 400 7: 400 8: 400 9: 400
    10: 400 11: 400 12: 400 13: 3600 14: 400 15: 400 16: 400 17: 400 18: 3600 19: 400 20: 400
    21: 400 22: 400 23: 400 24: 400 25: 400 26: 400 27: 400 28: 400 29: 400 30: 400 31: 400
    32: 400 bogomips: 288103
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
  Vulnerabilities:
  Type: gather_data_sampling status: Not affected
  Type: itlb_multihit status: Not affected
  Type: l1tf status: Not affected
  Type: mds status: Not affected
  Type: meltdown status: Not affected
  Type: mmio_stale_data status: Not affected
  Type: reg_file_data_sampling status: Not affected
  Type: retbleed status: Not affected
  Type: spec_rstack_overflow status: Vulnerable: Safe RET, no microcode
  Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via prctl
  Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer sanitization
  Type: spectre_v2 mitigation: Enhanced / Automatic IBRS; IBPB: conditional; STIBP: always-on;
    RSB filling; PBRSB-eIBRS: Not affected; BHI: Not affected
  Type: srbds status: Not affected
  Type: tsx_async_abort status: Not affected
Graphics:
  Device-1: AMD Navi 31 [Radeon RX 7900 XT/7900 XTX/7900M] driver: N/A alternate: amdgpu
    arch: RDNA-3 code: Navi-3x process: TSMC n5 (5nm) built: 2022+ pcie: gen: 4 speed: 16 GT/s
    lanes: 16 bus-ID: 03:00.0 chip-ID: 1002:744c class-ID: 0300
  Display: server: X.org v: 1.21.1.13 with: Xwayland v: 23.2.6 driver: X: loaded: N/A
    unloaded: amdgpu gpu: N/A tty: 215x45
  Monitor-1: Unknown-1 size-res: N/A in console modes: 3440x1440
  API: EGL v: 1.5 platforms: device: 0 drv: swrast gbm: drv: kms_swrast surfaceless: drv: swrast
    inactive: wayland,x11
  API: OpenGL v: 4.5 vendor: mesa v: 24.0.6-manjaro1.1 note: console (EGL sourced)
    renderer: llvmpipe (LLVM 17.0.6 256 bits)
  API: Vulkan Message: No Vulkan data available.
Audio:
  Device-1: AMD Navi 31 HDMI/DP Audio driver: snd_hda_intel v: kernel pcie: gen: 4 speed: 16 GT/s
    lanes: 16 bus-ID: 03:00.1 chip-ID: 1002:ab30 class-ID: 0403
  Device-2: ASUSTek USB Audio driver: hid-generic,snd-usb-audio,usbhid type: USB rev: 2.0
    speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 7-6:2 chip-ID: 0b05:1a52 class-ID: 0300
  API: ALSA v: k6.9.0-1-MANJARO status: kernel-api with: aoss type: oss-emulator
    tools: alsactl,alsamixer,amixer
  Server-1: JACK v: 1.9.22 status: off tools: N/A
  Server-2: PipeWire v: 1.0.5 status: off with: 1: pipewire-pulse status: off
    2: pipewire-media-session status: off 3: pipewire-alsa type: plugin tools: pactl,pw-cat,pw-cli
Network:
  Device-1: Intel Ethernet I225-V vendor: ASUSTeK driver: igc v: kernel pcie: gen: 2 speed: 5 GT/s
    lanes: 1 port: N/A bus-ID: 0a:00.0 chip-ID: 8086:15f3 class-ID: 0200
  IF: eno1 state: up speed: 1000 Mbps duplex: full mac: <filter>
  Device-2: Intel Wi-Fi 6E AX210/AX1675 2x2 [Typhoon Peak] driver: iwlwifi v: kernel pcie:
    gen: 2 speed: 5 GT/s lanes: 1 bus-ID: 0b:00.0 chip-ID: 8086:2725 class-ID: 0280
  IF: wlp11s0 state: down mac: <filter>
  Info: services: NetworkManager, systemd-timesyncd, wpa_supplicant
Bluetooth:
  Device-1: Intel AX210 Bluetooth driver: btusb v: 0.8 type: USB rev: 2.0 speed: 12 Mb/s lanes: 1
    mode: 1.1 bus-ID: 5-7:6 chip-ID: 8087:0032 class-ID: e001
  Report: rfkill ID: hci0 rfk-id: 2 state: up address: see --recommends
Drives:
  Local Storage: total: 931.51 GiB used: 583.35 GiB (62.6%)
  SMART Message: Unable to run smartctl. Root privileges required.
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Samsung model: SSD 980 PRO 1TB size: 931.51 GiB
    block-size: physical: 512 B logical: 512 B speed: 63.2 Gb/s lanes: 4 tech: SSD serial: <filter>
    fw-rev: 5B2QGXA7 temp: 34.9 C scheme: GPT
Partition:
  ID-1: / raw-size: 195.31 GiB size: 191.19 GiB (97.89%) used: 51.54 GiB (27.0%) fs: ext4
    dev: /dev/nvme0n1p3 maj-min: 259:3
  ID-2: /boot/efi raw-size: 1024 MiB size: 1022 MiB (99.80%) used: 312 KiB (0.0%) fs: vfat
    dev: /dev/nvme0n1p4 maj-min: 259:4
  ID-3: /home raw-size: 735.12 GiB size: 722.51 GiB (98.29%) used: 531.81 GiB (73.6%) fs: ext4
    dev: /dev/nvme0n1p1 maj-min: 259:1
Swap:
  Alert: No swap data was found.
Sensors:
  System Temperatures: cpu: 45.0 C mobo: 25.0 C
  Fan Speeds (rpm): N/A
Repos:
  Packages: pm: pacman pkgs: 1627 libs: 429 tools: pamac,yay pm: flatpak pkgs: 0
  Active pacman repo servers in: /etc/pacman.d/mirrorlist
    1: https://mirror.zetup.net/manjaro/testing/$repo/$arch
    2: http://ftp.uni-kl.de/pub/linux/manjaro/testing/$repo/$arch
    3: https://mirror.futureweb.be/manjaro/testing/$repo/$arch
    4: https://mirror.alpix.eu/manjaro/testing/$repo/$arch
    5: https://mirror.easyname.at/manjaro/testing/$repo/$arch
    6: https://mirror.truenetwork.ru/manjaro/testing/$repo/$arch
    7: https://nnenix.mm.fcix.net/manjaro/testing/$repo/$arch
    8: https://mirror.2degrees.nz/manjaro/testing/$repo/$arch
Info:
  Memory: total: 32 GiB note: est. available: 31.07 GiB used: 964.2 MiB (3.0%)
  Processes: 455 Power: uptime: 0m states: freeze,mem,disk suspend: deep avail: s2idle
    wakeups: 0 hibernate: platform avail: shutdown, reboot, suspend, test_resume image: 12.41 GiB
    Init: systemd v: 255 default: graphical tool: systemctl
  Compilers: clang: 17.0.6 gcc: 13.2.1 Shell: Bash (login) v: 5.2.26 running-in: tty 2
    inxi: 3.3.34

Fails to load it does.
I wonder what mhwd has to say:

mhwd -li

Looks like you have BIOS updates.

Sorry, but not sure what that means. BIOS as in motherboard? Or GPU bios? Is there a way to update the gpu bios from the command line, or what do I need to do?

The BIOS is firmware for your motherboard.
It affects a lot of things and you should do it.
Looking at the releases available they include ryzen updates, security fixes, performance improvements, graphics card support, and more.
You will have to consult the manufacturers documentation for how to update the BIOS.

From your system here I still am interested in mhwd;

mhwd -li

And maybe we should check packages too?

pacman -Qs amd

You’re not up to date as I can see by the log you are missing the latest linux-firmware 20240409.1addd7dc-1.1 package.

I know there are newer versions, but also that a lot of people have had stability issues on later versions. My GPU has worked fine for over a year on the current bios, so it’s weird that it would stop loading the firmware all of a sudden… But yes, at the moment it’s the only thing I have left to test.

Installed PCI configs:
--------------------------------------------------------------------------------
                  NAME               VERSION          FREEDRIVER           TYPE
--------------------------------------------------------------------------------
           video-linux            2024.05.06                true            PCI


Warning: No installed USB configs!
local/amd-ucode 20240510.b9d2bf23-1
    Microcode update image for AMD CPUs
local/lact 0.5.4-2
    AMDGPU Controller application
local/lib32-vulkan-radeon 1:24.0.6-1
    Open-source Vulkan driver for AMD GPUs - 32-bit
local/libteam 1.32-1
    Library for controlling team network device
local/mhwd-amdgpu 19.1.0-1
    MHWD module-ids for amdgpu
local/vulkan-radeon 1:24.0.6-1
    Open-source Vulkan driver for AMD GPUs
local/xf86-video-amdgpu 23.0.0-2 (xorg-drivers)
    X.org amdgpu video driver

Please make sure you are up to date.

sudo pacman-mirrors --continent && sudo pacman -Syu

Not being up to date is because I downgraded the linux-firmware package after it failed to boot (as mentioned in the original post) - it stopped working a few days ago, just around the 0510 release, so I guessed that was the issue. Downgrading didn’t help though, so I guess I might just as well install the latest version again.

I have now tried:

  • Installing the latest BIOS
  • Delete the packet cache and installing the latest linux-firmware again. I confirmed the files it is trying to load are available in /lib/firmware/amdgpu/
  • Full system update

Still no dice, same message about failing to load the firmware.

If I boot from the installer USB, the drivers load fine, so it still looks like some configuration / packet issue :confused: . Here is the log from booting from USB, if that helps:

May 19 20:01:21 manjaro kernel: [drm] amdgpu kernel modesetting enabled.
May 19 20:01:21 manjaro kernel: amdgpu: Virtual CRAT table created for CPU
May 19 20:01:21 manjaro kernel: amdgpu: Topology: Add CPU node
May 19 20:01:21 manjaro kernel: amdgpu 0000:03:00.0: enabling device (0006 -> 0007)
May 19 20:01:21 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: Fetched VBIOS from VFCT
May 19 20:01:21 manjaro kernel: amdgpu: ATOM BIOS: 113-D7020100-102
May 19 20:01:21 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: CP RS64 enable
May 19 20:01:21 manjaro kernel: amdgpu 0000:03:00.0: [drm:jpeg_v4_0_early_init [amdgpu]] JPEG decode is enabled in VM mode
May 19 20:01:21 manjaro kernel: amdgpu 0000:03:00.0: vgaarb: deactivate vga console
May 19 20:01:21 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: Trusted Memory Zone (TMZ) feature not supported
May 19 20:01:21 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: MEM ECC is not presented.
May 19 20:01:21 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: SRAM ECC is not presented.
May 19 20:01:21 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: VRAM: 24560M 0x0000008000000000 - 0x00000085FEFFFFFF (24560M used)
May 19 20:01:21 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: GART: 512M 0x00007FFF00000000 - 0x00007FFF1FFFFFFF
May 19 20:01:21 manjaro kernel: [drm] amdgpu: 24560M of VRAM memory ready
May 19 20:01:21 manjaro kernel: [drm] amdgpu: 15905M of GTT memory ready.
May 19 20:01:21 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: Will use PSP to load VCN firmware
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: reserve 0x1300000 from 0x85fc000000 for PSP TMR
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: RAP: optional rap ta ucode is not available
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: SECUREDISPLAY: securedisplay ta ucode is not available
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: smu driver if version = 0x0000003d, smu fw if version = 0x0000003f, smu fw program = 0, smu
 fw version = 0x004e7900 (78.121.0)
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: SMU driver if version not matched
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: SMU is initialized successfully!
May 19 20:01:22 manjaro kernel: snd_hda_intel 0000:03:00.1: bound 0000:03:00.0 (ops amdgpu_dm_audio_component_bind_ops [amdgpu])
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: [drm:jpeg_v4_0_hw_init [amdgpu]] JPEG decode initialized successfully.
May 19 20:01:22 manjaro kernel: amdgpu: HMM registered 24560MB device memory
May 19 20:01:22 manjaro kernel: kfd kfd: amdgpu: Allocated 3969056 bytes on gart
May 19 20:01:22 manjaro kernel: kfd kfd: amdgpu: Total number of KFD nodes to be created: 1
May 19 20:01:22 manjaro kernel: amdgpu: Virtual CRAT table created for GPU
May 19 20:01:22 manjaro kernel: amdgpu: Topology: Add dGPU node [0x744c:0x1002]
May 19 20:01:22 manjaro kernel: kfd kfd: amdgpu: added device 1002:744c
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: SE 6, SH per SE 2, CU per SH 8, active_cu_number 96
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: ring gfx_0.0.0 uses VM inv eng 0 on hub 0
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.0.0 uses VM inv eng 1 on hub 0
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.1.0 uses VM inv eng 4 on hub 0
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.2.0 uses VM inv eng 6 on hub 0
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.3.0 uses VM inv eng 7 on hub 0
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.0.1 uses VM inv eng 8 on hub 0
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.1.1 uses VM inv eng 9 on hub 0
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.2.1 uses VM inv eng 10 on hub 0
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: ring comp_1.3.1 uses VM inv eng 11 on hub 0
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: ring sdma0 uses VM inv eng 12 on hub 0
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: ring sdma1 uses VM inv eng 13 on hub 0
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: ring vcn_unified_0 uses VM inv eng 0 on hub 8
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: ring vcn_unified_1 uses VM inv eng 1 on hub 8
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: ring jpeg_dec uses VM inv eng 4 on hub 8
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: ring mes_kiq_3.1.0 uses VM inv eng 14 on hub 0
May 19 20:01:22 manjaro kernel: amdgpu 0000:03:00.0: amdgpu: Using BACO for runtime pm
May 19 20:01:22 manjaro kernel: [drm] Initialized amdgpu 3.57.0 20150101 for 0000:03:00.0 on minor 1
May 19 20:01:22 manjaro kernel: fbcon: amdgpudrmfb (fb0) is primary device
May 19 20:01:23 manjaro kernel: amdgpu 0000:03:00.0: [drm] fb0: amdgpudrmfb frame buffer device

Anyone have a tip where to look next?

Anything different about your /etc/mkinitcpio.conf? Post it here.

Not really:

# vim:set ft=sh
# MODULES
# The following modules are loaded before any boot hooks are
# run.  Advanced users may wish to specify all system modules
# in this array.  For instance:
#     MODULES=(piix ide_disk reiserfs)
MODULES=()

# BINARIES
# This setting includes any additional binaries a given user may
# wish into the CPIO image.  This is run last, so it may be used to
# override the actual binaries included by a given hook
# BINARIES are dependency parsed, so you may safely ignore libraries
BINARIES=()

# FILES
# This setting is similar to BINARIES above, however, files are added
# as-is and are not parsed in any way.  This is useful for config files.
FILES=()

# HOOKS
# This is the most important setting in this file.  The HOOKS control the
# modules and scripts added to the image, and what happens at boot time.
# Order is important, and it is recommended that you do not change the
# order in which HOOKS are added.  Run 'mkinitcpio -H <hook name>' for
# help on a given hook.
# 'base' is _required_ unless you know precisely what you are doing.
# 'udev' is _required_ in order to automatically load modules
# 'filesystems' is _required_ unless you specify your fs modules in MODULES
# Examples:
##   This setup specifies all modules in the MODULES setting above.
##   No raid, lvm2, or encrypted root is needed.
#    HOOKS=(base)
#
##   This setup will autodetect all modules for your system and should
##   work as a sane default
#    HOOKS=(base udev autodetect block filesystems)
#
##   This setup will generate a 'full' image which supports most systems.
##   No autodetection is done.
#    HOOKS=(base udev block filesystems)
#
##   This setup assembles a pata mdadm array with an encrypted root FS.
##   Note: See 'mkinitcpio -H mdadm' for more information on raid devices.
#    HOOKS=(base udev block mdadm encrypt filesystems)
#
##   This setup loads an lvm2 volume group on a usb device.
#    HOOKS=(base udev block lvm2 filesystems)
#
##   NOTE: If you have /usr on a separate partition, you MUST include the
#    usr, fsck and shutdown hooks.
HOOKS=(base udev autodetect modconf kms block keyboard keymap consolefont filesystems fsck)

# COMPRESSION
# Use this to compress the initramfs image. By default, gzip compression
# is used. Use 'cat' to create an uncompressed image.
#COMPRESSION="gzip"
#COMPRESSION="bzip2"
#COMPRESSION="lzma"
#COMPRESSION="xz"
#COMPRESSION="lzop"
#COMPRESSION="lz4"
#COMPRESSION="zstd"

# COMPRESSION_OPTIONS
# Additional options for the compressor
#COMPRESSION_OPTIONS=()

# MODULES_DECOMPRESS
# Decompress kernel modules during initramfs creation.
# Enable to speedup boot process, disable to save RAM
# during early userspace. Switch (yes/no).
#MODULES_DECOMPRESS="yes"

I have tried with and without MODULES=(amdgpu), but that doesn’t seem to make any difference.

This should probably have microcode in it and may speak to unhandled pacnews.

I tried adding microcode to hooks and regenerated the initramfs, no change.

Confirm that the amdgpu firmware files are actually in the initramfs image. E.g.

$ sudo lsinitcpio /boot/initramfs-6.6-x86_64.img | grep 'amdgpu/psp_13_0_0_*'

usr/lib/firmware/amdgpu/psp_13_0_0_sos.bin
usr/lib/firmware/amdgpu/psp_13_0_0_ta.bin
1 Like

Now we’re on to something!

$ sudo lsinitcpio /boot/initramfs-6.9-x86_64.img | grep 'amdgpu/psp_13_0*'

usr/lib/firmware/amdgpu/psp_13_0_0_sos.bin.old
usr/lib/firmware/amdgpu/psp_13_0_0_ta.bin.old
usr/lib/firmware/amdgpu/psp_13_0_10_sos.bin
usr/lib/firmware/amdgpu/psp_13_0_10_ta.bin
usr/lib/firmware/amdgpu/psp_13_0_11_ta.bin
usr/lib/firmware/amdgpu/psp_13_0_11_toc.bin
usr/lib/firmware/amdgpu/psp_13_0_4_ta.bin
usr/lib/firmware/amdgpu/psp_13_0_4_toc.bin
usr/lib/firmware/amdgpu/psp_13_0_5_ta.bin.old
usr/lib/firmware/amdgpu/psp_13_0_5_toc.bin
usr/lib/firmware/amdgpu/psp_13_0_6_sos.bin
usr/lib/firmware/amdgpu/psp_13_0_6_ta.bin
usr/lib/firmware/amdgpu/psp_13_0_7_sos.bin
usr/lib/firmware/amdgpu/psp_13_0_7_ta.bin
usr/lib/firmware/amdgpu/psp_13_0_8_ta.bin
usr/lib/firmware/amdgpu/psp_13_0_8_toc.bin

So it has a psp_13_0_0_sos.bin.old, and some newer version but not psp_13_0_0_sos.bin.

psp_13_0_0_sos.bin IS however in the /lib/firmware/amdgpu/ folder. What makes the initramfs-rebuild not pick up these files?

Maybe something on user level has renamed it with the *.old suffix? Of course the driver will look for the file which has not an *.old suffix and therefore say error -2:

$ LANG=C errno 2
ENOENT 2 No such file or directory

Probably rename it again…? Who knows what happens?

Where is mkinitcpio finding those .old files? Get rid of them or move them somewhere mkinitcpio won’t see them and then re-run sudo mkinitcpio -P.

My guess is that it’s something to do with the way mkinitcpio matches firmware filenames and ignores extensions but I’m not going to read through the source code to confirm that :stuck_out_tongue:

1 Like