0x00
当前我使用的PVE版本是7.3-3
当前的内核是5.15.74
,网上教程试了一圈发现都不行。最后发现问题是内核的原因。
0x01
首先升级宿主机内核
apt update
apt upgrade -y
apt install pve-kernel-5.19 -y
查看固件
cd /lib/firmware/i915 && ls ehl_guc*.bin && ls ehl_huc*.bin && ls icl_dmc*.bin
修改配置并重启
echo "options i915 enable_guc=3" >> /etc/modprobe.d/i915.conf
reboot
启动后检查
journalctl -b -o short-monotonic -k | egrep -i "i915|dmr|dmc|guc|huc"
输出的内容中有GuV
HuC
就代表驱动成功
[ 4.841415] home kernel: Setting dangerous option enable_guc - tainting kernel
[ 4.866046] home kernel: i915 0000:00:02.0: vgaarb: deactivate vga console
[ 4.869642] home kernel: i915 0000:00:02.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=io+mem
[ 4.871436] home kernel: i915 0000:00:02.0: [drm] Finished loading DMC firmware i915/icl_dmc_ver1_09.bin (v1.9)
[ 4.876510] home kernel: mei_hdcp 0000:00:16.0-b638ab7e-94e2-4ea2-a552-d1c54b627f04: bound 0000:00:02.0 (ops i915_hdcp_component_ops [i915])
[ 5.545198] home kernel: i915 0000:00:02.0: [drm] failed to retrieve link info, disabling eDP
[ 5.552915] home kernel: i915 0000:00:02.0: [drm] GuC firmware i915/ehl_guc_70.1.1.bin version 70.1
[ 5.552922] home kernel: i915 0000:00:02.0: [drm] HuC firmware i915/ehl_huc_9.0.0.bin version 9.0
[ 5.569445] home kernel: i915 0000:00:02.0: [drm] HuC authenticated
[ 5.569889] home kernel: i915 0000:00:02.0: [drm] GuC submission enabled
[ 5.569891] home kernel: i915 0000:00:02.0: [drm] GuC SLPC disabled
[ 5.572145] home kernel: [drm] Initialized i915 1.6.0 20201103 for 0000:00:02.0 on minor 0
[ 5.575832] home kernel: sof-audio-pci-intel-icl 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[ 5.576361] home kernel: i915 0000:00:02.0: [drm] Cannot find any crtc or sizes
[ 5.576501] home kernel: i915 0000:00:02.0: [drm] Cannot find any crtc or sizes
0x02
docker映射设备/dev/dri:/dev/dri
jellyfin 硬解选择QSV
如果中间还加了一层LXC
就在配置上添加
lxc.cgroup2.devices.allow: c 226:0 rwm
lxc.cgroup2.devices.allow: c 226:128 rwm
lxc.cgroup2.devices.allow: c 29:0 rwm
lxc.mount.entry: /dev/dri dev/dri none bind,optional,create=dir
lxc.apparmor.profile: unconfined