联想M910Q 黑苹果折腾系列③ Hackintosh opencore完善 EFI分享

2020-06-17 10:36:12 19点赞 110收藏 53评论

本教程参考:

  • 司波图 黑苹果系列视频教程

  • XJN's Blog

  • OpenCore Desktop Guide

  • 远景爬贴

免责声明:

我是5月17买的机器,5月18司波图就发了M920Q黑苹果视频教程,所以起初主要参考司波图M920Q黑苹果视频教程。但是M910Q和M920Q毕竟不是一个平台,涉及到魔改操作,而且在我实际折腾过程中发现一些不同之处,甚至原则性的错误,参考了XJN大佬的博客,以及官方guide,远景大量爬贴后有了本文。当然本人也是小白一枚,有错误的地方在所难免,对此造成的任何损失请自行负责,本文仅做折腾分享,感谢理解

大体思路和司波图相同,司波图把过程讲的很清楚,建议多观看几遍视频教程。我这里不讲过程,着重讲一下M920Q和M910Q的区别以及一些操作的原理。

有关EC屏蔽

首先还是提取DSDT,并反编译为dsl文件,用到SSDTTime和iasl。(可以下载司波图整理的文件包,能用到的东西基本上都有)


联想M910Q 黑苹果折腾系列③ Hackintosh opencore完善 EFI分享


直接用文本编辑器打开,推荐notepad++


联想M910Q 黑苹果折腾系列③ Hackintosh opencore完善 EFI分享


搜索关键词:PNP0C09


联想M910Q 黑苹果折腾系列③ Hackintosh opencore完善 EFI分享

可以看到有关EC部分系统默认屏蔽的,所以就不用FakeEC生成SSDT-EC.aml,这里司波图没有查验这一步直接生成的,可能并不影响,但是opencore尽量少用SSDT补丁及更名补丁,有利于启动速度以及系统稳定性,我作为一个强迫症必须要知道。

有关AWAC时钟


联想M910Q 黑苹果折腾系列③ Hackintosh opencore完善 EFI分享

继续搜索关键词:AWAC ,搜索不到说明M910Q主板没有用到AWAC时钟,用不到SSDT-AWAC去切换时钟,这里是和M920Q不同的地方。

有关NVRAM:

NVRAM Testing: You can test if your NVRAM is working by running the following Terminal command and rebooting: sudo nvram TestVar=HelloWorld; once you reboot, run sudo nvram -p | grep 'TestVar'; if you see a result, your NVRAM is working; if not, your NVRAM is broken and needs to be fixed, or otherwise iMessage won't work; after testing, you can delete the TestVar variable by running sudo nvram -d TestVar


联想M910Q 黑苹果折腾系列③ Hackintosh opencore完善 EFI分享

输入命令:sudo nvram TestVar=HelloWorld; 写入一个TestVar变量到NVRAM,重启电脑


联想M910Q 黑苹果折腾系列③ Hackintosh opencore完善 EFI分享

输入命令:sudo nvram -p | grep 'TestVar'; 可以看到返回结果HelloWorld说明我们的主板原生支持NVRAM。

有关SSDT:


联想M910Q 黑苹果折腾系列③ Hackintosh opencore完善 EFI分享

  • SSDT-PLUG:用于加载原生电源管理,这里我们要用到。

  • SSDT-EC-USBX:用于屏蔽EC和修正USB供电的,我们EC不用屏蔽,而且强烈建议修正USB供电不要使用SSDT补丁,Xjn大佬解释是opencore没有判断win还是mac系统,双系统特别注意。经过我实测定制USB接口以后,生成的USBPorts.kext里面有修正USB供电代码,USB供电也正常,所以我们用不到这个。

  • SSDT-AWAC:用于切换RTC时钟,我们用不上。

  • SSDT-PMC:用于300系主板使用原生NVRAM,实测M910Q支持原生NVRAM,所以我们也用不上。


联想M910Q 黑苹果折腾系列③ Hackintosh opencore完善 EFI分享

所以SSDT time用到的就提取SSDT,然后按 3 生成SSDT-PLUG。

有关CFGLock解锁

我们BIOS没有CFGLock的开关,所以用到opencore的工具CFGLock.efi,这个我的EFI里面会提供


联想M910Q 黑苹果折腾系列③ Hackintosh opencore完善 EFI分享

opencore启动界面选CFGLock.efi,进入工具。


联想M910Q 黑苹果折腾系列③ Hackintosh opencore完善 EFI分享

工具会自动识别CFGLock状态以及地址,按Y即可自动解锁。(我这里是解锁好的,是不是比司波图那个简便很多?)

有关驱动文件:


联想M910Q 黑苹果折腾系列③ Hackintosh opencore完善 EFI分享

我用到的驱动文件如图所示,作用如下:

  • AppleALC.kext:声卡驱动

  • Innie.kext:lilu插件,解决nvme识别成外置磁盘,M910Q有这个问题。

  • IntelMausi.kext:Intel网卡驱动

  • Lilu.kext:底层依赖

  • NVMeFix.kext:为NVME硬盘增加ASPT属性来保证节电

  • SMCProcessor.kext:VirtualSMC插件,CPU核传感器

  • SMCSuperIO.kext:VirtualSMC插件, IO传感器

  • USBPorts.kext:USB定制驱动

  • VirtualSMC.kext:传感器驱动依赖

  • WhateverGreen.kext:核显&显卡驱动

驱动文件除了常规的一些网卡声卡驱动,要注意的是Innie.kext 这个插件能解决nvme识别成外置黄盘,opencore有ExternalDiskIcons选项,实测不起作用。

有关USB定制:

USB定制教程黑果小兵有详细的视频教程,但是方法比较复杂,现在hackintool可以有更简单的方法:

驱动里面加载Usbinjectall.kext,重启后打开hackintool,定位到USB项目。


联想M910Q 黑苹果折腾系列③ Hackintosh opencore完善 EFI分享

  • 用USB2设备挨个插USB口,总共6个USB口,识别7个名称HS开头的USB2设备,因为有一个网卡蓝牙用到的端口,设置为USB2类型。

  • 用USB3设备挨个插USB口,识别到6个名称SS开头的USB3设备。

  • 删除多余的接口,然后把鼠标键盘和蓝牙所在USB口连接器类型设为internal(内建)。

  • 点击下面图标最后一个导出。


联想M910Q 黑苹果折腾系列③ Hackintosh opencore完善 EFI分享

这里会给到5个文件,我们只用得到USBPorts.kext替换Usbinjectall.kext


联想M910Q 黑苹果折腾系列③ Hackintosh opencore完善 EFI分享

打开USBPorts.kext包里面的info.plist可以看到有修正USB电源相关的代码,所以SSDT-USBX.aml和类似于USBPower.kext的东西用不着。

SSDT-UIAC.aml和USBPorts.kext端口定义是重复的,用不着放两个,上文提到过原则上SSDT尽量少用,只用USBPorts.kext就够了。我看过司波图的EFI,三个文件都丢进去了,咋说呢不一定会有冲突,系统加载速度可能影响也不大,但是强迫症忍不了,不够精致。

有关睡眠

这台机器现在唯一的问题就是睡眠了,折腾了许久真的搞不定,Wake reason一直是XDCI,我猜测是魔改有懂了BIOS ME模块,但是有说没有魔改的M910Q也不行,当然不排除其他地方原因,希望有大神能完善。

有关EFI

EFI我放到GitHub了,有更新会推送,有需要的直接去下载:

展开 收起
53评论

  • 精彩
  • 最新
  • 写得很好👍。不过睡眠真的是一个很重要的功能,一直开着又不行,老是开关机的话每次开机都要重新打开一大堆软件又不方便……

    校验提示文案

    提交
    是啊,有点想升级920或者Dell 5060了

    校验提示文案

    提交
    没看到EFI的下载链接啊,伸手党想下载个研究下。

    校验提示文案

    提交
    还有17条回复
    收起所有回复
  • CFGlock.efi是通用的吗?还是只有这个机子能用?

    校验提示文案

    提交
    通用的,不过其他主板我也没测试过哦

    校验提示文案

    提交
    收起所有回复
  • 太好了写的太好了

    校验提示文案

    提交
    感谢支持!

    校验提示文案

    提交
    收起所有回复
  • 您好,我也是的m910q,用您的efi,hdmi扩充口连显示器黑屏,我按司波图的方法在hackintool中确定了它对应索引3,但是怎么改总线id都一样黑屏。而且两个dp用转接口转hdmi也一样黑屏。。。。。请问您知道怎么搞吗?

    校验提示文案

    提交
    我没有定制HDMI接口的,用的vga接口,当时没有dp显示器,现在机器已经出了,所以你自己研究研究哦

    校验提示文案

    提交
    已解决,司波图的方法改没错,但是要自己升级lilu和whatevergreen

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 楼主,我也是这个机器,用你的efi文件安装非常好用,但是也有几个问题请假
    1.能否升级oc到0.6.3,你这是旧版本的
    2.我装过一次10.15.7后,再也没法退回10.15.5了,这个要怎么办?
    3.你的nvme从看到苹果图标到登陆界面要多久啊,我好像要接近30秒,怎么都不如win10

    校验提示文案

    提交
    这机器出掉很久了哦,OC升级的话按官方文档配置就没问题了。我开机速度正常,十来秒吧

    校验提示文案

    提交
    收起所有回复
  • m710q,qnct魔改cpu能用你的efi么

    校验提示文案

    提交
    qnct是哪个CPU,630核显应该都可以

    校验提示文案

    提交
    笔记本8850h魔改1151桌面cpu,试过了,不知道什么原因卡代码,磁盘工具都见不到

    校验提示文案

    提交
    还有6条回复
    收起所有回复
  • 关于验证主板是否支持NvRAM,楼主给出的方法是在macos的命令行下执行命令,问题我的主板还没安装黑果呢,我咋“回到未来”去执行这个验证命令呢? [皱眉] [皱眉] [皱眉]

    校验提示文案

    提交
    这是efi完善教程,不是黑苹果安装教程,看清楚

    校验提示文案

    提交
    收起所有回复
  • 好像有最新的bios了,请我下opencore都是一样的么?只是导入不一样的EFI文件,小白一个呢

    校验提示文案

    提交
    建议参照opencore官方文档配置,我那个efi版本很老了,新系统不一定支持哈

    校验提示文案

    提交
    收起所有回复
  • 帮顶一下,虽然我看不懂 [神价格]

    校验提示文案

    提交
  • 在用nuc8非常完美

    校验提示文案

    提交
  • 没有awac不是需要使用rc补丁吗

    校验提示文案

    提交
  • cfglock.efi是个好工具 不过有些主板通过命令修改没用 推荐另外一个工具ru.efi 操作麻烦很多

    校验提示文案

    提交
  • 我的会卡在,是怎么回事
    com.apple.AppleFSCompressionTypeDataless load succeeded
    root

    校验提示文案

    提交
  • @折了个腾 请问920q或者720q可以完美睡眠吗?

    校验提示文案

    提交
  • 正在折腾黑苹果。有一些关键的地方说的很详细,学到不少。

    校验提示文案

    提交
  • efi连接在哪

    校验提示文案

    提交
  • 你好,GitHub你这里的名字,或者网址能给下吗?谢谢

    校验提示文案

    提交
  • 大佬,你的bios文件能分享下不?不能私信。

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
相关好价
最新文章 热门文章
110
扫一下,分享更方便,购买更轻松