Non-free Firmware

Non-free, non-libre aspects noted.

All of the firmware used is non-free, proprietary software. The system can be run without using proprietary software, with the following known exceptions:

  • GPU firmware.

  • CPU microcode.

  • Motherboard BMC.

  • Motherboard UEFI (BIOS).

  • Motherboard NIC firmware.

  • NVMe firmware.

  • Linux kernel source may contain other firmware.

GPU Firmware

Non-free, proprietary amdgpu firmware is required to run the AMD Radeon 7900 XTX GPUs.

The non-free blobs are available from Linux’s repo here:

git clone git://
sudo mkdir -p /lib/firmware/amdgpu/
sudo cp -p \
  linux-firmware/amdgpu/gc_11_0_0_imu.bin \
  linux-firmware/amdgpu/gc_11_0_0_me.bin \
  linux-firmware/amdgpu/gc_11_0_0_mec.bin \
  linux-firmware/amdgpu/gc_11_0_0_mes1.bin \
  linux-firmware/amdgpu/gc_11_0_0_mes_2.bin \
  linux-firmware/amdgpu/gc_11_0_0_pfp.bin \
  linux-firmware/amdgpu/gc_11_0_0_rlc.bin \
  linux-firmware/amdgpu/gc_11_0_0_rlc_1.bin \
  linux-firmware/amdgpu/psp_13_0_0_sos.bin \
  linux-firmware/amdgpu/psp_13_0_0_ta.bin \
  linux-firmware/amdgpu/sdma_6_0_0.bin \
  linux-firmware/amdgpu/smu_13_0_0.bin \
  linux-firmware/amdgpu/vcn_4_0_0.bin \

CPU Microcode

XXX Check microcode.

Motherboard BMC

This binary blob is failing on tinyrocs-01. It can supposedly be updated from Linux or FreeDOS, but fails.

Motherboard UEFI

The UEFI (“BIOS”) can be updated by copying a file to a USB drive. tinyrocs-01 is updated to latest 3.80 (XXX check ver).

Motherboard NIC

The NIC on the motherboard can be flashed. This is distinct from what gets loaded by the kernel (e.g. this is flashed outside the kernel loading).


XXX check firmware on NVMe.


This list is preliminary and not exhaustive.