Nvidia 50-series DRM Drivers not working FreeBSD 14.3 Update

Hello,

I recently updated to FreeBSD 14.3, and now my Nvidia 5080 isn't being detected and FreeBSD/X11 defaults to llvmpipe driver.
Using the latest nvidia-driver and nvidia-drm-kmod from the package manager, which supports 50-series cards.

My /etc/rc.conf includes kld_list = "nvidia-drm"
And /loader/boot.conf includes hw.nvidiadrm.modeset=1 and hw.nvidiadrm.fbdev=0

kldload nvidia-drm gives the following errors:

kldload: an error occurred while loading module nvidia-drm. Please check dmesg(8) for more details.
Code:
iic0: <I2C generic I/O> on iicbus0
nvidia1: <NVIDIA GeForce RTX 5080> on vgapci1
vgapci1: child nvidia1 requested pci_enable_io
vgapci1: child nvidia1 requested pci_enable_io
nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms  570.169  Thu Jun 12 19:58:07 UTC
2025
link_elf_obj: symbol linux_kfree_async undefined
iic0: detached
iicbus0: <unknown card> at addr 0
nvidia-modeset: Unloading
nvidia1: detached
linker_load_file: /boot/modules/nvidia-drm.ko - unsupported file type
Anyone know what is going wrong here?

Thanks,
MKooner
 
Install the graphics/nvidia-drm-kmod from the FreeBSD-kmods repository (if it's available there), or build it from ports (so it lines up with your kernel version). The 'regular' packages from the FreeBSD repository are built for 14.2.

A new FreeBSD-kmods repository is included in the default /etc/pkg/FreeBSD.conf pkg(8) configuration file. This repository contains kernel modules compiled specifically for 14.3-RELEASE rather than for the 14-STABLE branch. Installing kernel modules from this repository allows drivers with unstable kernel interfaces, in particular graphics drivers, to work even when the main 14-STABLE repository has packages build on a previous release. (a47542f71511).
 
And at least some of recent RTX50 series of nvidia GPUs are known to require GSP firmware to be loaded to work.

GSP firmware loading is disabled by default on ports side, because loading it make suspend/resume stop working.

So you would need adding hw.nvidia.registry.EnableGpuFirmware=1 in your /boot/loader.conf.

See review D50053 for details.
 
Back
Top