AMD核显直通显示输出简单方法完整版无定制OVMF开机BIOS启动画面

2023-09-18 8,005 9

您的订阅点赞分享充电打赏(三连投币分享)是对老高最大的支持和鼓励!看完片子,加爱折腾的群和讨论组:https://diyforfun.565856.xyz/ 欢迎您加入和有着共同折腾爱好的朋友们一起:折腾的开心!开心的折腾!

之前我们做过AMD提取VBIOS和OVMF定制方法,有小伙伴觉得定制ovmf麻烦,虽然已经不是编译的,即使用工具来图形化定制,他们还是觉得麻烦。那么最好的方法就是用pve自带默认的ovmf,再加上两个重点:1、vbios核显驱动和显示输出必要。2、GopDriver开机BIOS启动画面必要的。另外填坑之前小伙伴问的PVE下显示CPU温度频率硬盘信息的辅助工具点击查看,下面我们开始了

AMD核显直通显示输出简单方法完整版无定制OVMF开机BIOS启动画面

声明:爱折腾的老高视频及技术交流群仅供数码爱好者正规合法讨论技术交流。不涉及任何违法违规技术交流。请不要在评论或私聊中提及任何违法违规技术问题,一概不予回答谢谢合作。请各位朋友不在在群中讨论任何相关违法违规及风险问题,群规见群公告。所分享资源均来自互联网公开资源,均有其各自的作者和出处,尊重知识产权。相关设备和服务请购买正版。各厂商服务商请不要群内发广告、图片及二维码等。如有合作意向,敬请与老高联系。

如有转载或部分引用请保留老高频道及视频连接,注明出处,谢谢合作!
您的订阅点赞分享充电打赏(三连投币分享)是对老高最大的支持和鼓励!看完片子,加爱折腾的群和讨论组:https://diyforfun.565856.xyz/ 欢迎您加入和有着共同折腾爱好的朋友们一起:折腾的开心!开心的折腾!
以下文字,需要边看视频边操作,看不懂的地方暂停,搞懂了继续。避免疏漏仔细看视频。
另外:后期可能会不断完善或者改进此文字版流程,因为视频已经无法修改了,所以以此文字版的为准。不懂的地方可以群里求助,大家互帮互助,或者群里聊天半小时自己搜索5分钟!谢谢诸位支持~

virtIO驱动ISO:
https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/stable-virtio/virtio-win.iso

6900HX的vbios和相关提取GOP、VBIOS工具、GOP+vbios合并rom等:
点击下载

UBU:https://winraid.level1techs.com/t/tool-guide-news-uefi-bios-updater-ubu/30357

ffs:https://github.com/pbatard/ffs/releases

mmtool64下载地址:https://www.xitongzhijia.net/soft/231466.html

补丁:RadeonResetBugFixService
https://github.com/inga-lovinde/RadeonResetBugFix/releases

6900HX核显驱动:
https://drivers.amd.com/drivers/whql-amd-software-adrenalin-edition-23.9.1-win10-win11-sep6.exe

一、PVE安装:
安装完成。
启动PVE,进入WebUI

二、进入PVE后基础设置:
1、PVE8.0换源(如已做过请忽略):
(1)国内清华源速度较快(南方可选择中科大较快)
将自带的源文件sources.list备份

cp /etc/apt/sources.list /etc/apt/sources.list_bak

编辑sources.list

nano /etc/apt/sources.list

#粘贴以下
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm main contrib non-free non-free-firmware
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-updates main contrib non-free non-free-firmware
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ bookworm-backports main contrib non-free non-free-firmware
deb https://mirrors.tuna.tsinghua.edu.cn/debian-security bookworm-security main contrib non-free non-free-firmware

(2)编辑企业源,增加pve无订阅源

nano /etc/apt/sources.list.d/pve-enterprise.list
将其中原有的proxmox句首加# 注释掉,变为:#deb https://enterprise.proxmox.com/debian/pve bookworm pve-enterprise
添加以下清华源:
deb https://mirrors.tuna.tsinghua.edu.cn/proxmox/debian/pve bookworm pve-no-subscription

ctrl+x y 回车保存退出

添加pve无订阅源

nano /etc/apt/sources.list.d/pve-no-subscription.list
#粘贴以下pve无订阅源
deb https://mirrors.tuna.tsinghua.edu.cn/proxmox/debian bookworm pve-no-subscription

ctrl+x y 回车保存退出

(3)修复源401错误

nano /etc/apt/sources.list.d/ceph.list

将其中原有的proxmox句首加# 注释掉,变为:#deb http://download.proxmox.com/debian/ceph-quincy bookworm no-subscription

#添加中科大ceph源:
deb https://mirrors.ustc.edu.cn/proxmox/debian/ceph-quincy bookworm no-subscription

ctrl+x y 回车保存退出

#更新 (此步暂时不建议执行,有几个群友反馈7840HS直通核显遇到问题,是在PVE8.1.4/5 内核6.5.13-1/-3遇到的,所以暂时不要运行更新PVE了。避免升级到新版PVE和内核后作妖,影响AMD核显直通)
apt update && apt dist-upgrade -y
(暂时不要运行更新PVE了。避免升级到新版PVE和内核后作妖,影响AMD核显直通)

2、顺便把LXC更换为清华源:
备份APLInfo.pm

cp /usr/share/perl5/PVE/APLInfo.pm /usr/share/perl5/PVE/APLInfo.pm_back

#更换为清华源:
sed -i 's|http://download.proxmox.com|https://mirrors.tuna.tsinghua.edu.cn/proxmox|g' /usr/share/perl5/PVE/APLInfo.pm

#重启服务后生效
systemctl restart pvedaemon.service

重启reboot

3、去掉登录订阅提示,合并local-lvm以最大化利用硬盘空间,添加CPU频率硬盘温度,删掉不用的内核等信息:
用第三方Shell工具,如FinalShell等,上传pve_source至root文件夹
运行./pve_source
具体操作见视频

4、编辑grub、添加设备黑名单
(1)

nano /etc/default/grub
#添加以下:
GRUB_CMDLINE_LINUX_DEFAULT="quiet initcall_blacklist=sysfb_init pcie_acs_override=downstream,multifunction"

ctrl+x,y,回车保存退出

参数并不是堆砌越多越好,尽量恰到好处过犹不及。每个参数都发挥作用,去掉不用的拖沓参数。

注意:1、pve内核经常更新,amd_iommu=on有的内核已经内置,因此不需要上面加amd_iommu=on。如果遇到更新pve内核后,提示iommu没有开启,请手动在以上此处添加amd_iommu=on,并update-grub重启后即可解决。

2、initcall_blacklist=sysfb_init 启动时运行黑名单内添加项,在Intel的机型中,此项非必要添加,但是在amd机型中建议添加,否则会影响核显直通后的性能,比如4K60Hz降低到30Hz。

3、pcie_acs_override=downstream,multifunction PCI ACS覆盖参数避免死机设置为两者/多用途,避免PVE虚拟Win开关机时死机。

(2)更新grub:

update-grub

(3)

nano /etc/modprobe.d/pve-blacklist.conf

在里面加入

blacklist nvidiafb
blacklist amdgpu
options vfio_iommu_type1 allow_unsafe_interrupts=1

ctrl+x,y,回车保存退出

解释:屏蔽amd显卡驱动,options vfio_iommu_type1 allow_unsafe_interrupts=1 允许不安全的设备中断,在部分机型上不加此项会导致虚拟Win启动加载转圈时直接宿主PVE卡死。

注意:在设备黑名单中添加amdgpu,并grub里开启引导自动加载后,pve启动时会卡在以下界面。是正常的!等待一会只要PVE可以通过网页访问到WebUI管理页面就是正常没问题的。因为PVE开机时会按照设备黑名单设置的,释放对核显的控制权。这样才能在核显直通给虚拟Win的时候避免冲突而导致的无法加载驱动,错误代码43

(4)更新initramfs:

update-initramfs -u -k all

(5)重启:reboot

三、使用UBU提取AMDGopDriver并制作ROM,提取VBIOS

注意:以下第三大部分提取vbios可以使用UBU,也可以使用MMTOOL(更简单),并且可以把2个rom(gop和igd)合二为一,具体见

如果使用二合一vbios rom,以下挂载rom只需要1个。把它挂载直通的核显pci设备上即可。

https://diyforfun.cn/1058.html

以下2(1)(2)步骤可以使用老高VBT工具,点几个按键完成rom的二合一操作,并写入正确的核显设备ID。


1、获取机器PCI信息
在PVE-Shell下:
(1)更新pci设备信息
update-pciids
(2)查看核显及声卡

lspci -D -nn | grep VGA
lspci -D -nn | grep Audio

AMD 6900HX的核显和声卡ID通常为:0000:e5:00.0和0000:e5:00.1
供应商ID为:1002设备ID为:1681

以上信息按照您的显卡声卡的ID都记录好,备用

2、提取GOP和VBIOS
把共享盘中需要的工具全部下载解压缩,准备好
BIOS文件请联系厂家或商家客服索取,或者电脑官网下载
实在不行,还可以自行备份出来(见AMI bios提取工具AFUWIN)

(1)进入UBU文件夹,运行UBU.bat提取AMDGopDriver.efi文件(自动扫描后点2——点S,导出后在Extracted目录中找到AMDGopDriver.efi)
把AMDGopDriver.efi拷贝到edk2-BaseTools-win32-master文件夹,
CMD命令行进入edk2-BaseTools-win32-master文件夹,运行

EfiRom.exe -f 0x1002 -i 0xXXXX -e AMDGopDriver.efi

注意以上XXXX为具体自己的核显设备ID,如6900HX的为0x1681
查看反馈信息,成功后会有AMDGopDriver.rom文件产生。

(2)使用xi4oyu的源代码 编译后导出vbios文件
源码见(https://forum.proxmox.com/threads/have-anyone-susscesfully-passthroughed-the-igpu-amd-radeon-680m-to-vm.119178/)中#11楼 xi4oyu的代码
可以使用分享盘中懒人文件vbios(已经编译好的)使用第三方Shell工具如FinalShell,WinSCP等将vbios拷贝进入root文件夹)
运行


./vbios

成功后可以看到生成的vbios文件名为vbios_1002_xxxx.bin,xxxx为您自己核显设备ID。如6900HX为vbios_1002_1681.bin

以上准备已经完成,我们需要AMDGopDriver.rom(ROM)和vbios_1002_xxxx.bin(VBIOS)这两个文件,把他们用命令行移动至/usr/share/kvm 目录

mv AMDGopDriver.rom vbios_1002_1681.bin /usr/share/kvm

进入/usr/share/kvm检查一下以上2个文件是否存在

四、Win虚拟机建立及环境设置
(3)创建win11虚拟机
名称:自定义
光驱挂载:Win安装ISO镜像
系统中显卡:无
机型:q35
BIOS:OVMF
EFI分区:UEFI(OVMF)需要
TPM设备:Win11需要
磁盘:SCSI 大小100G(按需设置,或硬盘直通)
CPU:host 核心数量8(6900HX共8核,按需设置)
内存:4G及以上(核显直通建议)
网络:virtIO(半虚拟化或网卡直通)网卡
点击确定

(4)虚拟Win10硬件里面:
添加CD/DVD设备1个,挂载virtIO驱动ISO镜像(加上之前自带的1个光驱共2个,在成功安装完成Win并关机之后可以卸载掉)
添加PCI设备:
添加显卡(0000:e5:00.0)pcie设备里面勾选:主gpu,rom-bar,pcie-express这三个选项,所有功能:不勾选
添加声卡(0000:e5:00.1)
添加USB键鼠

(5)配置虚拟机conf文件,添加ROM和VBIOS文件指向:

nano /etc/pve/qemu-server/虚拟机序号.conf

找到以下两处,并添加

hostpci0: 0000:e5:00.0,pcie=1,romfile=vbios_1002_1681.bin,x-vga=1
hostpci1: 0000:e5:00.1,romfile=AMDGopDriver.rom

ctrl+x,y,回车保存退出

(6)安装win11系统

首先安装virtIO驱动,然后安装amd驱动,不要重启电脑。打开远程桌面并测试能正常登录

(7)打补丁(不完美解决amd gpu passthrough rest bug问题。如直通成功显示画面之后,当Win重启后核显错误代码43不运行的问题。)

下载RadeonResetBugFixService这个软件0.17版本,下载地址:https://github.com/inga-lovinde/RadeonResetBugFix/releases

安装方法:下载解压放在c盘根目录,cmd管理员模式下运行

RadeonResetBugFixService.exe install

等服务安装完成后,就可以随便关闭win10虚拟机了,

关闭后:

删除Win虚拟机硬件中不需要的光驱设备

显示设置为无 none。设置好后就可以正常开机win10虚拟机了。

五、已知问题:

开机、重启等需要等待2分钟黑屏。原因如下:

核显成功直通后存在win10虚拟机重启就再也不出画面问题。可以安装RadeonResetBugFixService这个软件不完美解决这个问题。安装这个软件后可以正常重启和关机。

(PVE启动之后,第一次启动虚拟Win11可显示引导画面和进入win的画面,之后的重启则是黑屏。请等待2分钟左右RadeonResetBugFixService服务启动,核显会成功加载并工作。关机时RadeonResetBugFixService服务会自动卸载核显,避免下次重启时核显不工作无法进入系统,它会在下次重启时重复上面先开机再启动核显流程,保证每次重启核显都可以正常,且不需要重启PVE,我们仅需要耐心等它2分钟。)

六、其他:

不要开win10的休眠、睡眠功能,还有pve管理界面的虚拟机休眠、停止功能,开了直通会恢复不过来,只有重启物理机才可以解决

参考引用:
https://forum.proxmox.com/threads/have-anyone-susscesfully-passthroughed-the-igpu-amd-radeon-680m-to-vm.119178/
https://blog.csdn.net/qq_42912965/article/details/126815332
如有转载或部分引用请保留老高频道及视频连接,注明出处,谢谢合作!
您的订阅点赞分享充电打赏(三连投币分享)是对老高最大的支持和鼓励!看完片子,加爱折腾的群和讨论组:https://diyforfun.565856.xyz/ 欢迎您加入和有着共同折腾爱好的朋友们一起:折腾的开心!开心的折腾!

转载原创文章请注明,转载自: 爱折腾的老高博客 https://diyforfun.cn

相关文章

万兆网络升级,ORICO奥睿科雷电万兆网卡适用于MacOS/Win/Linux/铝合金外壳/定制全功能满血编织线/主动温控散热风扇
免费和收费之争?2024年常用远程桌面控制软件的不完全体验 以RayLink RustDesk RDP ToDesk为例
性能直逼大师兄!没NPU的8745HS性价比高起来!零刻SER8-8745HS迷你电脑全面评测!双M2 满血USB4 2.5G网口 DP1.4 HDMi2.1
迷你电脑/笔记本的DDR5高性价比笔记本内存条之选,玖合DDR5 5600MHz 16G套条
升利器 2.5G 多W级!简单易用的智能组网:贝锐蒲公英路由器X5Pro企业路由器实操组网教程 远程异地组网办公 远程管理AN WIFI6
显卡扩展坞还能这么搞?逍遥君新款CX卧式背插显卡扩展坞 兼容雷电4/雷电3/USB4 Thunderbolt3 4显卡坞

评论(9)

  1. 老高,在pve 8.2.1 最新版本下,只要加入blacklist amdgpu 重启PVE的时候就卡死在loading initial ramdisk

    1. @brian 注意:在设备黑名单中添加amdgpu,并grub里开启引导自动加载后,pve启动时会卡在以下界面。是正常的!等待一会只要PVE可以通过网页访问到WebUI管理页面就是正常没问题的。因为PVE开机时会按照设备黑名单设置的,释放对核显的控制权。这样才能在核显直通给虚拟Win的时候避免冲突而导致的无法加载驱动,错误代码43(以上在ESXI/PVE核显直通时都会有这个屏蔽引导核显加载的过程。同理)

发布评论