Page MenuHomeFreeBSD

handbook: Update the section about Nvidia drivers

Authored by 0mp on Dec 12 2021, 9:11 PM.
Referenced Files
Unknown Object (File)
Sun, Mar 31, 8:58 AM
Unknown Object (File)
Mar 6 2024, 12:12 AM
Unknown Object (File)
Dec 23 2023, 9:19 AM
Unknown Object (File)
Dec 13 2023, 5:28 AM
Unknown Object (File)
Nov 18 2023, 10:33 AM
Unknown Object (File)
Nov 18 2023, 8:16 AM
Unknown Object (File)
Nov 7 2023, 8:18 AM
Unknown Object (File)
Sep 26 2023, 1:34 AM


Group Reviewers
  • Recommend to load the driver via rc.conf instead of loader.conf.
  • Add a note that some GPUs require nvidia-modeset. Point the reader to the pkg-message for that.

Reported by: Vladimir Mišev

Diff Detail

R9 FreeBSD doc repository
No Lint Coverage
No Test Coverage
Build Status
Buildable 43297
Build 40185: arc lint + arc unit

Event Timeline

0mp requested review of this revision.Dec 12 2021, 9:11 PM
0mp created this revision.

I think it's better to recommend nvidia-modeset, since it should let Xorg use the modesetting driver that's being used for i915kms, radeonkms, and amdgpu.

Other than that, it looks good to me. added inline comments.

Since you're adding text just next, perhaps change "will create" to "includes" or "will install"? They're both more accurate since the user wouldn't be compiling from source. (Assuming there is source code and not just an opaque binary biob, that is.)


Saying which versions would be helpful, if that's known.


Also, consistency note: since loader.conf has a manual page as well, I'd use the same markup for it and rc.conf; man: or [.filename]

Since this is apparently a somewhat confusing topic, let me clarify a few things:

  1. nvidia-modeset.ko is required to be loaded in all drivers that contain it — it's not an optional component;
  2. Xorg's "modesetting" driver doesn't work with Nvidia, it expects Mesa-specific kernel interfaces (DRI3);
  3. nvidia-modeset.ko alone doesn't enable kernel modesetting, the documentation clearly tells us to set a parameter for nvidia-drm.ko, which is a Linux only kernel module at the moment (not counting an unofficial port).

If anyone wants to pick up this patch, feel free do to so.