Win10论坛

Win10正式版系统下载主题平板

重定义Modern UI,打造完美Windows全新体验

Windows10下载|安装|新手宝典|必备软件

搜索
查看: 10652|回复: 69

[核显] Intel HD Graphics 修正DVMT 完美免驱 [复制链接]

Rank: 2Rank: 2

UID
4843003
帖子
182
PB币
215
贡献
0
技术
0
活跃
351
发表于 2018-7-18 18:42:41 |显示全部楼层

最近在给一台DELL OptiPlex 7040 PC安装黑苹果, intel i7-6700的CPU, Intel HD Graphics 530的集成显卡, 用的Lilu.kext+IntelGraphicsFixup.kext+IntelGraphicsDVMTFixup.kext来驱动显卡; 使用起来一切正常, 除了开机启动二阶段花屏(八苹果闪烁).

其实对于macOS来说, 是可以原生驱动HD 530, iMac17,1用的就是i7-6700K, HD 530显卡,

而IntelGraphicsFixup.kext+IntelGraphicsDVMTFixup.kext本身并不是能驱动, 只是系统启动前对macOS原生驱动"com.apple.driver.AppleIntelSKLGraphicsFramebuffer"打补丁而已.

如果主板BIOS里有DVMT的选项的话, 把DVMT设置为64~128MB(e.g. 96MB)的话, 是可以免驱启动, 完全不需要使用IntelGraphics*Fixup这两个hotpatch的.

可是主板BIOS里没有DVMT选项呢? 其实大部分BIOS都是有DVMT选项的, 只是并不能通过GUI的方式设置而已; 接下来, 就是介绍如何找到DVMT选项, 并通过hack的方式来修改BIOS(隐藏的选项).



·      首先需要提取主板的BIOS ROM, 我的主要是AMBIOS, 所以我通过AMI Flasher utility提取

很简单, 直接点击Save保存即可, 得到bios.rom

·      BIOS的固件里, 有一个模块记录着这BIOS所有的配置项, 及每个配置项允许的取值; 这里可以通过UEFITool打开这个rom文件, 然后通过unicode搜索"DVMT", 定位到存储这个配置的模块, 另存为setup.bin

·      提取到了setup.bin, 可这个模块是二进制的, 可以通过IFR-Extractor将此BIOS模块转换为可读的文本Setup.txt

·      打开Setup.txt(里面不仅仅有DVMT配置项目, 还有各种有用的如"CFG lock"), 找到DVMT Pre-Allocated配置项目, 你到看到这个配置项的VarOffset(理解为地址吧), 如这里的0x350, 以及DVMT的所有的取值, 如0x3 表示96MB

·      可是我们要如何更新BIOS里的DVMT这个设置值呢? 刷固件吗? 不, 你开机启动时修改个BIOS设置超频什么的也不用重刷固件呀的, 因为这些值存储在CMOS里; 这里我们可以通过EFI-shell执行一个命令来更新任意配置项的设置(包括任意不可以通过BIOS GUI里没有的配置)

·      解压EFI-shell.zip到U盘的任意FAT32分区根目录(e.g. 分区:/EFI/BOOT/bootx64.efi),然后重启用UEFI方式启动这个U盘, 进入到grub命令行, 执行setup_var 0x350 0x3 即可

读取: setup_var 0x350

写入: setup_var 0x350 0x3



设置0x350时忘记拍照的, 这里是在禁用CFG lock, 自己脑补一下即可

·      噔噔噔噔, 你已成功更新DVMT为96MB, 此时可以删除掉显卡的DVMT补丁IntelGraphicsDVMTFixup.kext,正常来说, 也可以免驱了, 删除掉IntelGraphicsFixup.kext也可以正常免驱启动, 更不会有开机八苹果闪烁了!

BTW, 你也可以用上述方法去修改任意你想但无法直接GUI选择的BIOS设置哦, 如涉及到CPU电源管理的CFG lock (MSR 0xE2)配置哦! 感觉黑苹果的玩法越来越多了, 以前用软件hotpatch, 现在直接hack BIOS



现在只需要下面这几个kext就可以完美驱动黑苹果了啦




引用链接:

https://github.com/irelandKen/DELL-OptiPlex-7040-Clover

https://www.firewolf.science/2015/04/guide-intel-hd-graphics-5500-on-os-x-yosemite-10-10-3/

https://github.com/acidanthera/AptioFixPkg


附件: 你需要登录才可以下载或查看附件。没有帐号?注册
3

查看全部评分

Rank: 5Rank: 5Rank: 5

UID
771963
帖子
544
PB币
810
贡献
0
技术
0
活跃
1589
发表于 2018-7-18 19:21:41 来自手机 |显示全部楼层
好帖!Mark待撸~~~

Rank: 2Rank: 2

UID
4843003
帖子
182
PB币
215
贡献
0
技术
0
活跃
351
发表于 2018-7-18 19:25:40 |显示全部楼层
补充一下文中涉及到的工具

# Session One: 提取BIOS配置表
AMI Flasher utility                        https://www.wimsbios.com/amiflasher.jsp
UEFITool                                        https://github.com/LongSoft/UEFITool/releases
IFR-Extractor                                https://github.com/LongSoft/Universal-IFR-Extractor/releases

# Session Two: 修改BIOS/CMOS
EFI-shell                https://github.com/irelandKen/DELL-OptiPlex-7040-Clover/blob/master/EFI-shell.zip

Rank: 5Rank: 5Rank: 5

UID
4584130
帖子
785
PB币
0
贡献
0
技术
0
活跃
628
发表于 2018-7-18 19:29:21 |显示全部楼层
不错的教程

Rank: 2Rank: 2

UID
4843003
帖子
182
PB币
215
贡献
0
技术
0
活跃
351
发表于 2018-7-18 19:45:57 来自手机 |显示全部楼层
新人第一帖,不火没有道理!大伙赶紧撸起,给我反馈看看!

就是我自己

Rank: 9

UID
153027
帖子
4695
PB币
6959
贡献
0
技术
0
活跃
1382
发表于 2018-7-18 20:13:38 |显示全部楼层
关键HD530无法正常休眠唤醒啊

点评

指有你  是啊,抹不掉的痛点~~~  发表于 2018-7-19 12:54

Rank: 2Rank: 2

UID
4465627
帖子
252
PB币
67
贡献
0
技术
0
活跃
1071
发表于 2018-7-18 20:30:07 |显示全部楼层
Option: 0M, Value: 0x0 {09 07 3D 11 00 00 00}
0x9CBD2                                 Option: 32M, Value: 0x1 {09 07 3E 11 30 00 01}
0x9CBD9                                 Option: 64M, Value: 0x2 {09 07 3F 11 00 00 02}
0x9CBE0                                 Option: 4M, Value: 0xF0 {09 07 40 11 00 00 F0}
0x9CBE7                                 Option: 8M, Value: 0xF1 {09 07 41 11 00 00 F1}
0x9CBEE                                 Option: 12M, Value: 0xF2 {09 07 42 11 00 00 F2}
0x9CBF5                                 Option: 16M, Value: 0xF3 {09 07 43 11 00 00 F3}
0x9CBFC                                 Option: 20M, Value: 0xF4 {09 07 44 11 00 00 F4}
0x9CC03                                 Option: 24M, Value: 0xF5 {09 07 45 11 00 00 F5}
0x9CC0A                                 Option: 28M, Value: 0xF6 {09 07 46 11 00 00 F6}
0x9CC11                                 Option: 32M/F7, Value: 0xF7 {09 07 47 11 00 00 F7}
0x9CC18                                 Option: 36M, Value: 0xF8 {09 07 48 11 00 00 F8}
0x9CC1F                                 Option: 40M, Value: 0xF9 {09 07 49 11 00 00 F9}
0x9CC26                                 Option: 44M, Value: 0xFA {09 07 4A 11 00 00 FA}
0x9CC2D                                 Option: 48M, Value: 0xFB {09 07 4B 11 00 00 FB}
0x9CC34                                 Option: 52M, Value: 0xFC {09 07 4C 11 00 00 FC}
0x9CC3B                                 Option: 56M, Value: 0xFD {09 07 4D 11 00 00 FD}
0x9CC42                                 Option: 60M, Value: 0xFE {09 07 4E 11 00 00 FE}

没有Option: 96M, Value: 0x3怎么办?

Rank: 2Rank: 2

UID
4843003
帖子
182
PB币
215
贡献
0
技术
0
活跃
351
发表于 2018-7-18 21:14:29 来自手机 |显示全部楼层
xtm123456 发表于 2018-7-18 20:30
Option: 0M, Value: 0x0 {09 07 3D 11 00 00 00}
0x9CBD2                                 Option: 32M, Value: 0x1 {09 07 3E 11 30 0 ...

貌似>=64MB也可以,我的主板默认是32MB,直接改96MB,64MB/128MB还没试

Rank: 2Rank: 2

UID
3948296
帖子
233
PB币
136
贡献
0
技术
0
活跃
117
发表于 2018-7-18 21:24:07 |显示全部楼层
修改BIOS达到目的是最直接也最有效的办法,像什么联想白名单,NVME协议等都可以通过刷BIOS达到目标,windows和linux能正常驱动电脑硬件都是靠BIOS,黑苹果如果找到合适的办法也是可以通过BIOS达到最接近白果的效果。

daren

Rank: 5Rank: 5Rank: 5

UID
4725659
帖子
916
PB币
703
贡献
0
技术
0
活跃
1050
发表于 2018-7-18 21:26:51 来自手机 |显示全部楼层
四水哥 发表于 2018-7-18 21:24
修改BIOS达到目的是最直接也最有效的办法,像什么联想白名单,NVME协议等都可以通过刷BIOS达到目标,window ...

并不修改bios,只是调整bios里的设置项,并没有修改bios固件

Rank: 5Rank: 5Rank: 5

UID
4115960
帖子
678
PB币
180
贡献
0
技术
31
活跃
1249
发表于 2018-7-18 21:30:11 |显示全部楼层
笔记本的bios备份失败!!!没办法弄

Rank: 2Rank: 2

UID
4843003
帖子
182
PB币
215
贡献
0
技术
0
活跃
351
发表于 2018-7-18 21:32:59 来自手机 |显示全部楼层
a565109863 发表于 2018-7-18 21:30
笔记本的bios备份失败!!!没办法弄

你可以到官网下载一份对应版本的BIOS升级文件,看看有没有办法提取到其ROM固件

Rank: 5Rank: 5Rank: 5

UID
4673939
帖子
489
PB币
276
贡献
0
技术
0
活跃
839
发表于 2018-7-18 21:34:07 |显示全部楼层
我想知道我的配置怎么设置。。。我的BIOS全解锁了,设置后直接无限重启

Rank: 2Rank: 2

UID
4843003
帖子
182
PB币
215
贡献
0
技术
0
活跃
351
发表于 2018-7-18 21:35:43 来自手机 |显示全部楼层
xtm123456 发表于 2018-7-18 20:30
Option: 0M, Value: 0x0 {09 07 3D 11 00 00 00}
0x9CBD2                                 Option: 32M, Value: 0x1 {09 07 3E 11 30 0 ...

你的BIOS看起来最大只能设置64MB,你试试看,貌似>=64MB就可以了

Rank: 2Rank: 2

UID
4843003
帖子
182
PB币
215
贡献
0
技术
0
活跃
351
发表于 2018-7-18 21:46:50 来自手机 |显示全部楼层
wp8student 发表于 2018-7-18 21:34
我想知道我的配置怎么设置。。。我的BIOS全解锁了,设置后直接无限重启

哈哈,修正了DVTM就不需要IntelGraphicsDVMTfixup.kext了,进一步能否把其它显卡布丁去掉还得看这显卡是否在白苹果里出现过。。

Rank: 2Rank: 2

UID
4843003
帖子
182
PB币
215
贡献
0
技术
0
活跃
351
发表于 2018-7-18 22:06:44 来自手机 |显示全部楼层
wp8student 发表于 2018-7-18 21:34
我想知道我的配置怎么设置。。。我的BIOS全解锁了,设置后直接无限重启

一点点修改,慢慢排除,看看啥原因?

Rank: 7Rank: 7Rank: 7

UID
750326
帖子
2591
PB币
1153
贡献
0
技术
101
活跃
1800
发表于 2018-7-18 22:10:25 来自手机 |显示全部楼层
你好牛逼,顶你

Rank: 5Rank: 5Rank: 5

UID
633087
帖子
617
PB币
176
贡献
0
技术
0
活跃
498
发表于 2018-7-19 07:50:20 |显示全部楼层
谢谢分享

Rank: 7Rank: 7Rank: 7

UID
4660277
帖子
3038
PB币
3051
贡献
0
技术
7
活跃
1317
发表于 2018-7-19 09:26:34 |显示全部楼层
学习一下,感谢分享。

Rank: 7Rank: 7Rank: 7

UID
4641386
帖子
819
PB币
874
贡献
0
技术
35
活跃
1897
发表于 2018-7-19 09:33:40 |显示全部楼层
这个办法很不错!
关闭

站长推荐

已经开启实名认证了哟
这里可以进行实名操作:点我点我点我
回顶部
Copyright (C) 2005-2019 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛 | 电脑硬件 | 安卓软件