Okay? and how am I supposed to do anything about it without any debugging information? You must at least provide the KP log (with debug symbols enabled in Clover) before I can fix this.
KP Log: https://pastebin.com/g2jyHCt2
This is the log I get from High Sierra (The system reboots because of a problem) after failing to boot from Mojave. I hope this suffices.
It is unlikely that I will be able to fix this until Apple releases the source code for the version of XNU that Mojave is using. Something has changed in IOCommandGate and I need to see the code to understand what it is.
Can you provide the KP log with "debug symbols" enabled in Clover please?
Not sure if I did it correctly but I added keepsyms=1 to Clover arguments and this is the log I get after KP reboot. https://pastebin.com/VR93XJLU
Same experience here :c if you need any other logs/anything I can provide them!
yeah, i’m facing same problem with mojave.
While I appreciate people pointing out that this is an issue they would like fixed I must reiterate what I said before: there is unfortunately nothing I can do to fix this problem until Apple releases the XNU source code that is being used in Mojave. There has been a breaking change in a certain core part of the OS and I have to wait to see what has changed before I can understand how to fix it.
Until this problem is not fixed on the new kext, v1.0.4 works fine on my laptop under Mojave
It looks like IOCommandGate::commandSleep was changed:
IOReturn IOCommandGate::commandSleep(void *event, UInt32 interruptible)
{
if (!workLoop->inGate())
return kIOReturnNotPermitted;
return sleepGate(event, interruptible);
}
10.14 DP1:
IOReturn IOCommandGate::commandSleep(void *event, UInt32 interruptible)
{
if (!workLoop->inGate())
panic("invalid commandSleep while not holding the gate");
return sleepGate(event, interruptible);
}
@alexandred i can confirm that i have no Kernel Panic on macOS Mojave Dev Beta 1.
Maybe you guys haven't used the patches to disable I2C of Apple.
You can find the link to the patch down below which is available on Rehabman laptop config repo:
(https://github.com/RehabMan/OS-X-Clover-Laptop-Config/commit/fca827f4acc8d569988895cc9f11697e64a89e0b)
or find it below:
KextsToPatch
Comment
Prevent Apple I2C kexts from attaching to I2C controllers, credit CoolStar
Name
com.apple.driver.AppleIntelLpssI2C
Find
SU9LaXQ=
Replace
SU9LaXM=
InfoPlistPatch
Comment
Prevent Apple I2C kexts from attaching to I2C controllers, credit CoolStar
Name
com.apple.driver.AppleIntelLpssI2CController
Find
SU9LaXQ=
Replace
SU9LaXM=
InfoPlistPatch
Also after adding these patches, you can install the respective kexts on /Library/Extensions/ and they will load properly even from there.
Workaround for 10.14:
diff --git a/VoodooI2CHID/VoodooI2CHIDDevice.cpp b/VoodooI2CHID/VoodooI2CHIDDevice.cpp
index 4bb06de..15c58f5 100644
--- a/VoodooI2CHID/VoodooI2CHIDDevice.cpp
+++ b/VoodooI2CHID/VoodooI2CHIDDevice.cpp
@@ -321,12 +321,14 @@ IOReturn VoodooI2CHIDDevice::resetHIDDevice() {
read_in_progress = false;
+ if (work_loop->inGate()) {
IOReturn sleep = command_gate->commandSleep(&reset_event, absolute_time);
if (sleep == THREAD_TIMED_OUT) {
IOLog("%s::%s Timeout waiting for device to complete host initiated reset\n", getName(), name);
return kIOReturnTimeout;
}
+ }
return kIOReturnSuccess;
}
@al3xtjames Can confirm it works. Thanks a lot!
@al3xtjames I think the issue here is that if the gate is not held then we simply don't wait for the device to reset (which is important and all I2C HID devices are allowed to take up to 1 second for their reset procedure). In this we may end up issuing state changes to the device (such as telling it to go into the precision multitouch protocol) and the device will end up ignoring such a command. What we need to do is wait until we can get a lock on the gate, for example:
read_in_progress = false;
if (work_loop->tryCloseGate()) {
IOReturn sleep = command_gate->commandSleep(&reset_event, absolute_time);
if (sleep == THREAD_TIMED_OUT) {
IOLog("%s::%s Timeout waiting for device to complete host initiated reset\n", getName(), name);
return kIOReturnTimeout;
}
} else {
## spin thread here (maybe for a max of 2 seconds?) untill we can get a lock on the gate and then try again else return kIOReturnError
}
return kIOReturnSuccess;
}
It works in mojave beta public?
please add support for mojave 🙏🏻, thanks in advance bro
@scottsanett
Can you Upload your Patched vodooi2c kext please?
@Kmbeatz I can share mine, which can be used in Mojave. Thanks for @al3xtjames 's work.
VoodooI2C v2.0.3.zip
UPDATE: Today(Sep 19th, 2018), alex released 2.1 version and I built one for Mojave too. Tested on XiaoMi-Pro.
VoodooI2C v2.1.zip
On Sep 21st, 2018, alex released 2.1.1 version and I built one again for Mojave. Tested on XiaoMi-Pro.
VoodooI2C v2.1.1.zip
Thank you Stevezhengshiqi. Have a nice Day.
Thank Alex and thank Steve, it’s works 👍
Great @stevezhengshiqi it works on 10.14.
One thing it looks like it's from 2.0.3 where cursor is to chaotic. On 2.0.2 navigating is much more smooth and more precise.
Thank you
today 10.14 public beta 3 stopped working at all.
@gulios I haven't updated to pb3 yet. Maybe rebuild kext cache can work?
Yes with 10.14 PB 3 Random KP. With 10.14 PB2 no Problem with Kext from Steve.
I don't know why you guys are still saying you have issues.
All you have to do is use the kernelandkextpatches (2patches) to disable apple i2c drivers (which you can find them on rehabman laptop config repo - config_patches.plist file).
No issues here since the first day i started using the kext on my Lenovo v330-15ikb, since dev beta 1 of macos mojave till today pb3.
Hi Besnik.
I have this Patches in Clover too but After PB3 Kernel Panic.
With Mojave PB1 & 2 no problem with Patched Kext from Steve above.
I am closing this as everytime you guys comment on it, I get an email (and I am not going to unsubscribe from anything since I expect important questions on here).
There is nothing to be done for Mojave support until Mojave goes gold. I am not going to spend any time on it until then and all this discussion towards it (with people +1'ing support for Mojave not helping) is fruitless for the time being.
I also have the same problem. My trackpad also can't work on the mojave, but now it works, there is a small problem when clicking on the left. but that doesn't matter to me and I thank you alex and steve
same problem with Mojave kernel panic with the latest release version VoodooI2CHID.
wait for some solution.
@gujiangjiang Hi, you can try my release above.
it can boot but it will show 5 countries error when reboot.
@gujiangjiang It is just a temporary fix, and supports a limit number of devices. We can wait for alex's new release.
@stevezhengshiqi Thanks for your fix for us and we can wait for a new release to deal with Mojave.
me too, kernel panic after update the latest kext on mojave 10.14 beta11
thanks for all your support
@Kmbeatz I can share mine, which can be used in Mojave. Thanks for @al3xtjames 's work.
VoodooI2C v2.0.3.zipUPDATE: Today(Sep 19th, 2018), alex released 2.1 version and I built one for Mojave too. Tested on XiaoMi-Pro.
VoodooI2C v2.1.zipOn Sep 21st, 2018, alex released 2.1.1 version and I built one again for Mojave. Tested on XiaoMi-Pro.
VoodooI2C v2.1.1.zip
Pls keep the good work. wcom 4002 and ftsc1000 touchscreen and pen
You may download version 2.1.2, which resolves the Mojave panic on boot from the releases page:
https://github.com/alexandred/VoodooI2C/releases
what's this? the author deceives people, and you send it to me, because of his drivers people are burning up computers, and you support !! ashamed 2018-09-26 5:01 GMT+03:00 Ben Raz notifications@github.com:
…
I'm afraid you don't even know how GitHub works. You may leave now. The drivers do NOT burn others notebooks. Stop throwing false accusations and spamming literally everyone's mailboxes. Thank you.
I've reported your account, https://github.com/xuhadixu and https://github.com/pusolexuze
Stop spamming literally all issues/PR on this repo with nonsense content
You may download version 2.1.2, which resolves the Mojave panic on boot from the releases page:
https://github.com/alexandred/VoodooI2C/releases
release 2.1.2 seems to randomly hang during boot in my system. I'll test it more later on.
wont boot the latest release voodooi2c
Get Outlook for Androidhttps://aka.ms/ghei36
From: おとめ座 ひなたぼっこ notifications@github.com
Sent: Wednesday, September 26, 2018 9:50:02 PM
To: alexandred/VoodooI2C
Cc: Dedi Cahyadi; Comment
Subject: Re: [alexandred/VoodooI2C] Kernel panic on startup with macOS Mojave Beta 1 (#70)
You may download version 2.1.2, which resolves the Mojave panic on boot from the releases page:
https://github.com/alexandred/VoodooI2C/releases
release 2.1.2 seems to randomly hang during boot in my system. I'll test it more later on.
―
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://github.com/alexandred/VoodooI2C/issues/70#issuecomment-424743976, or mute the threadhttps://github.com/notifications/unsubscribe-auth/Akks_krDNeknOmxZVGq0E3LoTO_SJO5Uks5ue5QagaJpZM4UamAJ.
thank you now my trackpad is fully functional Voodooi2c V2.1.1. Once again I thank you
@Kmbeatz I can share mine, which can be used in Mojave. Thanks for @al3xtjames 's work.
VoodooI2C v2.0.3.zipUPDATE: Today(Sep 19th, 2018), alex released 2.1 version and I built one for Mojave too. Tested on XiaoMi-Pro.
VoodooI2C v2.1.zipOn Sep 21st, 2018, alex released 2.1.1 version and I built one again for Mojave. Tested on XiaoMi-Pro.
VoodooI2C v2.1.1.zip
Thank you @stevezhengshiqi for your compile. Your comment should be a sticky posting all by itself, rather than buried in this closed thread..
Most helpful comment
@Kmbeatz I can share mine, which can be used in Mojave. Thanks for @al3xtjames 's work.
VoodooI2C v2.0.3.zip
UPDATE: Today(Sep 19th, 2018), alex released 2.1 version and I built one for Mojave too. Tested on XiaoMi-Pro.
VoodooI2C v2.1.zip
On Sep 21st, 2018, alex released 2.1.1 version and I built one again for Mojave. Tested on XiaoMi-Pro.
VoodooI2C v2.1.1.zip