5.3. 显卡驱动

下表展示了 FreeBSD 所支持的不同的显卡,应该安装哪个软件包以及其对应的模块。

表 7.显卡软件包

品牌

类型

软件包

模块

Intel®

开源

drm-kmod

i915kms

AMD®

开源

drm-kmod

amdgpuradeonkms

NVIDIA®

专有

nvidia-driver

nvidianvidia-modeset

VESA

开源

xf86-video-vesa

vesa

SCFB

开源

xf86-video-scfb

scfb

Virtualbox

开源

virtualbox-ose-additions

Virtualbox OSE 增强功能包中的 vboxvideo 驱动

VMware®

开源

xf86-video-vmware

vmwgfx

下面的命令可以用来识别系统中安装的是哪种显卡:

% pciconf -lv|grep -B4 VGA

输出应类似于以下内容:

vgapci0@pci0:0:2:0:     class=0x030000 rev=0x07 hdr=0x00 vendor=0x8086 device=0x2a42 subvendor=0x17aa subdevice=0x20e4
    vendor     = 'Intel Corporation'
    device     = 'Mobile 4 Series Chipset Integrated Graphics Controller'
    class      = display
    subclass   = VGA

警告

如果显卡不被 Intel®、AMD® 或 NVIDIA® 驱动程序所支持,则应使用 VESA 或 SCFB 模块。以 BIOS 模式引导时必须使用 VESA 模块,以 UEFI 模式引导时必须使用 SCFB 模块。

这条命令用来检查启动模式:

% sysctl machdep.bootmethod

输出应类似于以下内容:

machdep.bootmethod: BIOS

5.3.1. Intel®

Intel® Graphics 是指与 Intel® CPU 集成在同一芯片上的图形芯片。维基百科提供了英特尔高清显卡各代产品的变体和名称概览

graphics/drm-kmod 软件包间接提供了一系列内核模块,可用于 Intel® 显卡。执行以下命令来安装 Intel® 驱动:

# pkg install drm-kmod

然后将模块添加到 /etc/rc.conf 文件中,执行以下命令:

# sysrc kld_list+=i915kms

提示

如果发现 CPU 使用率过高或高清视频过度撕裂,安装 multimedia/libva-intel-driver 可能有所帮助。执行以下命令来安装该软件包:

# pkg install libva-intel-driver mesa-libs mesa-dri

5.3.2. AMD®

graphics/drm-kmod 软件包间接提供了一系列内核模块,可用于 AMD® 显卡。amdgpuradeonkms 模块可以根据硬件的级别使用。FreeBSD 项目维护了一个用来匹配对应驱动的 AMD 图形支持列表

执行以下命令来安装 AMD® 驱动:

# pkg install drm-kmod

对于 HD7000 或 Tahiti 之后的显卡,将该模块添加到 /etc/rc.conf 文件中,执行以下命令:

# sysrc kld_list+=amdgpu

对于旧显卡(HD7000 之前或 Tahiti 之前),将该模块添加到 /etc/rc.conf 文件中,执行以下命令:

# sysrc kld_list+=radeonkms

5.3.3. NVIDIA®

FreeBSD 支持多个版本的 NVIDIA® 专有驱动程序。使用较新显卡的用户应该安装软件包 x11/nvidia-driver 。那些使用旧显卡的用户必须在下面查看哪个版本支持它们。

表 8.支持的 NVIDIA® 驱动程序版本

软件包

支持的硬件

x11/nvidia-driver-304

支持的硬件

x11/nvidia-driver-340

支持的硬件

x11/nvidia-driver-390

支持的硬件

x11/nvidia-driver-470

支持的硬件

x11/nvidia-driver

支持的硬件

警告

NVIDIA® 显卡驱动 304 版本(nvidia-driver-304)不支持 xorg-server 1.20 及以上版本。

执行以下命令来安装最新的 NVIDIA® 驱动:

# pkg install nvidia-driver

然后将模块添加到 /etc/rc.conf 文件中,执行以下命令:

# sysrc kld_list+=nvidia-modeset

警告

如果安装了 x11/nvidia-driver-304x11/nvidia-drivers-340 软件包,则必须使用 nvidia 驱动程序。

# sysrc kld_list+=nvidia