PVE直通AMD核显给Win10
书接上回
PVE直通Nvidia显卡给Windows10中挖的坑今天咱也是给填上了
我使用的设备是畅网微控的5800U软路由
BIOS和PVE基础设置
首先BIOS设置打开IOMMU
和SVM
然后是经典的参照安装PVE并开启硬件直通配置好直通环境。
提取VBIOS和GOP
准备主板BIOS文件和相关工具
去你主板官网下载你使用主板的BIOS固件。
需要用到2个工具,UEFI BIOS Updater(UBU)和edk2-BaseTools-win32。
UBU
的官方MEGA下载链接
edk2-BaseTools-win32
直接把repo下载下来就可以。
查看核显ID
PVE shell输入lspci -D -nn | grep VGA
1 | root@pve:~# lspci -D -nn | grep VGA |
其中[1002:1638]
即为核显ID,前后部分都有用,记住。
提取VBIOS
- 解压
UBU
,把主板BIOS固件(通常是.bin
文件)扔到其目录下,运行UBU.cmd
。 - 等待软件扫描固件,然后依次选择
2 - Video OnBoard
、X - Extracted
。 - 导出文件在
Extracted
文件夹里,有VBIOS
和GOP
两个文件夹。 - 进入
VBIOS
文件夹,进入目录最深层,有一堆后缀不同的vbios_xxxx.dat
文件,后缀匹配核显ID后半部分的.dat
文件即为所需,复制出来备用。
提取GOP
- 在提取VBIOS的步骤三,
Extracted
文件夹里的GOP
中,有GOP
的.efi
文件,通常是AMDGopDriver.efi
,需要转换成.rom
文件。 - 使用
edk2-BaseTools-win32
进行转换,先解压,把.efi
文件扔到EfiRom.exe
的同级目录。 - 在
EfiRom.exe
所在目录打开cmd
,用EfiRom.exe -f 0x1002 -i 0x1368 -e AMDGopDriver.efi
进行格式转换,得到AMDGopDriver.rom
。其中0x1002
和0x1368
分别对应核显ID的前后半部分。
直通
准备
- 按照屏蔽显卡驱动添加AMD屏蔽
- 创建虚拟机装系统,机型选q35,用UEFI,勾上Qemu代理,显示设备在装好系统以后改成none。
- 上传
AMDGopDriver.rom
和vbios_xxxx.dat
2个文件到/usr/share/kvm
目录。1
scp AMDGopDriver.rom root@192.168.2.1:/usr/share/kvm
虚拟机加载VBIOS和GOP
首先给虚拟机添加PCI设备
,核显和核显附带的声卡2个设备都添加上去,一定要2个分别添加,切忌勾选所有功能。核显要勾选主GPU
和PCI-Express
。
编辑虚拟机配置文件,虚拟机id记得替换。
1 | nano /etc/pve/qemu-server/103.conf |
在核显的后面添加romfile=vbios_1638.dat
,声卡的后面添加romfile=AMDGopDriver.rom
。
示例
1 | hostpci0: 0000:07:00.0,pcie=1,x-vga=1,romfile=vbios_1638.dat |
启动虚拟机,Enjoy it!
参考链接
https://www.bilibili.com/video/BV1ZN411n74e
https://www.bilibili.com/video/BV11d4y1G7Nk
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 筱晓の第二小窝~!