FreeBSD 物理機下顯示卡的配置

FreeBSD中文社群發表於2021-12-31

FreeBSD 已從 Linux 移植了顯示卡驅動,理論上,A 卡 N 卡均可在 amd64 架構上正常執行。

支援情況

對於 FreeBSD 11,支援情況同 Linux 核心 4.11;

對於 FreeBSD 12,支援情況同 Linux 核心 4.16;

對於 FreeBSD 13,支援情況同 Linux 5.4,最高可以支援 Intel 第十二代處理器。

詳細情況可以看

 


Graphics - FreeBSD Wiki

英特爾核顯 / AMD 獨顯

安裝驅動

注意,如果要通過 ports 安裝必須先取得系統原始碼。請見第二十一章。

 


  • FreeBSD 12.0: #pkg install drm-fbsd12.0-kmod

 

注意:除了 12.0,對於任意 12.X 均應該安裝 drm-fbsd12.0-kmod ,但應該使用 port 在本地重新構建而不應該使用 pkg 進行安裝,否則不會正常執行。

 


  • FreeBSD 13:# pkg install drm-fbsd13-kmod

  • FreeBSD 14: # cd /usr/ports/graphics/drm-kmod/ && make BATCH=yes install clean

 

載入顯示卡

開啟/etc/rc.conf:

 


  • 如果為 intel 核芯顯示卡,新增 kld_list="i915kms"

  • 如果為 HD7000 以後的 AMD 顯示卡,新增 kld_list="amdgpu"

  • 如果為 HD7000 以前的 AMD 顯示卡,新增 kld_list="radeonkms"

 

視訊硬解

# pkg install xf86-video-intel libva-intel-driver

英偉達顯示卡

#安裝幾個 nvidia 相關的包

# pkg install nvidia-driver nvidia-settings nvidia-xconfig

#配置驅動

# sysrc kld_list+="nvidia-modeset"

重啟 這時候應該已經可以點亮圖形介面了……

# 檢視驅動資訊

$ nvidia-smi

如果發現系統沒有使用 nvidia 驅動 需要自動生成配置檔案

# Xorg -configure #生成配置檔案。注意,該步驟不是必要!

# cp /root/xorg.conf.new /etc/X11/xorg.conf

然後重新啟動就可以發現正常使用 nvidia 驅動了

注意: 預設情況下,通過 pkg 安裝的 nvidia-driver 是包含 linux 相容層支援的, 如果要使用 Linux 軟體,需要執行以下命令,(實際上使用linux相容層,以下命令是必須的。) 如果不需要使用 Linux 相容層,則不需要執行。

# sysrc linux_enable="YES"

當然如果使用官方的 pkg 包,安裝好驅動重啟後

$ kldstat

會發現系統自動載入 linux.ko 模組。如果覺得太臃腫,不需要 Linux 相容層 可以自己編譯 nvidia-driver ports,去掉 linux compatibility support

相關文章