Sniki
Moderator
- Joined
- Jan 5, 2016
- Messages
- 2,313
- Motherboard
- HP Elite 8300 SFF
- CPU
- i7-3770
- Graphics
- Intel HD 3000 | GTX 1650 LP
- Mac
- Mobile Phone
Welcome to my Lenovo ThinkPad L440 In-Depth Guide (v3.0)
(Now Everything completed with Hotpatch Method)
Introduction
Welcome to my Lenovo ThinkPad L440 Guide everyone,it`s been 2 years since i joined Tonymacx86 and during that time lots of things chang ed,(Now Everything completed with Hotpatch Method)
Introduction
when i started i had 0 knowledge about hackintosh and i just want to let everyone that`s new and recently joined that Hackintosh does require Patience,Dedication,Lots of reading,time and it`s not a easy task, but with having all of these virtues and patiently studying stuff everyone can master all the necessary skills thanks to the Awesome People that we have on Tonymacx86.
Credits to:
Rehabman (for his Phenomenal Guides,his undrainable Help & guidance till i learned everything and fixed everything)
Tonymacx86 (for this awesome community,Guides & Pro Members where everyone can enjoy MacOS without having to spent Thousand of Money)
My Laptop Specifications
- Intel Core i5 4300M Haswell Processor.
- 8GB Ram DDR3 1600Mhz
- Intel HD Graphics 4600
- Realtek ALC 292 Audio Codec
- SAMSUNG MZ7TE128HMGR-000L1 SSD Drive 128GB
- 14" 1366x768 Display (Upgraded to 1920x1080 IPS Display Panel) Panel name: B140HAN01.3 - Link:
- Flat TrackPad/Touchpad (Upgraded to to the T460 Model Trackpad with 3 Physical Buttons) Touchpad Link:
- Intel AC7260 Dual Band Wifi Card (Upgraded to DW1560 - BCM94352z BT+Wifi Card for Hackintosh Support) Link:
For the people who are going to ask what is working
Everything
Except:Everything
VGA Port -This is like asking for a Floppy Drive to be honest, but you have the powerful MiniDisplay Port instead (which you can buy an Active Adapter *MiniDisplay Port to DVI,VGA,HDMI* for less than 15$) so you can make use of every type of connection from it.
Precautions!
- Since my Bios has Advanced Menu Unlocked i have 128MB DVMT Pre-alloc (which in case on standard bios models its set as 32MB by default,if that cant be changed on your normal bios,make sure you go to Kernel and Kext Patches on my config.plist provided,and disable the 128MB DVMT Patch and Enable the 9MB Cursor Patch.
- Since my Bios has Advanced Menu Unlocked i have disabled EH01 and EH02 USB Controllers straight from Bios which in your L440 Laptops without Unlocked Bios,in case you have USB Problems you might want to disable them with a Custom SSDT Patch which can be found at Rehabman Laptop Config Plist Files Repository.
- The entire guide is based on MacOS Sierra which im currently using so keep that in mind
- Disable Security Chip,TPM because they cause problems to sleep
- Lenovo ThinkPad Laptops have the so-called WHITELIST which restricts installation of other Wireless+BT Cards
Whitelist Removal
you are required to purchase a CH341a Flash Programmer and SOIC8 TEST CLIP and disassemble your laptop to reach the Bios Chip (eeprom) to get access to it etc.so for this step please follow the link from the bios-mods site which is the guide i followed to remove whitelist from my laptop:
https://www.bios-mods.com/forum/Thread-Guide-Whitelist-remove-for-2014-Lenovo-thinkpad
after i got a backup of my current bios i posted on the forum of that site my bios backup and i was fortunate enough to have an answer within 30minutes where a guy just removed whitelist, unlocked advanced menu and removed Haswell MSR Lock for me.
So all i did is just flashed that modified bios, assembled the laptop, installed the BCM94352z card and All working.
Creating Installation Media - USB Installer
Follow the RehabMan Guide: https://www.tonymacx86.com/threads/guide-booting-the-os-x-installer-on-laptops-with-clover.148093/When you Open Clover Installer Change Install Location : USB Drive
Customize and pick these Settings:
- Install for UEFI Booting Only
- Install Clover in the ESP
- Drivers64UEFI > OSXAptioFixDrv-64
- Finnish Install
All you need for reaching the desktop is Rehabman`s FakeSMC,VoodooPS2Controller,ACPIBatteryManager,IntelMausiEthernet.
i will attach the Installation-USB Config.plist file that you should use for Installation Purpose only which should be enough to finnish installation and reach desktop.
Recently After the introduction of the Hotpatch method i was able to create USB installer with 90% of the stuff working (clean install) like on a real mac with USB Ports Properly Configured/Working,Wifi,GPU,Audio,etc
a few kexts don't load on EFI/Clover/Kexts/Other but most of the stuff should be working fine but consider that as a OWN RISK, you might face issues during installation so for safety purpose and less headache follow the Rehabman Guide that i placed on this section to reach desktop.
Beginning of the Guide
Assuming you reached/booted on Desktop: Install Clover with the same settings for the USB Installer but now install it on HDD.i will attach my config.plist with all the patches and stuff so you can make your own from it or use mine with just the need to create a proper SMBIOS: Generating a Serial Number,MLB,Rom for iMessage to work.
https://www.tonymacx86.com/threads/guide-patching-laptop-dsdt-ssdts.152573/
but since the guide is now Based on Rehabman's Hotpatch Include Method (for reference check his NUC repo) here is the link to the Hotpatch guide where you can take a look for urself: https://www.tonymacx86.com/threads/guide-using-clover-to-hotpatch-acpi.200137/
Hotpatch #Include Method
With the new hotpatch #include method no static patching is needed anymore (like Patching your dumped ACPI Tables via MaciASL and putting it on the EFI/Clover/ACPi/Patched)Now we have most of the Fixes config.plist on Separate SSDT's like:
- SSDT-L440.dsl (Master SSDT where we include all the needed SSDT's below,Inject Layout ID & Create a Single SSDT from this one with all others included "Steps to create it will be written down Below).
- SSDT-XOSI.dsl (Emulate a Specific Windows Version)
- SSDT-PluginType1.dsl (Injects PluginType=1 into CPU0 - with Native CPU PM SSDT's : Basically a new CPU PM Method that is more generic and should work on most of the Haswell+ CPU's (without the need to create a SSDT from PikerAlpha's script).
- SSDT-USB.dsl (Custom USB Active Ports Override + Disables XSEL,ESEL,XWAK)
- SSDT-Disable_EHCI.dsl (Disables EHCI Controllers "EH01 & EH02" since with SSDT-USB we Inject All ports int XHC Controller so we don't need EHCI Controllers anymore so we disable them to save power) but in my case that i have an unlocked Bios i don't need this Patch Since i Disabled EHCI Controllers directly on Bios.
- SSDT-ALC292.dsl (Custom CodecCommander profile for ALC292 which also makes our Audio Update proof even on future Codec Commander Updates).
- SSDT-LPC.dsl (fix & Inject Unsupported 8 Series LPC Devices)
- SSDT-HDAU.dsl (HD Audio Automatic Properties Injection)
- SSDT-HDEF.dsl (Automatic Injection of HDEF Properties)
- SSDT-IMEI.dsl (Adds the Missing IMEI Device)
- SSDT-PTSWAK.dsl (Overrides PTS & WAK)
- SSDT-PNLF.dsl (Adds PNLF device for IntelBacklight.kext or AppleBacklight.kext+AppleBacklightInjector.kext)
- SSDT-PRW.dsl (Instant Wake Fix by Hooking GPRW)
- SSDT-KBD.dsl (Complete Keyboard Remap of FN Buttons)
- SSDT-TRACKPAD.dsl (Tluck VoodoPS2Controller Fork - Adds T460 Identifier - Configuration "Trackpoint fix")
- SSDT-SMBUS.dsl (Adds SMBUS Device)
Layout ID can be set/changed into SSDT-L440.dsl without the need to touch SSDT-HDEF & SSDT-HDAU like in the picture below in our case (13):
In case you are doing changes to a specific SSDT remove the // in front of DefinitionBlock and the Opening Bracket { and closing bracket } as seen Highlighted above on the picture so after you changed SSDT when you compile if you did correctly & you see no error then you know its good and you can add the // like above,
So without them for Modificiation Purposes it should look like this:
Assuming you have same/similar hardware as mine or using my guide you copy the ACPI Folder for example into Desktop,Open terminal and enter Command:
Code:
cd "desktop/ACPI"
iasl SSDT-L440.dsl
you then copy the SSDT-L440.aml to EFI/Clover/ACPI/Patched
and we're done with this step.
Kexts needed
For the kexts most of them are from Rehabman so you can find each one on Rehabman Github:
https://github.com/RehabMan?tab=repositories
The others are on Attachment or Link included on the Specifc Sections on Guide.
- FakePCIID
- FakePCIID_Intel_HD_Graphics
- FakePCIID_Intel_HDMI_Audio
- FakePCIID_Broadcom_WiFi
- VoodooPS2Controller (Tluck fork of Rehabman's VoodooPS2Controller for those of you who have upgraded TrackPad to T460 like me).
- ACPIBatteryManager (Rehabman - This does show your battery status without any ACPI Patching needed)
- FakeSMC + FakeSMC Plugins (Rehabman Fork)
- AppleBacklightInjector (Rehabman - for Brightness)
- IntelMausiEthernet (Rehabman - Lan Driver)
- USBInjectAll (RehabMan - Makes all usb ports active - in use with the SSDT-USB for fixing USB Ports)
- ALC292 (Credits to InsanelyDeepAk) - Audio kext + New ALC_Fix that fixes Audio (100% working now).
- CodecCommander (Rehabman - for fixing no audio after wake from sleep + the other patches included on SSDT-ALC292.dsl)
- BrcmFirmwareRepo (RehabMan - Bluetooth)
- BrcmPatchRam2 (RehabMan - Bluetooth)
- Shiki ; Lilu ; IntelGraphicsFixup (for HD4400/4600/5000 freezing issues fix + iTunes Trailers & Videos fix)
Graphics
install into Sytem/Library/Extensions:
install into Sytem/Library/Extensions:
- FakePCIID.kext
- FakePCIID_Intel_HD_Graphics.kext
HD4400/4600/5000 have some Freezing Issues on specific Websites,iTunes Trailers,Movies etc, in order to fix those we need to install these kext into System/Library/Extensions:
- Shiki.kext
- Lilu.kext
- IntelGraphicsFixup.kext
Links for the specific kexts:
Shiki : https://github.com/vit9696/Shiki/releases
Lilu: https://github.com/vit9696/Lilu/releases
IntelGraphicsFixup: https://sourceforge.net/projects/intelgraphicsfixup/
HDMI
Install into System /Library /Extensions: FakePCIID_HDMI_Audio.kextInto Clover Configurator or PlistEditPro or Xcode - Open the config.plist:
Into Kernel and Kext Patches - add this patch (already present on Rehabman Prebuilt Config.plist patches on his github)
Name: AppleIntelFramebufferAzul
Find: 01050900 00040000 87000000
Replace: 01051200 00080000 87000000
Comment: HDMI-audio, port 0105(12), 0x0a260005 0x0a260006, 0x0d220003, 0x0a2e000a, 0x0a26000a
Link to the guide & Downloads: https://www.tonymacx86.com/threads/fix-hd4200-hd4400-hd4600-hd5600-on-10-11.175797/
WIFI & Bluetooth (Bluetooth 4LE,5GHZ Wifi,HandsOff,Hotspot)
First of all you need to install the necessary kexts Into System/Library/Extensions:- FakePCIID_Broadcom_WIFI
- BrcmPatchRam2
- BrcmFirmwareRepo
This is for Wifi
Name: AirPortBrcm4360
Find: 81f952aa 00007529
Replace: 81f952aa 00006690
Comment: AirPortBrcm4360 - fcvo (theDarkVoid)
This is for Bluetooth
Name: AirPortBrcm4360
Find: 4885ff74 47488b07
Replace: 41be0f00 0000eb44
Comment: AirPortBrcm4360 - 10.11+ BT4LE Handsoff/Hotspot
This is for Enabling 5GHz Band non-US Version (europe/asia or whatever). "if you live in US no need for this patch - Natively Supported)
Name: AirPortBrcm4360
Find: 4183fcff 742c48
Replace: 66c70623 61eb2b
Comment: 10.11-BCM94352-CC=#a-Ramalama
This is Patch Enables AirPort Extreme
Name: AirPortBrcm4360
Find: 6b100000 750d
Replace: 6b100000 9090
Comment: 10.11+-BCM94352-Airport-Extreme-skvo
Kext Link for BrcmPatchRam2 & BrcmFirmwareRepo: https://github.com/RehabMan/OS-X-BrcmPatchRAM
Link to the Guide: https://www.tonymacx86.com/threads/guide-airport-pcie-half-mini-v2.104850/
Audio
Thanks to InsanelyDeepak for his Phenomenal work he managed to Completely Patch this Problematic Audio Codec,with the new patch now Laptop has higher volume on speakers,much better sound quality on Both Speakers & Headphones, also the External Mic now properly works everytime you need it.Install the necessary kexts into System/Library/Extensions:
- ALC292
- CodecCommander
Install the latest ALC Plug_Fix that i added on this Update (v3.0) of the guide since it has been changed.
Apply the Patches on config.plist - Kernel and Kext Patches:
Patch1:
Name: AppleHDA
Find: 8508ec10
Replace: 00000000
Comment: Zeroing 10ec0885 codec
Patch2:
Name: AppleHDA
Find: 8419d411
Replace: 9202ec10
Comment: Patching 11d41984 with 10ec0292 codec
USB Ports
Since i have the Unlocked Advanced Menu on Bios thnx to the Mod i did,i don't need the SSDT-Disable_EHCI since i have EHCI Controllers (EH01 & EH02) Disabled directly on Bios.i created a SSDT-USB from RehabMan Template to Override/Fix USB ports.
so if you removed whitelist and unlocked advanced menu on bios remove the SSDT-Disabe_EHCI from Master SSDT (SSDT-L440.dsl) since theres no need for it but it won't hurt having it either so your choice.
For further Problems faced or need for investigation/Problem Reporting please do to the according guide:
https://www.tonymacx86.com/threads/guide-10-11-usb-changes-and-solutions.173616/
iMessage
iMessage is also a tricky one,not that it is hard to configure at all but this one has more to do with luck - Personally i had no success and i had a lot of trouble but finally have it working by trying various different guides and tips all over internet, here are some guides to follow:For a simple method please follow the P1LGRIM`s Guide:
https://www.tonymacx86.com/threads/an-idiots-guide-to-imessage.196827/
or
JayMonkey (Advanced/InDepth) Guide:
https://www.tonymacx86.com/threads/how-to-fix-imessage.110471/
Touchpad / TrackPad / TrackPoint
for the Trackpad i use the Tluck fork of RehabMan VoodooPS2Controller which worked out of the box on my Upgraded Trackpad.i built the kext from his github and will attach on the guide for you that don`t know how to built from source with xcode.
Also you will need the SSDT-TRACKPAD to Inject T460 Identifier in order for Trackpad/TrackPoint and ClickPad to work Perfectly.
Tluck`s Link to Github: https://github.com/tluck/OS-X-Voodoo-PS2-Controller
Power Management
for Power Management you have to create a SSDT from PikerAlpha`s script.Please follow the Rehabman Guide for the Instructions:
https://www.tonymacx86.com/threads/guide-native-power-management-for-laptops.175801/
Update: on Haswell+ Processors there's no need to do the steps above on the guide,all we have to do is inject the PluginType1 from the SSDT-PluginType1 which is more generic and should work on All CPU's Haswell+ (Universal).
Display EDID
there is a known bug in Sierra on some specific laptops/display panels where the SysPrefs>Display preferences Pane won`t load.you won`t be able to change resolution or Color Profile or select displays
for a fix follow the rehabmans Post - Sierra Common Unsolved Problems,there`s a fix listed by a guy.
you have to dump your edid and modify/patch it in order to fix the issue which in L440 it affects the 1366x768 display.
Link to the post: https://www.tonymacx86.com/threads/display-prefpane-cant-load-found-the-problem-and-solution.203955/
If you guys have trouble Patching the EDID,post your edid here and ill do the patch for you.im sure i did patch it for the 1366x768 panel but i don`t remember correctly where i saved it.
It seems that this issue has been fixed since macOS Sierra 10.12.4 and above
Card Reader
Thanks to Sinetek,we do have a semi working Card Reader kext that he ported from Linux,it is still under beta testing but it is working pretty well on my L440 so far, except that at its current beta phase it doesn't work if laptop sleeps,after wake from sleep the kext doesn't work,so in order to use the card reader again you will have to reboot.
i will include the latest beta kext on the guide so you don't have to scroll through the topic but for following his development or in case a newer kext comes out or goes out of beta testing please follow his guide/topic: http://www.insanelymac.com/forum/to...ver-for-realtek-rtsx-sdhc-card-readers/page-1
so that way whenever you want to install it you can assure you are using his latest kext.
Customization - Mod about this Mac
Since we have our beautiful L440 Laptops we need to have a proper Logo for it on About This Mac Screen to match our Machine & OSi did find a beautiful Picture of it and Created 3 different versions of it so each one has to match with our OS that we have installed
1 with El Capitan Wallpaper,1 with Sierra & 1 with High Sierra
also the ThinkPad Clover theme that i use will be included in my EFI Folder,credits to the owner since i don't know who did create it
Mod about this Mac Guide (outdated):
https://www.tonymacx86.com/threads/mod-about-this-mac.79536/
A more In-Depth Guide so you can do every Possible Mod :
http://www.idownloadblog.com/2017/01/13/how-to-modify-about-this-mac-hackintosh/
Custom SSD/HDD/NVME Icons Personalization Topic:
https://www.tonymacx86.com/threads/custom-ssd-icons.93415/
Benchmarks
https://browser.geekbench.com/v4/cpu/3445059
OpenCL:
https://browser.geekbench.com/v4/compute/935519
New HotPatch Include:
Changelog
- Now completely Hotpatched via #include method from Rehabman (NUC Repo Syle)
- (For the current "ERA" of Hackintosh) L440 ACPI Patching is perfect so far,no work left to be done.
- Audio has been Patched now according to the Codec Dump from latest Ubuntu, so it does have higher volume,better sound,External Mic works correctly as far as i have tested (Credits to InsanelyDeepak)
- Updated Benchmarks
- Updated Customizations Section,added new L440 System Logos for El Capitan/Sierra/High Sierra
- Added Customizations Guides
- Added Card Reader Section - kext,status & Topic so you can follow for updates related to it or test the beta
- Updated config.plist,use it as template,generate your own SMBIOS data and personalization stuff/patches
- Updated kexts & added links for each
- Added Missing Wifi Patches
- Removed Wrong/Unnecessary/Useless Patches;Fixes &Code,also added the missing ones which results to decent Stability & Performance Improvements & Bug Fixes Overall.
- Formatting Improvements (Text Placement,size,Fonts,Colors,Sections)
- Now Guide is updated to Hotpatch method (not a single ACPi: SSDT,DSDT edit/patch/fix needed) Everything on Config.plist + SSDT`s
- Audio is now Fixed (External Mic now works via Headphone Combo Jack too)
- Added some Benchmarks
- 80% Less work required on Fresh Install,New Members & Existing ones due to HotPatch Simplicity.
- Bug Fixes,Stability & Performance Improvements
- Initial Release
Problem Reporting
(Linked from Rehabman FAQ - Credits to him)
https://www.tonymacx86.com/threads/faq-read-first-laptop-frequent-questions.164990/
(Linked from Rehabman FAQ - Credits to him)
https://www.tonymacx86.com/threads/faq-read-first-laptop-frequent-questions.164990/
It is impossible to diagnose a problem without data that shows how your system is configured.
Also, impossible to analyze any data that you might provide without a clear understanding of your hardware. So make sure your profile is filled as per the first question in this FAQ, "Q. Where do I start?".
If you can't boot, a bare minimum is:
- Boot verbose, attach photo
- Attach EFI/Clover folder as ZIP (press F4 and F2 at main Clover screen before collecting). Please eliminate 'themes' directory. Provide only EFI/Clover, not the entire EFI folder.
If you can boot, but are having some other problem, describe the problem clearly and provide data...
Download patchmatic: https://bitbucket.org/RehabMan/os-x-maciasl-patchmatic/downloads/RehabMan-patchmatic-2015-0107.zip
Extract the 'patchmatic' binary from the ZIP. Copy it to /usr/bin, such that you have the binary at /usr/bin/patchmatic.
In terminal,
Code (Text):
if [ -d ~/Downloads/RehabMan ]; then rm -R ~/Downloads/RehabMan; fi
mkdir ~/Downloads/RehabMan
cd ~/Downloads/RehabMan
patchmatic -extract
Note: It is easier if you use copy/paste instead of typing the commands manually.
Attach contents of Downloads/RehabMan directory as ZIP.
Attach ioreg as ZIP: http://www.tonymacx86.com/audio/58368-guide-how-make-copy-ioreg.html. Please, use the IORegistryExplorer v2.1 attached to the post! DO NOT reply with an ioreg from any other version of IORegistryExplorer.app.
Provide output (in Terminal):
Code (Text):
kextstat|grep -y acpiplat
kextstat|grep -y appleintelcpu
kextstat|grep -y applelpc
kextstat|grep -y applehda
Attach EFI/Clover folder as ZIP (press F4 at main Clover screen before collecting). Please eliminate 'themes' directory. Provide only EFI/Clover, not the entire EFI folder.
Attach output of (in Terminal):
Code (Text):
sudo touch /System/Library/Extensions && sudo kextcache -u /
Compress all files as ZIP. Do not use external links. Attach all files using site attachments only.
Attachments
-
USB Installer Config-plist.zip3.4 KB · Views: 576
-
AppleBacklightInjector.kext.zip1.3 KB · Views: 399
-
ACPI.zip19.3 KB · Views: 637
-
(TLUCK)VoodooPS2Controller.kext.zip76.8 KB · Views: 371
-
alc_fix.zip13.1 KB · Views: 537
-
ALC292.zip11 KB · Views: 569
-
config.plist.zip4.9 KB · Views: 622
-
SystemLogo.zip875.8 KB · Views: 334
-
ThinkPad (Clover Theme).zip1 MB · Views: 397
-
(Card Reader).zip39 KB · Views: 432
Last edited: