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://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
sudo mkdir -p /lib/firmware/amdgpu/
sudo cp -p \
  linux-firmware/amdgpu/dcn_3_2_0_dmcub.bin \
  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 \
  /lib/firmware/amdgpu/

CPU Microcode

XXX Check microcode.

Motherboard BMC

The motherboard BMC can be updated from the BMC web GUI.

Motherboard UEFI

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

In the BIOS (F2 at boot), change the “Primary Graphics Adapter” to “Onboard” or when loading amdgpu driver, there will be a “amdgpu: probe of 0000:47:00.0 failed with error -12” error.

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).

NVMe

XXX check firmware on NVMe.

Unknown

This list is preliminary and not exhaustive.