Contribute
Register

[Guide] Lenovo Thinkpad T440S using Clover UEFI hotpatch

Status
Not open for further replies.
Has anyone tested the headphone jack with the latest files from the repo? Audio (speakers) works just fine, but I have issues with no playback from the headphone jack. I made sure to run the install.sh to install the new ALCPlugFix. The only changes I made to config.plist was to copy over my previous SMBIOS configuration using a text editor.

Just tried with youtube and soundcloud and both work fine through speakers and headphones. I didn't touch SMBIOS stuff, I only followed the instructions from the OP.
 
Last edited:
A regression from my side, i uploaded wrong SSDT-LED and compiled SSDT-T440S.aml with the wrong SSDT-LED, WAK ends up not being called at all so if laptop sleeps, when you wake it, half of the things do not wake at all, no audio, some usb ports etc.

Will upload the fixes tonight.

Camera works now. Thanks!
 
With that in mind, I might switch over to the Other folder as well. It is a pain to deal with permissions/ownership in /L/E. Also, I need to use LiluFriend.kext on one of my machines to ensure that Lilu is loaded early since sometimes AppleALC wouldn't load correctly. Switching to Other on both of my machines will simplify that, even if it takes an extra couple of seconds to boot.
It has been like 3 months since i started using my hacks with kexts on EFI only, never had an issue.
Hence the fact that even audio works fine without lilufriend.kext on all my hacks.
These 3 months it only happened 3 times only that i had no audio, a reboot simply fixed that.
I completely forgot about lilufriend.kext !,
Thanks for reminding me about it.

In terms of boot speed to be perfectly honest, i can't tell if laptop boots any faster with kexts in L/E
Im not so much into stopwatch testing, but let's say if it is, it shouldn't be more than two seconds which shouldn't matter but still, i do think the opposite instead, i believe it is faster.
I'll also install a new ALCPlugFix as well. We should implement an uninstall script for it too (should be pretty straightforward).
Yes, you are right, we need a uninstall script and modify the install.sh for upgrade/update support when a new version comes out.
That should be a v1.5 must have feature.
 
Has anyone tested the headphone jack with the latest files from the repo? Audio (speakers) works just fine, but I have issues with no playback from the headphone jack. I made sure to run the install.sh to install the new ALCPlugFix. The only changes I made to config.plist was to copy over my previous SMBIOS configuration using a text editor.
Just tested every possible scenario on my X240 and audio is working perfect.

What i suggest you to do is open the install.sh script with textedit or whatever and copy the:
Code:
sudo launchctl load /Library/LaunchDaemons/good.win.ALCPlugFix.plist
modify it to unload:
Code:
sudo launchctl unload /Library/LaunchDaemons/good.win.ALCPlugFix.plist
Paste it on terminal window and press enter

Then go ahead and execute the install.sh to do the installation and it should install/update accordingly.
I have not, but I will add that to my testing later today.
No need, working perfect, if it doesn't for any reason, the answer is on the script like i replied to @Fobos531
It may be possible that the script stops installing when it notices that the daemon is already loaded.
Just tried with youtube and soundcloud and both work fine through speakers and headphones. I didn't touch SMBIOS stuff, I only followed the instructions from the OP.
Same for me, thanks for confirming as well.
Camera works now. Thanks!
Thanks for confirming this.

I knew it should work from now as not just camera, but many other things were not working because even if lid did wake from sleep, USB Ports, Audio and many other things remained in sleep mode as _WAK code was not being executed.
It was all because of the wrong SSDT-LED uploaded.
 
It has been like 3 months since i started using my hacks with kexts on EFI only, never had an issue.
Hence the fact that even audio works fine without lilufriend.kext on all my hacks.
These 3 months it only happened 3 times only that i had no audio, a reboot simply fixed that.
I completely forgot about lilufriend.kext !,
Thanks for reminding me about it.

In terms of boot speed to be perfectly honest, i can't tell if laptop boots any faster with kexts in L/E
Im not so much into stopwatch testing, but let's say if it is, it shouldn't be more than two seconds which shouldn't matter but still, i do think the opposite instead, i believe it is faster.

Yes, you are right, we need a uninstall script and modify the install.sh for upgrade/update support when a new version comes out.
That should be a v1.5 must have feature.
I will submit a pull request with a simple uninstall script at some point later today (I already have it done locally, just need to verify it and do the fork/pull). I can also do an "upgrade" script, which will probably just call the uninstall script and then the install script afterward.

Yeah, I never was able to tell the difference between boot up speed either now that you mention it. Plus, it takes me a considerable amount of time (5 minutes or so) anytime I need to update kexts (which I do at least once a month with Lilu + dependency updates) since I need to repair permissions, set correct ownership, re-do the kextcache, and then update the versions in LiluFriend. If bootup takes a couple of more seconds, it will more than makeup for all of that wasted time :thumbup:

I will still test out headphones (and also USB, I forgot to test that yesterday) just to make sure everything is still stable.

You shouldn't need LiluFriend if you moved over to the Clover kext injection. I think it's only necessary when you put all your custom kexts in /L/E and use kextcache. So it will be nice to not have worry about that kext either when I switch over.

Also something to note if you upgrade the guide/repo to use Clover kext injection instead of /L/E/: you should advise users to use the alternate BcrmPatch kext. @RehabMan has suggested in his repo (here: https://github.com/RehabMan/OS-X-BrcmPatchRAM) to use BrcmFirmwareData.kext instead of BrcmFirmwareRepo.kext if you are using Clover kext injection. Not sure if that's still true or not, but I figured I'd mention it.
 
@Sniki Looks like I needed to do a cold reboot (i.e. shutdown and then power-on) rather than normal reboot to get it fixed. Audio works now just fine (both speakers and headphone jack).
 
@Sniki I already completed the revamped install.sh and added uninstall.sh for ALCPlugFix and submitted a pull request. Check it out!

USB ports seem to behave the same as before (top left being most reliable, the others only working from time to time). Oh well - this is still a huge improvement, at least I can use the device now!

I moved kexts to Clover/Kexts/Other. Seems stable and perfectly fine so far. Didn't notice a longer boot either. Completely removed LiluFriend.kext.

Headphones and ALCPlugFix seems to be working perfectly, so I'm guessing all @Fobos531 needed was that restart :)
 
@Sniki I already completed the revamped install.sh and added uninstall.sh for ALCPlugFix and submitted a pull request. Check it out!

USB ports seem to behave the same as before (top left being most reliable, the others only working from time to time). Oh well - this is still a huge improvement, at least I can use the device now!

I moved kexts to Clover/Kexts/Other. Seems stable and perfectly fine so far. Didn't notice a longer boot either. Completely removed LiluFriend.kext.

Headphones and ALCPlugFix seems to be working perfectly, so I'm guessing all @Fobos531 needed was that restart :)
Thanks a lot for the script and good job.
Merged and added credits section in readme

About USB Ports, unless we can guarantee that it is same behaviour under Windows 10 with drivers and chipsets installed all correctly, i think that it should be fixable, but if it really turns out to be 100% same behaviour on Windows then i can assume it is a hardware limitation but still, usb ports tend to have issues even on Windows 10 sometimes therefore i will need to investigate a bit more into that, maybe we should install debug version of USBInjectAll and check logs to see what happens at those moments.

Excellent, tomorrow evening i expect to be done with the Github side of my projects and so on weekend i can upgrade the guides here.

Thanks for the support.
 
Thanks a lot for the script and good job.
Merged and added credits section in readme

About USB Ports, unless we can guarantee that it is same behaviour under Windows 10 with drivers and chipsets installed all correctly, i think that it should be fixable, but if it really turns out to be 100% same behaviour on Windows then i can assume it is a hardware limitation but still, usb ports tend to have issues even on Windows 10 sometimes therefore i will need to investigate a bit more into that, maybe we should install debug version of USBInjectAll and check logs to see what happens at those moments.

Excellent, tomorrow evening i expect to be done with the Github side of my projects and so on weekend i can upgrade the guides here.

Thanks for the support.
Thanks for the quick turnaround on all of the changes.

As for USB: when I booted into Windows, the problem wasn't as bad, but it was still present. So I think it's just a hardware limitation, at least for my specific T440s. Oh well. One port works about 95% of the time since you're latest changes, so that's great!
 
Thanks for the quick turnaround on all of the changes.

As for USB: when I booted into Windows, the problem wasn't as bad, but it was still present. So I think it's just a hardware limitation, at least for my specific T440s. Oh well. One port works about 95% of the time since you're latest changes, so that's great!
If you have time during weekend, since now you have kexts on EFI/Clover/kexts/Other, try adding debug version of USBInjectAll.kext
Test the charging on the ports that are not working correctly and collect logs, i want to see and assure what the problem.
It may be a method or some other code or something else trying to mess around with USB Ports/USB Power.
If that turns out to be the case, we can kill that with a patch/SSDT and no more messing around.

If i manage to find an app that can completely extract binary files, i would like to do so on the sinetek kext and see if we can reverse engineer what he did on the last kext he uploaded
(To be honest its kind of stupid to not know what you did on your own invention but anyway...).
I would've been happy to get it to work after wake from sleep, i wouldn't have cared about making it run at any faster speed.
Just power management so the kext can work and put device to sleep when not in use and i would be more than happy.
 
Status
Not open for further replies.
Back
Top