OC 卡 UEFI 启动图/ 卡 connectting Drivers
用 OpenCore(OC) 准备装黑苹果时,发现进不了OC的菜单
一直卡在UEFI启动图那里。
问题描述
然后把 OpenCore 及所有相关的换成 Debug 版本,并把OC 日志级别调到最高
如果发现卡在 HdaControllerInitPciHw(): controller version 0.0
这里
当然如果日志级别没调到最高,可能看到的是卡在
OC: Connecting drivers...
12:906 00:231 OCABC: MAT support is 0
13:194 00:287 OC: Driver OpenRuntime.efi at 4 is successfully loaded!
13:431 00:236 OC: Driver PartitionDxe.efi at 5 is being loaded...
13:676 00:245 OCABC: Recovering trashed GetMemoryMap pointer
13:914 00:237 OC: Driver PartitionDxe.efi at 5 is successfully loaded!
14:159 00:244 OC: Driver PartitionDxe.efi at 5 needs connection.
14:406 00:247 OC: Connecting drivers...
14:561 00:154 HDA: Starting for C84D5298
14:860 00:299 HdaControllerInitPciHw(): controller version 0.0
后面就都是空字符了
这里很明显 HDA控制器版本是 0.0
,哪有版本号是全零的,绝对有问题。
于是我用另一台机子测试,刚好可以正常加载该声卡驱动的,日志里显示的 HDA控制器版本是1.0
之类的
16:617 00:345 OC: Connecting drivers...
17:016 00:399 HDA: Starting for C657BF18
17:278 00:261 HdaControllerInitPciHw(): controller version 1.0
17:587 00:308 HdaControllerInitPciHw(): capabilities:
64-bit: Yes Serial Data Out Signals: 0
17:864 00:277 Bidir streams: 0 Input streams: 0 Output streams: 2
18:220 00:356 HdaControllerGetName(): controller is Intel Ivy Bridge/Haswell HD Audio Controller
18:650 00:429 HdaControllerInstallProtocols(): start
19:027 00:376 Gotten here
后面还有很多日志
如果没用 Debug 版本,你只能看到日志里都是空字符 (即0x00 )
然后我去借了群里别人 4 代机的配置,用
BeyondCompare
这个软件对比两个文本,调: 规则-对齐-Myers O(ND) 对准
虽然有几个属性值不同,但是和声卡相关的不同配置却有一个 驱动加载的地方,一下子就找到了重点。
解决方案
请检查你 config.plist 里的 UEFI-Driver里是不是加载了声卡驱动(如),有的话请删掉
<string>AudioDxe.efi</string>
而官方文档Haswell原文是这么写的
也就是说:作为安装盘,只应该加载 HfsPlus.efi
和 OpenRuntime.efi
原因分析及其后续优化
那台不能加载音频驱动的机子,拔掉独显 HD7770 之后也能正常加载音频驱动,所以应该是 AMD 独显的音频没有合适的驱动加载导致失败。看了AppleALC支持列表,确实如此
最后,附上三个日志文件
HDAver0_ 开头的是因不能加载音频驱动而失败的;HDAver1_ 是能加载了音频驱动的另一台机子;H81m_NowOK_ 是取消加载音频驱动后正常进入OC的日志。
最后,日志里还有卡EB问题,259:110 04:121 AAPL: [EB|#LOG:EXITBS:START] 2020-07-16T19:34:47
解决见我帖子 OC 常见问题解决方案(译自官方文档)_卡在 [EB|#LOG:EXITBS:START]