前言
魔改版本的 Whatevergreen 简称 weg,只适用于台式机(显卡是 AMD 显卡),笔记本用户请使用原版的 weg,或者自己打补丁。
事件起因
看到坛子里面有很多人讨论因为 weg 驱动显卡性能差,跑分低,待机功耗高等等问题,我这里真心想为 weg 叫屈。weg 驱动里面除了改了显卡的名称,修正 FrameBuffer,探测 connector,打上修正补丁,其他什么事情都没有干。 说为啥没有 FrameBuffer 名称不对,然后没有注入显卡其他信息不足等等之类,我想v神没有打算在这方面发力,同时你不用 weg 驱动的话,不打 SSDT,用其他的方式驱动显卡,也是相同的问题,因为都没有做这块相关工作。
废话不多说,我看了相关的显卡的 SSDT 设置,总结下来目的无非有以下几点:
- 设置 FrameBuffer Connector 的名字,能够提高显卡效率,降低功耗; (这个已经验证,是真事,确实有对应的驱动中的 info.plist 文件)
- 添加 UEFI BIOS 相关信息,实现跟白果相同的效果;(不确定真实效果,可能就是显示些内容装逼用)
- 设置 FamilyName,DeviceName,优化一定的性能;
重要的事情提示:好多小伙伴使用 SSDT 修改完毕后各种奇怪问题,然后要不是就是黑屏。 证明不是人人手动修改 SSDT 都是可行,而且一些修改经验并不是适合所有机器。
做了哪些修改
- 删除igfx(核显)相关补丁。
- 删除Nvidia相关补丁。
- 删除Shiki相关功能。
- 保留AGDP补丁。
- 保留基础重命名补丁。
- 保留紫线移除补丁。
- 保留型号对应识别功能, 同时对北极星核心(RX 4xx/5xx)和 Vega56/64做了优化。
- 修正独立显卡 GFX 锁定顺序;
- 修正 MacPro 2013 的 显卡从 GFX1 开始。
如何使用魔改版本
- Bios主显卡设置成独显,DVMT 128M。
- 移除change GFX0 to IGPU,change PEGP to GFX0,change HECI to IMEI,change MEI to IMEI等补丁。
- 移除显卡相关的SSDT。
- 加入Whatevergreen(Lilu要求1.4.2),之前新老版发生过主代码树切换,Lilu 也做了升级。
- 使用正确的 ConnectorLessPlatformId, 这个 Id 可以在互联网上找到。如果这个 Id 不对可能导致启动黑屏,或者意外重启。(原因是 Lilu.kext 会默认加载一些通用的核显Id)
相关参数 (Clover,OC 中添加到 boot 中的参数)
cardtype=ecardonly :适合只有 AMD 独显,没有核显的用户,开启有利于提高驱动的效率
ecardprops=clover : 启动 weg 对 RX 4xx/5xx,Vega56/64 , RX 5xxx 的优化,RX 4xx/5xx 使用白果显卡名称,这个参数只支持 Clover 平台,OC 平台不支持
ecardprops=ignore : 禁用 weg 对 RX 4xx/5xx,Vega56/64, RX 5xxx 的优化
“不设置任何参数” : 启动 weg 对 RX 4xx/5xx,Vega56/64 , RX 5xxx 的优化,只使用 weg 默认的名称识别功能,适合Intel 核显和 AMD 独显的用户
举例
I3/I5/I7(没有核显) E3/E5 的用户:至少开启 cardtype=ecardonly
I3/I5/I7 (有核显)具备 AMD 独立显卡,可以什么参数都不用
Tips:
cardtype=igfxonly 和 cardtype=ecardonly 互斥,不能同时使用
ecardprops=clover 和 ecardprops=ignore 互斥,不能同时使用
Clover 注入设置 FrameBuffer Connector 的名称
接口布局名称,可以根据自己实际需要在网络上查找 (ASUS RX4xx/5xx 如果显卡是 2HDMI+2DP绕行):
RX 4xx/ 5xx 3DP+1HDMI+1DVI 使用:Guariba
RX 4xx/ 5xx 2DP+2HDMI+1DVI 使用:Orinoco
RX 460/560 1DP+1HDMI+1DVI 使用:Acre
Vega 56/64 3DP+1*HDMI 使用:Kamarang
OC 注入设置 FrameBuffer Connector 的名称
需要自己在 OC 中设置相关名称,这里就不演示,网上很多教程。
OC 平台下丢失 metal 功能集原因
原因是 OC 平台启动的时候,可能判断了显卡的类型,然后在系统的 IO 树上注册了 FamilyName,导致 FamilyName 和 model 内容不匹配丢失metal 功能集。 Clover 启动的时候虽然也做了判断,但是不会强行注入 FamilyName,所以没有这个问题。
效果演示
Clover 平台下启动了 ecardprops=clover 参数效果:
Clover 和 OC 平台默认参数启动效果:
下载地址
bug 修复历史清单:
- 修复 vega56/64 metal 丢功能集的问题
- 修复 RX4xx/5xx metal 丢功能集的问题
- 修复核显的 1.2g 在某些情况下失效
增加新功能
支持 RX 4xx/5xx,Vega56/64 配置参数自动判断加载,无需手动注入 Framebuffer Name ,也能实现类试的性能。
支持 RX5500/5600/5700 系列显卡, 修复10.15.4 下性能降低的问题
支持 Radeon VII 显卡
链接:https://pan.baidu.com/s/14J-WrT5-ynRG_QiFww8Y9w 密码:xe0s
声明:
pcbeta 的中文章链接到此文档
http://bbs.pcbeta.com/viewthread-1847847-1-1.html