zhangchouchou 发表于 2019-3-26 14:12

关于卡卡apfs_module_start及其相关问题讨论及解决办法。

本帖最后由 zhangchouchou 于 2019-8-6 16:01 编辑

先上图:最后一行可能没太电脑卡的不一样,最好的判断办法就是看是否有ACPI:sleep states S3 S4 S5那一段吧。个人判断。
我的电脑dell5488刚买来安装黑苹果没有出现此问题,由于折腾睡眠问题无果,有刚好看到bios更新了,就去更新了一下bios,就出现了这个问题。开机卡在这里,尝试替换上一个版本的dsdt改错放进去就可以开机了。由此判断,肯定是dsdt哪里导致的错误。
后来看到惠普战66安装成功的帖子,提到“发现了RTC引发卡开机的代码部分”。然后就去搜索两个bios版本提取的dsdt搜索RTC对比果真发现不同。如图(图一是华为matebook13原始dsdt和可以正常开机使用的DSDT。图二是我的DELL5488。):


可以发现去掉下面这一段就可以正常开机。我是艳发现也的确如此。后来觉得DSDT碍眼想做个hotpatch解决此问题。但是不太会这个,求助冰水大佬帮我制作hotpatch解决,抛弃dsdt。
我的DELL的RTC部分跟matebook13一样的。我将我的hotpatch给热心的matebook13机友使用,他也抛弃dsdt正常开机了。我由此提出猜想是不是每一个安装黑苹果卡在这里的电脑的电脑都可以通过此方法解决。因为卡在这里的不少人都无法找到老的DSDT进行对比。所以可以试试提取DSDT搜索RTC跟我提供的图片对比看看,然后删掉那一段代码看看是否能够解决此问题。或者直接使用我提供的hotpatch。由于手边没有合适的电脑,只有本人试了此方法,和一个matebook13的机友试了,可以解决问题。最后附上hotpatch。dsdt改错需要自己完成。如果不会改错,发现代码一样的可以直接用我提供的hotpatch。
hotpatch使用须知。解压将RTCfix.aml放到EFI/CLOVER/ACPI/patched。改名参照“更名.plisr”
如图:

Hotpatch文件2019年4月10好更新
经过这几天找到更多卡这里的群友电脑实验发现很多卡这里的都是RTC引起,而且提取的DSDT,RTC那一段都是一样的。由此可以判定这个方法适用于大部分卡这里的机器。后经过八楼提醒采用更名的方法即可解决此问题。抛弃hotpatched,遂更新。
更名方法分两种
1:直接使用文本编辑器修改config。(适合手里没有苹果系统的小白)
推荐使用notepad++打开所使用的config。不用搜索就可以看到,在很前面。找到如图的位置:

<dict>
    <key>Comment</key>
    <string>_STAto XSTA</string>
    <key>Disabled</key>
    <false/>
    <key>Find</key>
    <data>
    X1NUQQ==
    </data>
    <key>Replace</key>
    <data>
    WFNUQQ==
    </data>
    <key>TgtBridge</key>
    <data>
    UlRDXw==
    </data>2:使用Clover configurator添加更名。如图:

Comment: _STAto XSTA
Find: 5F535441
Replace:58535441
TgtBridge:5254435F希望更多人尝试提出意见。




zhangchouchou 发表于 2019-3-26 17:18

顶一下,,,,,

后天幸存者 发表于 2019-4-1 13:12

谢谢楼主分享,刚好一样的问题,我是戴尔灵越5580的

sleele 发表于 2019-4-1 14:00

有试过最新的clover4915版么,好像解决了这个问题

1286603273 发表于 2019-4-1 14:33

战略马克,谢谢楼主分享

zhangchouchou 发表于 2019-4-1 14:36

sleele 发表于 2019-4-1 14:00 https://www.pcbeta.com/static/image/common/back.gif
有试过最新的clover4915版么,好像解决了这个问题

没有呢,通过hotpatch解决了。还没试过更新clover。有空试试。

chendayou11 发表于 2019-4-1 15:44

支持了。。。。

xc233 发表于 2019-4-2 07:41

楼主可以尝试直接将rtc下的_sta重命名为xsta,不需要额外的ssdt,理论上效果一样

oldshuijing 发表于 2019-4-3 19:46

xc233 发表于 2019-4-2 07:41 https://www.pcbeta.com/static/image/common/back.gif
楼主可以尝试直接将rtc下的_sta重命名为xsta,不需要额外的ssdt,理论上效果一样

大侠能再明细一下吗没有看明白 多谢

xc233 发表于 2019-4-3 20:00

oldshuijing 发表于 2019-4-3 19:46 https://www.pcbeta.com/static/image/common/back.gif
大侠能再明细一下吗没有看明白 多谢

这个问题主要是因为在RTC设备没有启用,也就是RTC设备的电源状态_STA方法返回的是0x00,解决方法有几种,按楼主的做法是重命名RTC再创建新的RTC设备,使自己创建的RTC 的_STA返回0x0F(也就是启用设备),但这种方法欠妥,二个ADR(etc)一样的设备可能会出现莫名其妙的问题。最简单做法是直接重命名RTC的_STA为其他名称,这样RTC设备必然是启用了(根据ACPI规定),但是这种重命名可能会给其他SSDT的_STA也改名了,虽然问题不大,但是最稳妥的方式是将_STA方法里的STAS赋值为one,这样是最保险的。

oldshuijing 发表于 2019-4-3 20:25

xc233 发表于 2019-4-3 20:00 https://www.pcbeta.com/static/image/common/back.gif
这个问题主要是因为在RTC设备没有启用,也就是RTC设备的电源状态_STA方法返回的是0x00,解决方法有几种,按 ...

多谢大侠耐心答复 实在我对这个还没摸到庙门大侠说的 俺只能听给大概 没有详细葫芦 画不了瓢哈哈哈

我的是升级BIOS后 卡在这个位置(图借用的)了现在又把BIos刷回来了又正常了

估计也是ACPI问题

我看别网友建议 老BIOS下开机提取 DSDT    然后放到patch下再用新BIOS启动


不知可行否


oldshuijing 发表于 2019-4-3 20:27

sleele 发表于 2019-4-1 14:00 https://www.pcbeta.com/static/image/common/back.gif
有试过最新的clover4915版么,好像解决了这个问题

目前用的就是4915还是不行 呜呜

xc233 发表于 2019-4-3 20:30

oldshuijing 发表于 2019-4-3 20:25 https://www.pcbeta.com/static/image/common/back.gif
多谢大侠耐心答复 实在我对这个还没摸到庙门大侠说的 俺只能听给大概 没有详细葫芦 画不了瓢哈哈哈
...

那楼主的方式你试了没用?

oldshuijing 发表于 2019-4-3 20:35

本帖最后由 oldshuijing 于 2019-4-3 22:09 编辑

xc233 发表于 2019-4-3 20:30 https://www.pcbeta.com/static/image/common/back.gif
那楼主的方式你试了没用?
更新一下 刚才就用楼主的文件 成功了 哈哈
我的主板技嘉Z370 WIFIITX小板


多谢楼主

幸亏我的代码和你一样另外 能告知DSDT改错具体咋弄啊呜呜   用MaciASL 修改你的aml报错呜呜






oldshuijing 发表于 2019-4-3 22:17

更新一下 刚才就用楼主的文件 成功了 哈哈
我的主板技嘉Z370 WIFIITX小板


多谢楼主

幸亏我的代码和你一样另外 能告知DSDT改错具体咋弄啊呜呜   用MaciASL 修改你的aml报错呜呜

xc233 发表于 2019-4-3 22:24

oldshuijing 发表于 2019-4-3 20:35 https://www.pcbeta.com/static/image/common/back.gif
更新一下 刚才就用楼主的文件 成功了 哈哈
我的主板技嘉Z370 WIFIITX小板



好了就恭喜层主啦

zhangchouchou 发表于 2019-4-4 02:35

oldshuijing 发表于 2019-4-3 20:35
更新一下 刚才就用楼主的文件 成功了 哈哈
我的主板技嘉Z370 WIFIITX小板



如果你不想用hotpatch,就将新的dsdt改错,rtc那一段的方法改为老dsdt那样就行

zhangchouchou 发表于 2019-4-4 02:38

xc233 发表于 2019-4-2 07:41
楼主可以尝试直接将rtc下的_sta重命名为xsta,不需要额外的ssdt,理论上效果一样

我就是不想用dsdt,用dsdt直接把多出来的那一段删掉就行。

xc233 发表于 2019-4-4 07:02

zhangchouchou 发表于 2019-4-4 02:38 https://www.pcbeta.com/static/image/common/back.gif
我就是不想用dsdt,用dsdt直接把多出来的那一段删掉就行。

是的啊,直接改rtc的sta也不需要动dsdt啊,config加一个sta重命名即可,不需要ssdt

zhangchouchou 发表于 2019-4-4 07:54

xc233 发表于 2019-4-4 07:02 https://www.pcbeta.com/static/image/common/back.gif
是的啊,直接改rtc的sta也不需要动dsdt啊,config加一个sta重命名即可,不需要ssdt

经过测试这个方法效果不太理想,虽然可以开机,但是导致我的触摸板失效。重建缓存也不行了。
页: [1] 2 3 4 5 6 7
查看完整版本: 关于卡卡apfs_module_start及其相关问题讨论及解决办法。