5.1 Intel 和 AMD 显卡驱动
警告
请勿使用
sysutils/desktop-installer
,会引发不必要的错误和问题。
故障排除与未竟事宜

未安装显卡驱动。
显卡支持情况
FreeBSD 14.1-RELEASE、14-STABLE(OSVERSION > 1400508)、编译使用 drm-61-kmod
,支持情况同 Linux 6.1。经过实际测试,可支持第十二代 Alder Lake-N(如 N100)。十三代等后续版本暂无条件测试。
FreeBSD 15 CURRENT,编译使用 drm-66-kmod
,支持情况同 Linux 6.6。
技巧
可以在 port 开发者手册中的最后一章中查询 OSVERSION 对应的版本和 Git 提交。
查看本机 OSVERSION:
root@ykla:~ # uname -U 1500019
警告
每次点版本或大版本升级时,可能需要重新获取新系统源代码,重新编译安装显卡驱动模块方可顺利完成升级,而不是卡在黑屏的地方:或者你使用“模块源”。
DRM 即“Direct Rendering Manager”(直接渲染管理器),DRM 是 Linux 内核的子系统,负责与现代显卡的 GPU 进行交互。FreeBSD 在内核实现了 Linux 内核编程接口(LinuxKPI),并移植了 Linux DRM,类似的还有一些无线网卡驱动。
安装 Intel 核显/AMD 显卡驱动
注意
在使用 Gnome 时,如果自动锁屏/息屏,可能无法再次进入桌面。见 Bug 255049 - x11/gdm doesn't show the login screen。
注意
在使用 Ports 时,drm 需要在
/usr/src
中有一份当前版本系统源代码,可参考系统更新章节。如果你是参考的本书其他章节进行的安装,那么你的系统中很可能已经有一份源码了,无需再获取源码。
FreeBSD 14.X
技巧
若要使用 pkg 安装,请参照本书其他章节配置 kernel modules(kmods)内核模块源。
# cd /usr/ports/graphics/drm-61-kmod
# make BATCH=yes install clean
或者(如有问题请使用 Ports)
# pkg install drm-61-kmod
FreeBSD 15.0
# cd /usr/ports/graphics/drm-66-kmod
# make BATCH=yes install clean
注意
像英特尔三代处理器的 HD 4000 这种比较古老的显卡,他在传统的 BIOS 模式下无需额外安装显卡驱动,但是 UEFI 下有可能会花屏(FreeBSD 13.0 及以后无此问题),且需要安装此 DRM 显卡驱动。
配置 Intel 核显/AMD 显卡
请按如下进行操作:
Intel 核芯显卡
# sysrc -f /etc/rc.conf kld_list+=i915kms
AMD
如果是 HD7000 以后的 AMD 显卡,添加
amdgpu
(大部分人应该使用这个,如果没用再换radeonkms
)# sysrc -f /etc/rc.conf kld_list+=amdgpu
如果是 HD7000 以前的 AMD 显卡,添加
kld_list="radeonkms"
(这是十多年前的显卡了)# sysrc -f /etc/rc.conf kld_list+=radeonkms
故障排除与未竟事宜
注意
遇到任何问题时,请先使用 Ports 重新编译安装。尤其是在版本升级时。
KLD XXX.ko depends on kernel - not available or version mismatch.
提示内核版本不符,请先升级系统或使用 ports 编译安装。

视频硬解
Intel 视频硬解
如果不配置此节,blender 等软件将无法运行!直接“段错误”。
使用 pkg 安装:
# pkg install libva-intel-media-driver
或者使用 Ports 安装:
# cd /usr/ports/multimedia/libva-intel-media-driver/
# make install clean
AMD 视频硬解
使用 pkg 安装
# pkg ins mesa-gallium-va mesa-gallium-vdpau
或者使用 Ports 安装:
# cd /usr/ports/graphics/mesa-gallium-va/ && make install clean
# cd /usr/ports/graphics/mesa-gallium-vdpau/ && make install clean
可能还需要这么做:
将以下内容写入 /usr/local/etc/X11/xorg.conf.d/20-amdgpu-tearfree.conf
(请自行创建)
Section "Device"
Identifier "AMDgpu"
Driver "amdgpu"
Option "TearFree" "on"
EndSection
然后就可以用 mpv --hwdec xxx.mp4
来测试了。请自行安装 mpv。
亮度调节
通用
对于一般计算机:
# sysrc -f /boot/loader.conf acpi_video="YES"
对于 Thinkpad:
# sysrc -f /boot/loader.conf acpi_ibm_load="YES"
# sysrc -f /boot/loader.conf acpi_video="YES"
英特尔/AMD
backlight
自 FreeBSD 13 引入。
# backlight # 打印当前亮度
# backlight decr 20 # 降低 20% 亮度
# backlight + # 默认调整亮度增加 10%
# backlight - # 默认调整亮度减少 10%
如果上述操作不起作用,请检查路径 /dev/backlight
下都有哪些设备。
示例(照抄不会起作用的,自己
ls /dev/backlight
看看):
# backlight -f /dev/backlight/amdgpu_bl00 - 10
# backlight -f /dev/backlight/backlight0 - 10
参考文献
经过测试,此部分教程适用于 renoir 显卡:
检查状态
如何判断是否成功驱动显卡:
$ ls -al /dev/dri/card0
lrwxr-xr-x 1 root wheel 8 Jul 2 19:39 /dev/dri/card0 -> ../drm/0
你会发现你多了一块 card0
(一般是数字是 0
)。
故障排除与未竟事宜
如果显卡使用驱动有问题请直接联系作者:https://github.com/freebsd/drm-kmod/issues
如果笔记本出现了唤醒时屏幕点不亮的问题,可以在
/boot/loader.conf
中添加hw.acpi.reset_video="1"
以在唤醒时重置显示适配器。普通用户若非
wheel
组成员,那么请加入video
组。
参考文献
显卡详细支持情况可以看 wiki/Graphics
最后更新于