Jump to content

tluck

Members
  • Content Count

    2,311
  • Joined

  • Last visited

  • Days Won

    5

Reputation Activity

  1. Like
    tluck reacted to jengpeng in Lenovo ThinkPad T420 with UEFI Only   
    @tluckThank for your help , Everything works fine for me
  2. Like
    tluck got a reaction from jengpeng in Lenovo ThinkPad T420 with UEFI Only   
    @jengpengsome say that setting the date to like 2017 in BIOS worked for this issue?
     
    ----------
     
    FYI, i updated the GitHub repo with latest Clover and kext.
     
    .... and also added an OpenCore optional bootloader.
    if you want to try it - just move the clover boot thing out of the way - 
     
    espmount.bash /
    cd /Volumes/ESP/EFI
    mv BOOT BOOT.Clover
    mv BOOT.OC BOOT
     
     
     
     
     
     
     
  3. Like
    tluck got a reaction from jengpeng in Lenovo ThinkPad T420 with UEFI Only   
    @jengpengsome say that setting the date to like 2017 in BIOS worked for this issue?
     
    ----------
     
    FYI, i updated the GitHub repo with latest Clover and kext.
     
    .... and also added an OpenCore optional bootloader.
    if you want to try it - just move the clover boot thing out of the way - 
     
    espmount.bash /
    cd /Volumes/ESP/EFI
    mv BOOT BOOT.Clover
    mv BOOT.OC BOOT
     
     
     
     
     
     
     
  4. Like
    tluck got a reaction from jengpeng in Lenovo ThinkPad T420 with UEFI Only   
    @jengpengsome say that setting the date to like 2017 in BIOS worked for this issue?
     
    ----------
     
    FYI, i updated the GitHub repo with latest Clover and kext.
     
    .... and also added an OpenCore optional bootloader.
    if you want to try it - just move the clover boot thing out of the way - 
     
    espmount.bash /
    cd /Volumes/ESP/EFI
    mv BOOT BOOT.Clover
    mv BOOT.OC BOOT
     
     
     
     
     
     
     
  5. Like
    tluck reacted to tonyx86 in Intel Framebuffer patching using WhateverGreen   
    I'm brand new to Intel HD Framebuffer patching (just started patching a couple of days ago and got my system working yesterday), but it seems to me that adding an AppleGraphicsDevicePolicy patch to clover config.plist has cured some of my issues with multi-display.  See background here.  I applied the following patch (full details here) to my system:
     
    KextsToPatch
    Name: AppleGraphicsDevicePolicy
    Find: BA05000000
    Replace: BA00000000
  6. Like
    tluck reacted to tonyx86 in Catalina on HP EliteDesk 800 G4 Mini - The perfect MacMini8,1   
    My methodology for developing this solution
     
    Started by disassembling ACPI to confirm that it didn't contain any errors I researched various BIOS suggestions and found that they were in agreement.  I don't think my BIOS settings have any surprises. I experimented with different CLOVER UEFI configurations (this is my first UEFI hack) and think I settled on a minimal set of required drivers.  Found that KernelPM fix was required to boot.  I kept Clover in verbose (-v) boot mode during initial installation / debugging. I prefer to install kexts in /L/E, so my kext installation strategy is based on that preference Temporarily added USB port limit patch to permit Catalina USB installation.  Then created SSDT-UIAC (using Hackintool) and removed port limit patch. Researched Apple devices and selected MacMini8,1 as closest architectural match (CPU and graphics) Inspected disassembled DSDT to observe device names for potential renaming or missing (e.g. GFX0, EC0, SAT0, HDAS, HECI).  Note that Lilu/WhateverGreen handles video/audio renaming. Created Clover config.plist with _OSI and _DSM renames and also EC0 and SAT0 renames I added SSDT-XOSI.aml and SSDT-PMCR.aml to EFI/CLOVER/ACPI Enabled typical Clover ACPI fixes (identifying and testing the need for these fixes will be ongoing) Dropped DMAR and MATS tables after a bit of research (not certain this is needed) Enabled PluginType after a bit of research Added -disablegfxfirmware boot arg to resolve gfx firmware boot loop while I was trying to get my display working (before I established working FrameBuffer patching with WhateverGreen).  After successfully implementing FB patching with WEG, removed -disablegfxfirmware boot arg. Created device properties (in Clover config.plist) for IGPU / Framebuffers.  This was the hardest part.  LOTS OF TRIAL and ERROR since I'm using DP > DVI adapters with multiple displays.  Attempted video with and without WEG and ended up staying with WEG.  I got lucky with an accidental ig-platform-id mistake that actually kept IGPU acceleration from loading and allowed me to boot the Catalina installer.  The incorrect ig-platform-id allowed me to boot the Catalina installer and see the display (single display) before I had a working FrameBuffer solution.  Without this "accident" the Catalina installer booted to black screen. After extensive reading of Hackintool and WEG guides and other posts, I ended up manually creating my device properties and experimenting with different ig-platform-ids and port types.  My approach was a methodical, brute-force trial and error elimination of the possibilities until I found one that worked.  I suspect that my device properties currently include things that are unnecessary.
    Critical to my Framebuffer patching was enabling System Preferences > Sharing > Remote Login and Remote Management to allow me to "Remote Desktop" into my hack.  Each failed Framebuffer patch resulted in a black screen.  The only way to see the desktop was to remote into the hack.  I disabled sharing after I was certain that my Framebuffer patching was working properly.
    Also critical to my Framebuffer patching: While trying to get a working Framebuffer patch with WEG, I discovered that I needed to use framebuffer-conX-type = 0x0004 (DigitalDVI) and NOT 0x0400 (DP) (even though my system has DP ports). This is because I'm using DP->DVI adapters. While trying to get IGPU acceleration working with FrameBuffer patching, I added an AppleGraphicsDevicePolicy patch.  I have confirmed that this AGDP patch is required for multiple displays on my HackMini8,1. Set hibernatemode and proximitywake to 0 to address potential sleep issues and also disabled "Wake for Ethernet" and "Enable Power Nap" I added No-hda-gfx device property to HDEF after finding that my system froze on sleep / wake Removed -disablegfxfirmware boot arg which is not needed after successfully implementing FB patching with WEG
  7. Like
    tluck got a reaction from Tetonne in Lenovo ThinkPad T420 with UEFI Only   
    @Garehard - I was able to spend a bit more time reviewing and optimizing the OC config -- I will post my v1 OC EFI in my github soon. But I had to make several tweaks to the config (drop tables, inject EDID, DualLink etc) to get CPU Power management working, and so on - without coredumps etc.  right now, i am running my 2 T420 systems on OC for a few days. on my 8GB system with AUO LCD, it even seems less glitchy!?  
     
    I recommend for glitches, try injecting the "366" EDID which is from an LG display. so far so good. 
     
  8. Like
    tluck got a reaction from Tetonne in Lenovo ThinkPad T420 with UEFI Only   
    @Garehard - I was able to spend a bit more time reviewing and optimizing the OC config -- I will post my v1 OC EFI in my github soon. But I had to make several tweaks to the config (drop tables, inject EDID, DualLink etc) to get CPU Power management working, and so on - without coredumps etc.  right now, i am running my 2 T420 systems on OC for a few days. on my 8GB system with AUO LCD, it even seems less glitchy!?  
     
    I recommend for glitches, try injecting the "366" EDID which is from an LG display. so far so good. 
     
  9. Like
    tluck got a reaction from Tetonne in Lenovo ThinkPad T420 with UEFI Only   
    @Garehard - I was able to spend a bit more time reviewing and optimizing the OC config -- I will post my v1 OC EFI in my github soon. But I had to make several tweaks to the config (drop tables, inject EDID, DualLink etc) to get CPU Power management working, and so on - without coredumps etc.  right now, i am running my 2 T420 systems on OC for a few days. on my 8GB system with AUO LCD, it even seems less glitchy!?  
     
    I recommend for glitches, try injecting the "366" EDID which is from an LG display. so far so good. 
     
  10. Like
    tluck reacted to Garehard in Lenovo ThinkPad T420 with UEFI Only   
    Hi guys,
     
    i’ve installed High Sierra on my X220 and i know that the T420 is relative identical. So tlucks files should work here. I have good experience with OpenCore and I tried that on my X220 with Version 0.58 with success. Everything works as it should (Graphic, Sleep, Brightness, Keys etc.). The only thing that makes me problems is the soundchip.
     
    Here is my install log:
    Installed High Sierra Opencore 0.58 on EFI partition installed Config.plist with OC-Documentation created DSDT-Files taken from tlucks-files SSDT-File (Power-Management) created with ssdtPRGen.sh Kext-Files integrated and in config.plist registered  
    Things i’ve tested:
    Integration with VoodooHDA and AppleHDA_20672.kext. Here I have Sound but I think this method is old and what is really annoying is that I have to select the audio output after restart again and again. Integration with AppleALC.kext (with and without Bootarg -alcbeta). This should be the best method. tluck has integrated that long time ago and should work. Under Clover that works but OpenCore has different AudioInjects and maybe there are entries in OC-config.plist I havent done.   
    Any OpenCore experts here that can help me with that problem?
    (My actual OC-Folder is attached.)
    OC.zip
  11. Like
    tluck got a reaction from goodguess in Lenovo ThinkPad T420 with UEFI Only   
    yeah. it seems like the memory is the most important factor. i may still test out my LG with 8GB.
     
    FYI... you can get 1GB vram by using these Clover Kext patches and not having to replace the kexts - but whatever works best!
    <dict> <key>Comment</key> <string>1024MB memory</string> <key>Disabled</key> <false/> <key>Find</key> <data> x0XQAAAAIA== </data> <key>MatchOS</key> <string>10.13.x,10.14.x,10.15.x</string> <key>Name</key> <string>com.apple.driver.AppleIntelSNBGraphicsFB</string> <key>Replace</key> <data> x0XQAAAAQA== </data> </dict> <dict> <key>Comment</key> <string>Sierra 1024MB memory</string> <key>Disabled</key> <false/> <key>Find</key> <data> x0XEAAAAIA== </data> <key>MatchOS</key> <string>10.12.x</string> <key>Name</key> <string>com.apple.driver.AppleIntelSNBGraphicsFB</string> <key>Replace</key> <data> x0XEAAAAQA== </data> </dict>  
     
  12. Like
    tluck got a reaction from Matgen84 in Clover General discussion   
    FYI, the lastest changes/fix for 5115 is working again on Sierra, High Sierra, Mojave, and Catalina.
     
    thanks!
  13. Like
    tluck got a reaction from Matgen84 in Clover General discussion   
    FYI, the lastest changes/fix for 5115 is working again on Sierra, High Sierra, Mojave, and Catalina.
     
    thanks!
  14. Like
    tluck got a reaction from Matgen84 in Clover General discussion   
    FYI, the lastest changes/fix for 5115 is working again on Sierra, High Sierra, Mojave, and Catalina.
     
    thanks!
  15. Like
    tluck got a reaction from goodguess in Lenovo ThinkPad T420 with UEFI Only   
    yeah. it seems like the memory is the most important factor. i may still test out my LG with 8GB.
     
    FYI... you can get 1GB vram by using these Clover Kext patches and not having to replace the kexts - but whatever works best!
    <dict> <key>Comment</key> <string>1024MB memory</string> <key>Disabled</key> <false/> <key>Find</key> <data> x0XQAAAAIA== </data> <key>MatchOS</key> <string>10.13.x,10.14.x,10.15.x</string> <key>Name</key> <string>com.apple.driver.AppleIntelSNBGraphicsFB</string> <key>Replace</key> <data> x0XQAAAAQA== </data> </dict> <dict> <key>Comment</key> <string>Sierra 1024MB memory</string> <key>Disabled</key> <false/> <key>Find</key> <data> x0XEAAAAIA== </data> <key>MatchOS</key> <string>10.12.x</string> <key>Name</key> <string>com.apple.driver.AppleIntelSNBGraphicsFB</string> <key>Replace</key> <data> x0XEAAAAQA== </data> </dict>  
     
  16. Like
    tluck got a reaction from goodguess in Lenovo ThinkPad T420 with UEFI Only   
    yeah. it seems like the memory is the most important factor. i may still test out my LG with 8GB.
     
    FYI... you can get 1GB vram by using these Clover Kext patches and not having to replace the kexts - but whatever works best!
    <dict> <key>Comment</key> <string>1024MB memory</string> <key>Disabled</key> <false/> <key>Find</key> <data> x0XQAAAAIA== </data> <key>MatchOS</key> <string>10.13.x,10.14.x,10.15.x</string> <key>Name</key> <string>com.apple.driver.AppleIntelSNBGraphicsFB</string> <key>Replace</key> <data> x0XQAAAAQA== </data> </dict> <dict> <key>Comment</key> <string>Sierra 1024MB memory</string> <key>Disabled</key> <false/> <key>Find</key> <data> x0XEAAAAIA== </data> <key>MatchOS</key> <string>10.12.x</string> <key>Name</key> <string>com.apple.driver.AppleIntelSNBGraphicsFB</string> <key>Replace</key> <data> x0XEAAAAQA== </data> </dict>  
     
  17. Like
    tluck got a reaction from goodguess in Lenovo ThinkPad T420 with UEFI Only   
    yeah. it seems like the memory is the most important factor. i may still test out my LG with 8GB.
     
    FYI... you can get 1GB vram by using these Clover Kext patches and not having to replace the kexts - but whatever works best!
    <dict> <key>Comment</key> <string>1024MB memory</string> <key>Disabled</key> <false/> <key>Find</key> <data> x0XQAAAAIA== </data> <key>MatchOS</key> <string>10.13.x,10.14.x,10.15.x</string> <key>Name</key> <string>com.apple.driver.AppleIntelSNBGraphicsFB</string> <key>Replace</key> <data> x0XQAAAAQA== </data> </dict> <dict> <key>Comment</key> <string>Sierra 1024MB memory</string> <key>Disabled</key> <false/> <key>Find</key> <data> x0XEAAAAIA== </data> <key>MatchOS</key> <string>10.12.x</string> <key>Name</key> <string>com.apple.driver.AppleIntelSNBGraphicsFB</string> <key>Replace</key> <data> x0XEAAAAQA== </data> </dict>  
     
  18. Like
    tluck got a reaction from heavyhdx in Lenovo ThinkPad T420 with UEFI Only   
    Yeah it has been a mystery but i dont we are alone with this issue. For many years using a fake EDID allowed glitch free usage. no issues on 10.8, 10.9, 10.10,  10.11, and 10.12 (Sierra). But starting with 10.13 (High Sierra) glitches came back. I have 2 T420 systems and only one had glitches. my 16GB box was ok and son's 8GB box had problems. the 16GB box has a very nice LG glossy 1600x900 replacement display that only cost like $40 US  because my kid slammed the lid on my earbuds and cracked it!  Since then I have shelved the box with 8GB with AUO (orig LCD) because the gfx hangs/freezes every few days. but my 16GB with LG works still works perfectly no glitches and no hangs. i have not tried using LG with 8GB. which might be interesing. 
  19. Thanks
    tluck got a reaction from carlinyos in [GUIDE] Lenovo T460/T470 macOS with Clover and OpenCore   
    FYI. I added/pulled an OpenCore branch to my repo which was built by @MSzturc. 
  20. Like
  21. Like
    tluck got a reaction from Tetonne in Lenovo ThinkPad T420 with UEFI Only   
    i would do something like this:
    1) clone/copy APFS Volume old - Données   85.4 GB    disk1s1 to a 2nd disk.
    2) remove the 3rd partition APFS 269GB disk0s3
    3) expand the 2nd partition 100GB APFS partion disk0s2 to fill unused space - 100+269
    4) create a new volume (not partition) to hold the 2nd disk back this new volume
     
    at the end, your disk will have 3 partitions instead of 4
     
    EFI 
    APFS 369GB
    HFS  110GB
     
     
     
  22. Thanks
    tluck got a reaction from freddie in Lenovo ThinkPad T420 with UEFI Only   
    hmm. i just realized/remembered i am running caffiene to prevent my system from ever sleeping.  i do this becuase i am running it more as a server than laptop. ie i keep the lid closed and it is connected to my TV via HDMI - which sometimes is not on. so without the TV on it would normall just go to sleep. i will try to test as a laptop soon.
     
  23. Like
    tluck got a reaction from Vicybaby in Lenovo ThinkPad T420 with UEFI Only   
    no - not all gestures will work - this is not a magic pad! these are not implemented in the kext/driver. for 3 finger it takes some time to figure out how to do them on the small pad. generally have fingers pointing to side vs pointing to LCD
     
    There are 2 parts to dosdude1 method.
    1) build a custom USB installer with his tool. and the just add the Clover EFI to the USB.
    2) make sure you either build the installer to automatically install the patches (Default now) or use the USB installer a second time to do the post install patching - which add gfx for HD3000
     
    you really dont need to mess with the alternate DSDT files in APCI for changing the EDID. i forget why i even made them?! just try rename config.EDID-{2e2,2e3,366}.plist to config.plist
  24. Thanks
    tluck got a reaction from heavyhdx in Lenovo ThinkPad T420 with UEFI Only   
    Cool. many of the properties are set in the SSDT-T420-PS2K* - there are 2 versions there - with and without key mappings. 
    see the ACPI folder for these files (.dsl is the source), you can change and recompile with the included iasl compiler. and then replace int the ACPI/patched folder
     
     
    per Goodguess' advice on how to use Catalina - i presume you are good to go?
  25. Like
    tluck got a reaction from heavyhdx in Lenovo ThinkPad T420 with UEFI Only   
    Lenovo T420 Clover Guide
    Release on GitHub Updated to Clover r5118
      Recent highlights: Added older versions of IntelMausiEthernet for 10.12, 10.13, 10.14, 10.15 Force DualLink for the 1600x900 configs Update Theme (icons and boot chime option) Use WhateverGreen.kext for GFX patching and properties by default VoodooPS2Controller.kext  - with new SSDT option for custom key map AppleALC.kext - merged properties for T420 (changed Layout 12 to 14) Update T420s with SSDT for PS2K device config.plist changes: Revised to common config.plist for simplicity Changed config.plist file to use audio layout id 14 (or 13 for dock)  Update config.plist files to set slide=0 by default Removed ACPI patching by Clover (except Fix_Regions) since patching is already in provided in the DSDT Provide alternate config.plist files and DSDT files for testing glitchy 1600x900 LCD 3 alternate configs: EDID-2e2, EDID-2e3, EDID-366  - 60 and 50 Hz modes  
    T420 Clover Guide and Steps
    Overview
    The zip file is a complete ESP/kext pack for the Lenovo T420 using Clover on macOS. This file set and method should work for Sierra, High Sierra 
    ... tested on: 10.12.6, 10.13.5, 10.14.6 and 10.15.3
    Full Clover ESP file set - config.plist + required custom kexts + custom ACPI files (DSDT/SSDT) The actual zip bundle releases are posted on GitHub.com  
    *For Mojave/Catalina 
    Apple removed support of HD 3000 Graphics  see the "dosdude1" method to create an installer for unsupported Macs: http://dosdude1.com/software.html combine the methods outlined here with dosdude1 method (add Clover to EFI) tested on: 10.12.6, 10.13.5, 10.14.6 and 10.15.3  
    Non-maintained Mountain Lion Kext Bundles for 10.8.4 are in post #241 and 10.8.5 in post #397
    Also for L420 Guide, see the one by kosakgroove
     
    Why Clover vs Chameleon?
    Native UEFI boot support for macOS (and Windows) on GPT disks. Native Apple macOS Installers and App Store Updates. Supports Recovery HD for system recovery, iMessage, Find My Mac, etc. Dynamic DSDT and Kext patching.
      Caveat: My system is a T420 with 1600x900 LCD and dedicated Intel HD 3000 Graphics Only. This zip contains what is working for me on this specific model. The related models - such as T420s, T420i, T520 and W520 family - may work as is or need some changes to config.plist and/or the DSDT. In the DSDT source (.dsl) file, the changes are indicated by notes and comments. If your HW is the same as mine, the included DSDT and configuration files may need to be retrofitted to work for your system.

    The guide has 2 parts or phases:
    How to create a USB installer to install macOS,
    and How to complete the OS installation to run macOS
      BIOS settings
    Recommended is BIOS v1.46 (and stay on 1.46 if you want use a modded bios - but there are later mods now) Recommended: reset to defaults. Most defaults settings will work - but check these settings: Set Config / Serial ATA (SATA) / SATA = AHCI Set Security / Memory Protection / Execution Prevention = Enabled Disable Discrete Nvidia/Optimus (use integrated HD 3000 only - unless you really know what you are doing!) Note: The custom DSDT is based off BIOS v1.46 (flashed with whitelist mod or original) Terms:
    GPT = GUID Partition Table MBR = Master Boot Record ESP = ESP = EFI System Partition, the ESP is created automatically as the first (hidden) partition by the Disk Utility when the GPT option is selected for partitioning a disk.  
    Part 1 - OS Installation
    These steps and procedure is for a complete new fresh installation using an USB Installer. If you are upgrading to High Sierra from an older working version of macOS (say El Capitan or Sierra is on your HD downloaded from the App Store), skip down to Part 2, Step 3 to update your ESP. You must replace or merge in the changes from the EFI/CLOVER files to your HD ESP before you perform the upgrade.
     
    1.1 Overview and Downloads
    Download and expand (extract) the zip file contents from here:
    GitHub Lenovo T420 Clover Latest Release. This same file set will be installed on the USB and the HD for UEFI boot. Download macOS from the App Store - they are freely available. One can build a macOS USB installer with the standard macOS installer app downloaded from the "App Store". Install macOS to a GPT formatted disk using the standard Install macOS.app downloaded from the Apple Store.  
    1.2 Create a standard macOS USB installer
     Partition an 8GB (or larger) USB formatted with GUID Partition Table (GPT) use the Partition Options... menu to change from MBR to GPT Name the partition - USB - the install process will rename it, but it matches the script below. Use format: Mac OS Extended (Journaled) (formerly OS X Extended) Note: if you have a larger USB (say 16GB) you can split into 2 8GB partitions, so you can have 10.13 and 10.12 installers on the same USB key
      Run this command to copy the bits to the USB key: sudo /Applications/Install\ macOS\ High\ Sierra.app/Contents/Resources/createinstallmedia --volume /Volumes/USB --applicationpath /Applications/Install\ macOS\ High\ Sierra.app –nointeraction  
    Note: if using an older version of macOS, replace with the corresponding app name. 
     
    1.3 Put Clover installation on USB
    Install Clover on the USB sudo mkdir /Volumes/ESP-USB sudo mount -t msdos /dev/disk1s1 /Volumes/ESP-USB cp -a ~/Downloads/Lenovo-T420-CloverYYYY.MM.DD/EFI/ /Volumes/ESP-USB/EFI Manually mount the ESP of the USB (there is script - espmount.bash - that you can use later in the Utilities folder as an option) If not done already, expand the downloaded Zip to ~/Downloads/LenovoT420-Clover-YYYY.MM.DD (this file set is the Zip) Copy the EFI directory to the ESP directory of the USB
    For example, assuming the USB is disk1:
    Note: run "diskutil list" on the command line to find your USB and HD disk devices 1.4 Boot Clover from USB Installer and select Install macOS
    Install the OS on your GPT disk on the macOS partition. Make sure the drive is formatted using: Scheme: GUID Partition Map (GPT) Partition Name: macOS Format: APFS - use macOS Extended (Journaled) for Sierra Dual BOOT tip: If you plan to dual boot Windows from the same HD - DO NOT make the 2nd partition NTFS or ExFAT with the Disk Utility app. For now make the all partitions "APFS" or "Mac OS Extended (Journaled)" Size the 2 partitions appropriately - later you will delete and reformat the 2nd unused partition space for Windows 1.5 GUI Install of macOS
    Click through the install menus and wait for the installation to fully complete - on a spinning disk takes about 30-45 minutes.
    Follow these Notes and Tips: When the installer screens shows: "To pair a Bluetooth keyboard, turn it on and wait for your computer to connect to it.” Hit the Space Bar to get past this step. When installer seems to hang at: "About a second remaining” Don’t Panic, this "second" may take about 10 minutes or more to finish. Just wait for the installer to reboot the computer and continue the installation. The whole install process takes about 1 hour to complete. On the first boot from the HD when asked:  "How Do You Connect?” Select: “My computer does not connect to the Internet” You can set up the network later after installation of the NIC driver kext - but it may already be working. The stock Intel WiFi will not work. Period.    
    Part 2 - Post OS Installation and Setup on HD/SSD
     
    2.1 Boot Clover from USB 
    On startup, hit F12 and select USB boot - but now in Clover select the newly installed disk/partition to start macOS.
    Note: You may see 3 Volumes instead of the expected 2 on the HD - macOS + Recovery HD - make sure you pick the volume that is NOT labelled Recovery HD. See step 3 below to remove the logical volume eliminates the confusion.
    2.2 Complete the installation steps - boot up and login
    Boot up macOS with Clover injecting the custom kexts from the USB.  Login and start a terminal session. 2.3 Install Clover on the Boot Drive ESP
    Download (or transfer) the same Zip files to the HD. (See below for details) In general, the provided kexts do not require any modification. Backlight should work if using WhaterEvergreen kext. 
      Details for Installing Clover Bundle on the Boot Drive ESP
    Now make the ESP contents on the boot drive exactly like the ESP used to setup the USB installer above. Manually mount the ESP of your HD on /Volumes/ESP. (See first 2 commands below.) Replace the ESP installed by Clover in the previous step -- means you copy/replace these 2 directories /Volume/ESP/EFI/CLOVER and BOOT with the ones from the Zip file. Just as you did for the USB, the config.plist is renamed from the one that matched your LCD. Mount and install the ESP bits to your HD/SSD (disk0) by following the same procedure as for the USB. Note: If you previously installed Windows, be careful to not lose the EFI/Microsoft contents.  Note: The Clover config.plist default volume name (the volume to boot automatically) is set to "macOS" - meaning your new volume is assumed to be named "macOS". If you use a different name - like "Macintosh HD" change the volume name or edit the name in config.plist to match. sudo mkdir /Volumes/ESP sudo mount -t msdos /dev/disk0s1 /Volumes/ESP cp -a ~/Downloads/Lenovo-T420-Clover-YYYY.MM.DD/EFI/ /Volumes/ESP/EFI  
    2.4 For 1600x900 LCD - Recommended Option: Install (copy) the DisplayVendorID-* directories 
    Many have GFX problems with 1600x900, so there are 3 configurations that inject an alternate EDID and set DualLink=1. Gfx freezes and glitches can be minimized by these alternate configs. Try the EDID- config first - copy it to replace the default config.plist. Then, these matching display options can help remove glitches with display speed/size options. The override files also provide a more natural color correction and gamma curves as well as more screen sizes for select Lenovo LCD models. These files are included in the Zip file and should be copied (via sudo) to /System/Library/Displays/Contents/Resources/Overrides.
    NOTE: For Catalina you may need to mount / as read/write. SIP should already be disabled0
     
    Note: For Yosemite or earlier versions, these files go in /System/Library/Displays/Overrides sudo cp -a ~/Downloads/Lenovo-T420-Clover-YYYY.MM.DD/\:System\:Library\:Displays\:Contents\:Resources\:Overrides/DisplayVendorID-* /System/Library/Displays/Contents/Resources/Overrides/ Note: for Catalina you need to make root / read/write  - to do this step issue before the above command: sudo mount -uw /  2.5 Remove the USB and Reboot to load Clover from the HD
    Notes: For this first boot, hit the spacebar on your boot selection (macOS) and use verbose mode.
    See below for other tools and scripts for to help with sleep/wake issues.
     
    Enjoy your Hackintosh!
     
    Optional Steps (no longer required)
    1) Install the all custom kexts to your OS /Library/Extensions folder
    Note: These days, Clover can "Inject" all the custom kexts from the ESP - so you no longer have to copy/install them into your system OS. However, if desired install the custom kexts from the Zip kexts directory to the /Library/Extensions directory by running:
    cd ~/Downloads/Lenovo-T420-Clover-YYYY.MM.DD/EFI/CLOVER/kexts/ sudo ./_kext-install.command  
    2) Ethernet Device Installation
    If you do not already have an ethernet device created as en0 - you can check the System Preferences/Network tool - this step loads the ethernet kext and resets network device order to have ethernet as en0. Seems to help with AppStore and iMessage etc.
    Note: macOS may already have configured the ethernet, so this step may be unnecessary but it will not hurt anything either for a fresh installation. Run this set of commands: sudo kextload /Library/Extensions/IntelMausiEthernet.kext sleep 10 sudo rm   /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist  
    3) Optional: Create a customer injector.The included/pre-made AppleBackLightInjector kext may work "as is" if you have a common Lenovo LCD. This kext gives full uniform brightness range for the LCD.  You can create a custom Backlight Injector kext for your LCD Panel if needed. This script will update the kext in the ../../EFI/CLOVER/kexts/Other directory - which is the unzipped package location.  This AppleBacklightInjector kext replaces the (obsolete) IntelBacklight.kext and the kext install script will remove the old one if on 10.12.4 or later. You may manually remove that kext if present.  To create this custom kext, run this procedure script:
     
    cd ~/Downloads/Lenovo-T420-CloverYYYY.MM.DD/Utilities/Create_AppleBacklightInjector_kext/ sudo ./createAppleBacklightInjector.command  
     
    Post Installation - Known Issues and Random Tips:
     
    GFX distortion/stretching: See Step 2.4 - sometimes DualLink is not set right for 1600x900 LCD.  WIFI: The stock Intel WiFi will not work. The common approach is use a modded BIOS 1.46 (or later) and replace the WiFi with a Broadcom or Atheros chip.  Bluetooth: Enable (turn on and leave on) Bluetooth so the green light is showing on the LCD bezel (do from Windows or Ubuntu). Also make sure the side switch is set to green too! "Black" Screen - hit "Pause" (or FN Home) key to increase LCD brightness sometimes the saved value in the nvram is out of sync or zero so LCD seems to be off. Audio: When using external headphones or speakers, may need to plug and unplug 1 or 2 times for recognition. Suggested settings if you don't want or use hibernation: sudo pmset -a hibernatemode 0 rm /var/vm/sleepimage Hibernation - Use OsxAptioFix2Drv-64.efi instead of OsxAptioFixDrv-64.efi UEFI driver for restart from hibernation. (Have not tested this in a long time). For hibernation, then set hibernate mode to 7 (mode 7 is like mode 3 but without encryption) - may need to manually edit this value into the plist file now. Note: Booting up from the hibernated image may have jumbled or blank LCD until you do a sleep/wake cycle to reset the LCD. sudo pmset -a hibernatemode 7 If you still have HFS+ formatted part vs APFS, Clover may present 2 options for main OS partition if using Logical Volume vs Standard Volume. You can revert the logical volume, so Clover will not get confused and present duplicate options. Just "revert" using: sudo diskutil corestorage revert /  
    Note: Bluetooth seems to have some issues in High Sierra (early version) the workaround seems to be turning off BT before sleep. This process can be automated by installing the Sleepwatcher tools - which handles the sleep/wake scenario. Optionally one can install "Clover" scripts which turn on/off all networks during shutdown via LoginHook and LogoutHook. The are scripts to re-enable all networks up login or during boot up. Go the Utility Folder in the zip and run these command: ./install_tools.command ./install_sleepwatcher.command ./install_clover_scripts.command  
    Fixed: iMessage/Messages/FaceTime may not register without overriding the Clover generated values for ROM and MLB values. Search thread for ROM to get more info. Otherwise define and inject using RtVariables -- see wiki for details - there are placeholders in the config.plistFixed: TrackPoint may not be responsive on startup (very random occurrence anymore) - a sleep/wake cycle should revive it. Fixed: With WhateverGreen or ACPIBacklight.kext installed, boot with lid open or LCD will be black when you open it. Fixed: Not needed anymore: Add boot option darkwake=0 if you would like to disable power nap - and have the lid wake the gfx instead of hitting extra key. OBSOLETE: After installing the kexts to /L/E, sometimes the symbolic link to the actual binary file referenced in AppleHDA_20672.kext is not right. Fix this link by running this script: cd /Library/Extensions/AppleHDA_20672.kext/Contents/ MacOS
    sudo rm AppleHDAsudo ln -s /System/Library/ Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA
    sudo touch /System/Library/Extensions  
    Notes on Custom Kexts
    FakeSMC.kext  
    - Core hack mechanism. Using Kozlek's version + plugins + custom FakeSMC Info.plist
    - 2 Custom SMC keys are added to Kozlec's standard FakeSMC
    - FNum (to find the Fan) and ACID (for AC power and eliminate powerd syslog messages every 30 seconds).
    - A Custom package is included in the Utilities folder so you can install HWMonitor.app - it just selects these 2 Plugins Sensors: ACPI and CPU.
      Lilu.kext  - by acidanthera - for use with certain kexts such as AppleALC, NightShift, WhateverGreen AppleALC.kext - by acidanthera - Keep original/unmodified AppleHDA.kext in /S/L/E and use this kext to add full audio support for CX20672/CX20590.

    There are 2 layout-id profiles:
    (1) ID 14 for normal laptop ports
    and
    (2) ID 13 which adds the audio ports on the Docking Station. Thanks to Manwe150's fix/additions for dock ports.

    The "dock" version adds the second channel output called "Headphones" and a second Input which shows up as either "Line In or Built-in Microphone" - these ports are physically on the Docking Station itself.
    IF you have a dock and want to use the extra ports, then set/inject Audio ID 13 in the Clover config.plist - IF you DO NOT have a dock, then use everything as is (and not be confused by the extra Input/Output options!!!)
      WhateverGreen.kext - by acidanthera - for Graphics and Backlight patching
      ACPIBatteryManager.kext - by RehabMan - show/track battery info on menu bar - Note: most Info.plist items are set to False instead of True Bluetooth_Injector_T420.kext - adds ProductID 8575 to make BT work better (provides on/off capability). IntelMausiEthernet.kext - Mieze's Intel LAN kext that supports TSO, EEE and other features. Put this kext in /Library/ Extensions and remove or disable AppleIntelE1000e.kext IOAHCIBlockStorageInjector.kext - configured to make just the DVD device appear internal so iDVD player works. USBInjectAll.kext - helps with USB properties VoodooPS2Controller.kext (v1.9.2) - RehabMans's PS2 Keyboard/TouchPad/TrackPoint SSDT are used to modify options instead - and can be used to setup alternate FN/key maps. keyboard mappings have 3 or 4 finger swipe left/right to back/forward configured for Safari browser vs space swipe  
    •       Obsolete:
    AppleBackLightInjector.kext - RehabMan's Injector method - modified for Lenovo T420 to incrementally scale brightness in 17 levels from 0 to 4882 (0x1312). Note: The template file has 2 models: T420 and T460. To create a customer Injector, run the Utilities createAppleBacklightInjector script to create a custom Panel definition specific to your LCD. It will put the new injector in the kexts/Other folder. Install it along other kexts with _kext_install.bash script. cd ~/Downloads/Lenovo-T420-Clover-YYYY.MM.DD/ Utilities/Create_AppleBacklightInjector_kext/sudo ./ createAppleBacklightInjector.command AppleIntelE1000e.kext (v2.4.14) - Ethernet (gigE) - can go in /System/ Library/Extensions vs Plugins so OSX re-installations or patch updates will not delete it. IntelBacklight.kext (v1.0.10) - RehabMan's kext for smoother/enhanced LCD backlight (dimming) control. In 10.12.4 (or later) this kext does communicate with Brightness keys or System Preferences Display Slider. So remove this kext unless on a version older (less) than 10.12.4 AppleHDA_20672.kext (v999.99) Keep original/unmodified AppleHDA.kext and add this kext to /L/E for full audio support for CX20672 (same as CX20590). Note: requires matching DSDT sections for Conexant Codec and layoutID 12. and Kext Patch via Clover. Also has Manwe150's fix/additions for dock ports. Credit and thanks to vladichimescu. There are 2 files in AppleHDA_20672.kext/Contents/Resources Platforms.xml.zlib.dock and Platforms.xml.zlib.nodock The "dock" version adds the second audio output called "Headphones" and a second Input "Line In" - both of which are on the Docking Station itself. • - IF you have a dock and want to use these ports - then just replace the Platforms.xml.zlib file with Platforms.xml.zlib.dock • - IF you DO NOT have a dock, then use the new kext as is! (and not be confused by the extra Input/Output options!!!)  
    General Notes, Fixes, and Features
    Installing Clover from the .pkg file:
    If you would like to run the included installer package, Clover_v2.5k_rxxxx.pkg, to install the related tools and latest bits into the OS and ESP of this HD, there is an installer package in the Utilities directory.
    Select (check box) at least first 2 items! This picture shows a good set of overall options:
     
    After you close the pkg installer, then follow these step to replace the ESP with the zip contents (step 4 above)
    There are extra Clover configuration files (config.plist) that use the custom DSDT and WITH extra Clover patching for EDID Certain config files inject an alternate EDID - rather than the default/built-in EDID for your LCD. These EDID were extracted and corrected (set to RGB only mode etc) from other LCD vendors such as LGD that seem to work better than the common/inferior standard from AUO. Historically, these fix problems such as white screen, glitches, and ring buffer hangs. 
    config.EDID-2e2.plist config.EDID-2e3.plist config.EDID-366.plist One should start with config.plist 
    if there are freezes or glitches, then try config.EDID-2e2 or EDID-2e3
    Note: The Model should be set to MacBookPro8,1 to get proper Graphics patching - DP/HDMI/DVI/VGA FrameBuffers
    config.patchDSDT.plist - does some patching. config.plist (default) - only fixes regions  Some folks were seeing problems when Clover was asked to patch the DSDT - most of the patching was redundant with the provided DSDT. So there are 2 generic versions - (1) does a number of patches to patch the built-in DSDT (i.e. when you don't provide one) and (2) a config.plist that does almost nothing to patch the DSDT. Over the years - way before the current SSDT/hot-patch approach was devised - manual edits were made to the DSDT.
    Clover does dynamic patching Patch for AppleIntelSNBGraphicsFB.kext - The included patch replaces the 4th port/buffer (DVI on dock) with VGA on left side. The 4 ports after patch are: LCD, DisplayPort on side, DisplayPort on dock, VGA on side. If you need DVI on the dock - then disable this patch! Or modify the edit scheme to change the 2nd or 3rd port (DP) to be the DVI if still want the VGA port. Patch for IOAHCIBlockStorage.kext - adds SSD TRIM function for a 3rd Party SSD - one can use the "trimforce" command now Patch for SATA ultra bay Note: Lilu+AppleALC will patch AppleHDA.kext for audio codec Conexant 20590/20672 chipset The Zip includes Clover files and custom kexts with kext install script: _kextinstall.command (but this is not really needed anymore) Gfx parameter files in Displays/Overrides offer more natural color gamma curves and screen options Newer Thinkpad theme - adds macOS Icons that may not be in the standard clover installer. Special keys on laptop (not USB or Bluetooth keyboard) without keymap remap SSDT :  FN keys LCD Brightness are controlled by these 2 button pairs to change brightness up/down: Fn+Home/End or ScrLck/Pause Audio Levels: The 3 buttons above F1-F3 control volume (except mic mute) Insert key is the CD/DVD eject. Blue ThinkVantage button - toggles fan to highest speed. The Alt key is the Mac Command key and Microsoft flag key is the Mac Option key. Fn+PgUp - turns on the light!
      DSDT Notes
    Some of the DSDT tweaks (beyond manwe150's original version) are listed here. DSDT includes source and binary The "EDID" versions of DSDT.aml be use override removes infamous HD 3000 glitches and buffer hangs or so-called artifacts for 1600x.900 LCD. Added MaxBeepBootVolume to DSDT to rid AppleHDA assertion on startup Shutdown fixes in DSDT _PTS and _WAK (thanks to TimeWalker75, RehabMan and Manwe150) Change/fixes to reset LEDs for proper sleep/wake status Battery fixes to use native/current ACPIPlatform.kext with Rehabman's ACPIBatteryManager.kext - no need to rollback or patch AppleACPIPlatform.kext anymore. PNLF additions from RehabMan provide smoother/wider LCD backlight control with IntelBacklight.kext DSDT mods to KBD device - renamed to PS2K and added LENOVO OEM-ids for VoodooPS2Controller to use. The PS2 Keyboard is identified as id LENOVO table-id T420 which will pickup the custom VoodooPS2Controller settings. For El Capitan+, removed the _PRW method from some of the devices in the DSDT
    DSDT for "heat-step" (DSDT.heat-step.aml) has a modified method to incrementally control the fan speed vs automatically by BIOS.
    Follow the installation recipe to use this approach:
    copy/replace the default DSDT.aml file with the DSDT.heat-step.aml file in the ESP (cp DSDT.heat-step.aml patched/DSDT.aml) make sure the ACPIPoller.kext is in use (move from Misc to Other folder) to active the method - changes fan speed vs CPU temperature. reboot For Example:
    mkdir /Volumes/ESP sudo mount -t msdos /dev/disk0s1 /Volumes/ESP cp -a /Volumes/ESP/EFI/CLOVER/ACPI/DSDT.heatstep.aml /Volumes/ESP/EFI/CLOVER/ACPI/patched/DSDT.aml cp -a /Volumes/ESP/EFI/CLOVER/ACPI/kexts/Misc/ACPIPoller.kext /Volumes/ESP/EFI/CLOVER/kexts/Other/  
    Scripts and tools will be put in /usr/local/bin. A directory ~/Library/ssdtPRGen will be created with other related data
    Script creates P and C states to match system CPU. One can hand-edit to modify values for lower power consumption.
    Copy ssdt.aml to your ESP ACPI/patched folder: /Volumes/ESP/EFI/CLOVER/ACPI/patched
×