Unofficial guide

Install GPU Unlock on Linux

Four steps. About ten minutes, one cold boot.

01

Find your card

Note the device ID and the full PCI address.

lspci -Dnn | grep -i nvidia
Check my GPU →

02

Build and install

make install detects Arch, Debian/Ubuntu or Fedora/RHEL and asks for sudo. It downloads the pinned NVIDIA inputs and generates firmware on your machine.

git clone https://github.com/Zagitta/gpu-unlock
cd gpu-unlock
make install

For an RTX 4090 or other Ada card, use JustAResearcher/gpu-unlock-ada instead.

03

Opt in on the kernel command line

Append the option and keep your existing ones.

gpu_unlock.targets=all

Add it inside GRUB_CMDLINE_LINUX_DEFAULT in /etc/default/grub, then:

sudo update-grub

Choose targets

gpu_unlock.targets=allevery supported, unbound card
gpu_unlock.targets=0000:21:00.0only this card (address from lspci -D)
gpu_unlock.targets=0000:21:00.0,0000:22:00.0comma-separated list

04

Cold boot and verify

Power off completely, start again, then look for the unlocked message.

journalctl -k -b | grep gpu_unlock
lspci -nnk -s 0000:01:00.0

A loaded module alone proves nothing. You need the card's "gpu_unlock: unlocked" line.

If something goes wrong

Screen goes black during boot

Expected on the display card: it stays blank from the reset until nvidia-drm takes over, usually a second or two.

Nothing is unlocked after boot

The nvidia driver bound the card first, or the card was not cold. Loading the module after boot cannot unlock a bound card. Power off and try again.

Unlock lost after sleep

Suspend to RAM resets the selectors; the module re-unlocks on resume (about one second). Hibernation is not covered.

"firmware did not stop" in the log

The module keeps its DMA buffers on purpose. Do not force-unload it. Power off before trying again.

Undo

Remove gpu_unlock.targets= from the command line. Removing the package also removes the module and initramfs hooks.