Jump to content
tluck

[GUIDE] Lenovo T460/T470 macOS with Clover

985 posts in this topic

Recommended Posts

Lenovo T460 macOS with Clover Guide

  • Latest Release on GitHub (November 2019)
    • Updated to Clover r5099
    • Updated Lilu based kexts - Lilu, ALC, WEG
    • Added acidanthera VoodooPS2 kext v2.0.4
      • moved the older 1.9 to the Misc Folder as an option.
         
  • Various Tweaks over Last months
 
  • Release on GitHub (October 2019)
    • Updated to Clover r5097
    • Updated Lilu kexts - ALC, WEG
    • Merged Verleihnix' config.plist - especially to NOT inject GFX
    • Updated BacklightInjector as option to WEG
    • Added new DSDT patch for Catalina
  • Release v2019.01.24 on GitHub
    • Updated to Clover r4861
    • Updated Kexts
    • Shift to use WhatEvergreen.kext
    • SSDT updates for T460
    • Added Frank's T470p DSDT files
    • Added T470 DSDT
    • Remove kextunload/kextload in /etc/rc.sleep and /etc/rc.wake to avoid KP on sleep
  • Release v2018.06.05 on GitHub
    • Updated to Clover r4513
    • Updated Lilu.kext - supports both Sierra and High Sierra
    • Updated AppleALC.kext - supports both Sierra and High Sierra + added back DVMT patch for 10.13.2+
    • Updated VoodooPS2Controller.kext (RehabMan version) + SSDT updates for T460
    • Added Frank's T470p DSDT files
  • Release v2018.05.17 on GitHub
    • Updated to Clover r4458
    • Updated Lilu.kext - supports both Sierra and High Sierra
    • Updated AppleALC.kext - supports both Sierra and High Sierra + added back DVMT patch for 10.13.2+
    • Updated VoodooPS2Controller.kext (RehabMan version) + SSDT updates for T460
    • Added Frank's T470p DSDT files
  • Release v2018.04.04 on GitHub
    • Updated to Clover r4424
    • Updated apfs.efi - patched 10.13.4 version
    • Updated Lilu and AppleALC kexts - supports both Sierra and High Sierra)
  • Release v2018.01.28 on GitHub
    • Updated to Clover r4394
    • Updated apfs.efi to patched 10.13.3 version
    • Updated Lilu and AppleALC kexts to v1.2.3 (supports both Sierra and High Sierra)
    • Revised misc kexts (FakeSMC) 
  • Release v2017.11.05 on GitHub
    • Updated Clover to r4293
    • Updated Lilu and AppleALC kexts to v1.2.1 (for Sierra and High Sierra)
  • Release v2017.10.15 on GitHubRelease v2017.09.20 on GitHubRelease v2017.09.02 on GitHub
    • Updated Clover to r4247
    • Updated FakeSMC kext (merged slices's FakeSMC keys)
    • Updated ACPIBatteryManager kext to latest
    • Revised Utility and Clover scripts installer
    • Updated to Clover r4212
    • Updated Lilu and AppleALC kexts to v1.2 (for Sierra and High Sierra)
    • Updated USBInjectAll kext
    • Updated to Clover r4189
    • Updated AppleALC and Lilu kext
    • Updated VoodooPS2Controller kext
    • Updated ACPIBatteryManager kext
    • Updated misc scripts for 10.13
    • Updated Theme for High Sierra
    • Update install_nvram_save script in Utility folder
  • Release v2017.07.31 on GitHub
    • Updated to Clover r4129
    • Updated Theme for High Sierra
    • Updated Lilu and AppleALC for High Sierra
  • Release v2017.05.28 on GitHub
    • Updated to Clover r4078
    • Updated SSDT-XHC for Sierra method for USB power and current
    • Updates on misc scripts for esp mount and esp cleanup
    • Updated AppleALC and Lilu (1.1.2b) - revised patching to use the RehabMan's patch frame buffer method vs patch assertion for DVMT 32MB
    • Updated BrcmPatchRAM2.kext - increase sleep times for better BT recovery after wakeup from sleep

    • Config.plist - remove GFX properties - let Clover inject them

    • revised NVRAM script (1.16.5) + GFX fixes
    • Updated IntelMausiEthernet.kext Info.plist to enable TSO
    • Updated VoodooPS2Trackpad.kext Info.plist for TrackPad changed bogus move threshold = 100
  • Release v2017.04.25 on GitHub:
    • Updated to Clover 4063
    • Updated AppleALC (1.1.2a) - this kext does all the patching of SKLGraphicsFramebuffer and AppleHDA kexts - no GFX FakeID needed anymore
    • Updated Lilu.kext (1.1.0)
    • Added config.patchSKL.plist and config.noSKL.plist (to patch SKL FB and AppleHDA via Clover - the old way)
    • Converted the .bash scripts to .command script to be runnable from Finder
    • Added extra tools and scripts in the Utilities folder - patchmatic, iasl, skylakeFB patch/unpatch scripts
    • Cleaned up stuff for GitHub
  • Tweaks for config.plist
  • Updated FakeSMC.kext and HWMonitor pkg - see Utilities folder for full installation tool.
  • Updated VoodooPS2Trackpad kext Info.plist - setting to ignore larger bogus jumps.
  • re-added SSDT-CPU for HWP feature
  • Updated "NVRAM save scripts" with installation script to use a LogoutHook for the launch method.
  • Added RehabMan's AppleBacklightInjector method for Backlight for 10.12.4 and removed IntelBackLight.kext from Other (now an optional kext)
  • Changed to model MacbookPro13,1 for HWP support with syscl's X86Platform injector and SSDT in support of HWP 
  • Switched Audio to use AppleALC.kext instead of AppleHDA_ALC293/CodecCommander
  • Added revised rc.boot and rc.shutdown scripts by syscl/tluck that seem to save nvram.plist to ESP more reliably.
  • Updated Audio - added LineOut for Dock and ambient noise for external Mic input. - reduced Boost levels - thanks to syscl who figured HDMI out.
  • Updated CodecCommander - seems to help after wake.
  • USB - updated SSDT-XHC-T460 - added internal HS09 device for fingerprint reader
  • Added EDID patch scripts to force RGB mode in Utilities directory - gets rid of menu color glitches
  • Updated sleepwatcher scripts to deal with ethernet and wifi on sleep/wakeRevised VoodooPS2Controller kext - based on Jakibaki's work for middle button cut/paste + TrackPoint Scroll.
  • Changed layout id for Audio to 28 - for AppleALC implementation
  • Updated VoodooPS2Controller.kext
    -- TrackPoint scroll with cut/paste
    -- adding T560 support by barrrrt
    -- which include Belyaev's Sierra TrackPad preference pane mods
    -- cap locks fix

The zip file is a complete Clover ESP (/EFI) bundle and kext pack for the Lenovo T460. The current file bundle is tested on Sierra. 

Note: I never got the GFX fully working on El Capitan. 

  • Full Clover file set - config.plist etc.
  • Includes all custom kexts
  • Includes custom DSDT/SSDT scripts and patches
  • Utility scripts

The zip bundles are posted to GitHub: https://github.com/tluck/Lenovo-T460-Clover/releases

Caveat: The T460 systems used here was configured with: i5-6300U, Intel HD Graphics 520, 1920x1080 touch screen. If you have a different system model, then extract the ACPI files and use the included scripts to create a set of files consistent with your system type and BIOS version. See below for details.

Credits: RehabMan, Shmilee, vusun123, TimeWalker, Mieze from which, much of their work and help is/was was used to get the T460 to this point.

Devices and aspects working:

  1. Ethernet -  Intel I219LM is enabled via IntelMausiEthernext.kext
  2. WiFi/BT - substitute the Intel WiFi/BT with a compatible Broadcom or Atheros chip
  3. Audio - ALC293 codec implemented via AppleALC.kext (the old AppleHDA_ALC293 and CodecCommander kexts are not needed)
  4. PS2 - ClickPad + TrackPoint + all 3 buttons - using a modified VoodooPS2Controller to support new layouts - and added some custom Fn key maps based on 440/450 dsdt
  5. USB - implemented via custom SSDT + USBInjectAll kext. All USB3/USB2 ports are intel-based and work -  3 external USB and internal Camera, BT, etc 
  6. Sleep/Wake - the sleepwatcher package and custom sleep/wake scripts are used to help with sleep/wake for BT and PS2 devices.

Note: have not tried to implement the SD card reader - no driver found.

ACPI Files

 

 

If you have a T460, the ACPI files in zip should just "work" - at least to get the macOS installed. But in general it is best to make your own custom DSDT based on your system BIOS.  The ACPI (DSDT/SSDT) modifications are handled by combination of Clover on-the-fly patches, custom/direct patches to DSDT and the "hot-patch" method. Here are the key files:

  • DSDT- patched DSDT with included scripts. 
  • ssdt - (not included) and can be created for your CPU - will define C/P states via Pike's script ssdtPRGen.sh
  • SSDT-CPU - generic - for HWP support -  (no longer needed)  Clover 4016+ will generate SSDT with HWPEnabled and PStates true
     
  • SSDT-ARPT-T460 - Airport for Broadcom 4360 (if added)
  • SSDT-HACK-T460 - add misc functions for DSDT
  • SSDT-HDEF-T460 - fix/define Audio for ALC293 codec with layout ID 28 - linked to AppleALC.kext (or optional AppleHDA_ALC293.kext)
  • SSDT-IGPU-T460 - fix/define GFX for Intel HD 520 device 1916 (not really needed - since we inject graphics via clover as 4063)
  • SSDT-LPC-T460 - add/fix/define LPC device
  • SSDT-PNLF-T460 - add LCD/Panel
  • SSDT-PS2K-T460 - fix/define/add T460 defines keyboard and ClickPad/TrackPoint - linked to VoodooPS2Controller.kext
  • SSDT-SMBUS-T460 - add/fix/define SMBUS device
  • SDT-XHC-T460 - fix/define/add internal and external USB ports by custom UIAC device - linked to USBInjectAll.kext
  • SSDT-XOSI - generic - to set OS type

 

The (sample) custom DSDT in the zip is extracted from a T460 on BIOS v1.22.  

In the DSDT.T460 directory, there are the samples and scripts to create your own custom DSDT. The DSDT in the zip may work but its best to just match your system. The create_patch_DSDT.bash script will create a patched DSDT starting from the original ACPI files located the ACPI-Tables folder. The final DSDT is patched via patchmatic using the files in patch-files folder.  Follow these steps:

 

  1. Download and expand (extract) the contents from the Latest Release (zip file). 
     
  2. Copy the Utilities files into /usr/local/bin  The key files needed here are patchmatic, iasl, and espmount.bash
    Note: I assume the directory /usr/local/bin exists and is in your environment variable PATH
    
    cd ~/Downloads/Lenovo-T460-Clover-YYYY.MM.DD/Utilities/
    sudo ./install_tools.command
  3. Extract ACPI files.
    Start by extracting your original ACPI files by hitting F4 after you boot up with Clover. It will save the files to EFI/CLOVER/ACPI/origin. Note: this origin folder needs to exist.
     
  4. Copy the newly created ACPI files from the HD ESP to your working folder
    Copy the original .aml files from the origin directory - just the ones with names starting with DSDT and SSDT - from the ESP to a directory called DSDT.T460/ACPI-Tables ( which is part of the expanded zip file).

    Note: To mount the main system ESP, run this command which was installed with the tools in step 1.
    
    /usr/local/bin/espmount.bash 0
  5. Create your own patched DSDT.
    Using the original copied to the ACPI-Tables directory as the source, create a custom patched DSDT.dsl by:
    
    cd ~/Downloads/Lenovo-T460-Clover-YYYY.MM.DD/DSDT.T460
    ./create_patched_DSDT.command
  6. Install the new custom ACPI files into the ESP
    Now there is a new custom DSDT.dsl along with some other .dsl files in this same directory as the result of the patching script. To compile and install this newly create patched DSDT.dsl along with the other SSDT*.dsl files into the ESP, run this script below. It will mount the system disk partition disk0s1 (the ESP) on /Volumes/ESP, compile all the *.dsl files, and then copy them all to /Volumes/ESP/EFI/CLOVER/ACPI/patched location
    
    ./install_ACPI_to_ESP.command

 

New Installation - Steps and Details

 

BIOS settings:

  • Update to latest BIOS
  • Use Defaults settings, but check these items:
  • Set Security / Memory Protection / Execution Prevention = Enabled
  • Disable Secure Boot

Terms:

GPT = GUID Partition Table
MBR = Master Boot Record
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

 

 

 
This procedure is for a new macOS installation using a USB Installer. If you are upgrading from an older working version of OS X (say El Capitan) already on your HD, 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. Download and expand (extract) the zip file contents from the GitHub Lenovo T460 Clover Latest Release.
    This same file set will be installed on the USB and the HD for UEFI boot.
     
  2. Download macOS from the App Store - they are freely available
    We build a macOS USB installer with the standard macOS installer app downloaded from the "App Store".
     
  3. Install macOS to a GPT formatted disk using the standard Install macOS.app downloaded from the Apple Store.

Create macOS USB installer

  1. Partition an 8GB (or larger) USB formatted with GUID Partition Table (GPT)
    - In Sierra, use the Erase option to change from MBR to GPT/GUID scheme.
    - Name the new partition USB. The install process will rename it, but this matches the script below.
    - Use format: macOS Extended (Journaled)
    Note: if you have a larger USB (say 16GB) you can split into 2 8GB partitions, so you can have 10.12 and 10.11 installers on the same USB key 
     
  2. Run this command to copy the downloaded bits to the USB key: 
    
    sudo /Applications/Install\ macOS\ Sierra.app/Contents/Resources/createinstallmedia --volume /Volumes/USB --applicationpath /Applications/Install\ macOS\ Sierra.app --nointeraction

Put Clover installation on USB

  1. Install Clover on the USB
    a ) Manually mount the ESP of the USB and copy the entire EFI directory.
    b ) If not done already, expand the downloaded Zip to ~/Downloads/Lenovo-T460-Clover-YYYY.MM.DD (this set is called the Zip below)
    c ) Copy the EFI directory to the ESP directory of the USB

    For example, assuming the USB is disk1:
    
    sudo mkdir /Volumes/ESP-USB
    sudo mount -t msdos /dev/disk1s1       /Volumes/ESP-USB
    cp -a ~/Downloads/Lenovo-T460-Clover-YYYY.MM.DD/EFI/ /Volumes/ESP-USB/EFI
    Note: run "diskutil list" on the command line to find your USB and HD disk devices
 

    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.
    Make them both macOS Extended (Journaled) to keep a PMBR vs MBR.
    Size the 2 partitions appropriately - but later you will delete/reformat the 2nd partition for Windows. I recommend gpt which can make an NTFS partition without converting the PBMR.
         
  2. For a T560: Set up the ACPI configuration files to match your model.  

    go to /Volumes/ESP-USB/EFI/CLOVER
    Rename  ACPI to ACPI.T460
    Rename ACPI.T560 to ACPI

Boot Clover from USB Installer and select Install macOS

  1. Boot from the USB and install macOS on your GPT disk partition. (Hit F12 to select USB drive)

    Make sure the HD/SSD drive is formatted using:
        Scheme: GUID Partition Map (GPT),
        Partition Name: macOS,
        Format: mac OS Extended (Journaled)

    Note: *should NOT be needed* but If you get a KP from AppleIntelSKLGraphicsFramebuffer, then use the Clover Options Menu and to select the alternate configuration file: config.noSKL.plist. This injects a bogus graphics device ID 0x12345678.
     
  2. Click through GUI 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”
               And set up the network later after installation the NIC driver kext.
               Your Intel WiFi will not work. Period. 

 

Part 2- Post OS Installation and Setup

 
  1. Boot Clover from the USB 
    On startup, hit F12 and select USB -  You boot Clover from the USB, but now select the newly installed disk/partition to start macOS.  

    Note: *should NOT be needed* but if you get a KP from AppleIntelSKLGraphicsFramebuffer, then use the Clover Options Menu and select config.noSKL.plist. See step 7 below to fix this problem. AppleALC.kext + Lilu.kext will patch the Graphics Framebuffer to avoid a DVMT check KP.

    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 convert the logical volume which will eliminate the abstraction and confusion.
     
  2. Complete the installation steps and login
    Note: This will boot up macOS with Clover injecting the custom kexts from the USB (for now). 
     
  3. Convert the Logical volume to Physical volume (for HFS)

    With an HFS formatted volume, the full installer may want to make a logical volume. So for simplicity, I recommend one to revert the root volumes to a regular volume.

    In Terminal run: 
    
    sudo diskutil corestorage revert /
  4. Install Clover (ESP) on the HD
    Now the make the HD bootable with Clover. Transfer the Zip file contents to the new HD. Then use a similar process as used for the USB.  
    Note: I assume the Zip is in ~/Downloads/Lenovo-T460-Clover-YYYY.MM.DD/

    a ) NVRAM
    Since we are using Clover's EmuVariable method to simulate NVRAM, Clover looks for the file nvram.plist to get its persistent values - which is stored in the ESP now. Install the "root" utilities and clover scripts and files from Utilities folder to your HD. This step is important as it installs the "rc scripts" to save the nvram contents to a file upon reboot.

    Important: It will register your system to use a LogoutHook.
    
    cd ~/Downloads/Lenovo-T460-Clover-YYYY.MM.DD/Utilities/
    sudo ./install_clover_scripts.command
    b ) ESP
    The ESP contents on the HD are now to be made exactly like the ESP used for the USB installer above.  
    Mount the HD ESP and copy over the EFI items. You can follow the same procedure used for the USB installer.
    Note: If you previously installed Windows, be careful to not lose the EFI/Microsoft contents by following the procedure outlined below. 

    For example, assuming the main drive is disk0:
    
    sudo mkdir /Volumes/ESP
    sudo mount -t msdos /dev/disk0s1       /Volumes/ESP
    cp -a ~/Downloads/Lenovo-T460-Clover-YYYY.MM.DD/EFI/ /Volumes/ESP/EFI
    c ) Custom DSDT
    Using the procedure outlined above in the ACPI Files section, create and replace the custom DSDT in EFI/CLOVER/ACPI/patched
     
  5. Install Kexts onto the HD in /Library/Extensions

    a ) For 10.12.4+: Create a custom AppleBackLightInjector kext

    Note: This kext is not needed on the USB installer.

    Since this method replaces the IntelBacklight.kext (which is still included as an optional kext) - manually remove that kext if present. Now create a custom Backlight Injector that matches your LCD Panel. The script will update the kext in the ../../EFI/CLOVER/kexts/Other directory - which is the unzipped package location. Run this procedure script:

    
    cd ~/Downloads/Lenovo-T460-Clover-YYYY.MM.DD/Utilities/Create_AppleBacklightInjector_kext/
    sudo ./createAppleBacklightInjector.command

    b )  Install the kexts
    Install the custom kexts from the Zip kexts directory to the /Library/Extensions directory by running:

    
    cd ~/Downloads/Lenovo-T460-Clover-YYYY.MM.DD/EFI/CLOVER/kexts/
    ./_kext-install.command
  6. Ethernet Device Installation (Optional)
    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
  7. Remove the USB and Reboot with Clover from the HD

    Note: For this boot session, you may want to
    1- in Clover hit F3 to save the ACPI files
    and 
    2 - in Clover hit the spacebar on your boot volume selection (macOS) to set verbose mode to watch for any issues.

Notes on Custom Kexts

 

All the kexts listed below are contained in the zip file. The origin is listed below if you wish to download them as well. I recommend you use the _kext-install.command script to properly copy all kexts to the /Library/Extensions directory.
 

  • Audio/GFXAppleALC.kext  + Lilu.kext  kernel patcher
    - 2 layout options
    - If you have a Docking Station, you can use LayoutID 28 for HDMI, Speaker, Mic, Headphones, ExtMic + extra LineOut for Dock Out
    - or optionally use LayoutID 29 to remove the extra LineOut option if it is not wanted.

    Important:
    1. Requires matching SSDT-HDEF with layoutID=28 or 29. The AppleALC kext defines the patches for AppleHDA and AppleIntelSKLGraphicsFramebuffer.kex in lieu of Clover. This kext version has extra GFX Framebuffer patching for DVMT KP,  brightness levels, as compared to the AppleALC distribution on GitHub.

    2. Keep original/unmodified AppleHDA.kext in /S/L/E and add the AppleALC.kext and Lilu.kext to /Library/Extensions for full audio support (and critical patching)


Obsolete: Also included are the old alternate audio kexts in ALC293 directory: 
- AppleHDA_ALC293.kext (v9278.56) -  custom kext adapted from an ALC292.kext and based on 10.12.3 AppleHDA. This kext requires the HDA kext patching via Clover.
- CodecCommander_ALC293.kext  - TimeWalker's kext - with ALC293 added - OPTIONAL - used to resolve missing input/outputs or sleep/wake issues.

 

  • Keyboard/Mouse: VoodooPS2Controller.kext (v1.9.2) - RehabMans's PS2 Keyboard/TouchPad/TrackPoint (my branch has been merged in to master branch)
    • This version has T460 definitions in the SSDT-PS2K 
      see LENOVO T460 "override" settings. Change defaults to suite your needs.
    • VoodooPS2Controller keyboard mappings have 3 or 4 finger swipe left/right to back/forward configured for Safari browser
    • Note: If MouseMiddleScroll is set to true - TrackPoint scrolling with MiddleButton works better. 
       
  • OSFakeSMC.kext (v6.26.1443) - Core hack mechanism. Using Kozlek's version + plugins + custom FakeSMC Info.plist
    - 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.
    - Two 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).
     
  • Battery: ACPIBatteryManager.kext (v1.90.1) - RehabMan's kext to show/track battery info on menu bar
     
  • GFX/LCD: WEG (and optionally) AppleBackLightInjector.kext (v0.9.3) - Whatevergreen (WEG)+ Lilu is the way to go now. But still can use RehabMan's Injector method - modified for Lenovo T460 to incrementally scale brightness in 17 levels from 0 to 1000 - see matching kext patch for Framebuffer brightness - which changes the maximum backlight brightness level to 1000. Note: The template file has 2 models: T420 and T460 but can be expanded as needed. 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-T460-Clover-YYYY.MM.DD/Utilities/Create_AppleBacklightInjector_kext
    sudo ./createAppleBacklightInjector.command

 

  • Ethernet: IntelMausiEthernet.kext (v.2.3.0) - Mieze's kext for Intel LAN that supports TSO, EEE and other features. 
     
  • USB: USBInjectAll.kext (v0.6.5) - RehabMan's kext -  See SSDT-XHC.dsl for related UIAC Device
     
  • CPU: X86PlatformPluginInjector.kext (v9.9.9) - based on syscl's injector for HWP properties. When using, MBP13,1 there is a custom property file for standard T460 CPUs:  i7-6600U 3400 MHz, i5-6300U 3000 Mhz, i5-6200U 2800 Mhz and i3-6100U 2300 Mhz.  This is the only kext that must be in /L/E since it uses a symbolic link to the standard version of this kext.


WiFi Replacement

These kexts and procedure are used with Broadcom WiFi/B. Replace the Intel WiFi with suitable supported card such as a BCM94352Z (Dell DW1560) with proper M.2 form-factor. To install the SleepWatcher scripts, which will help with WiFi on Sleep/Wake use this process to install the scripts into / of your HD


cd ~/Downloads/Lenovo-T460-Clover-YYYY.MM.DD/Utilities/
sudo ./install_sleepwatcher.command

Reboot and check that SleepWatcher is running via "ps -ef | grep sleep". 

Install these kexts for a Broadcom chip.

  • BrcmFirmwareRepo.kext (v2.2.7) - RehabMan's kext - to load firmware for Broadcom
  • BrcmPatchRAM2.kext  (v2.2.7) - based on RehabMan's kext, but modified to fix/change sleep/wake timings for T460.
  • FakePCIID.kext (v1.3.6)- RehabMan's kext
  • Fake_Broadcom_WiFi.kext (v1.3.6) - RehabMan's kext

 

 

Edited by tluck
Updates

Share this post


Link to post
Share on other sites
Advertisement

On the graphics, I don't think the DVMT is the problem, as most Skylake laptops with closed-off bios such as Dell and Acer also have 32MB DVMT-pre allocated memory and they still boot in just fine - only minor glitch on finder bar and gradient area, but that can be dealt with by using other display color profiles

Share this post


Link to post
Share on other sites

First off, EDID. Use MonInfo ( Windows ) and post the current EDID of your monitor ( in text format, save the raw numbers ). Then we will actually have something to work with. There are also cases of laptop display ( mainly Sony Vaio ) doesn't detect the right EDID, therefore it will get stuck or black screen with backlight on

Share this post


Link to post
Share on other sites

Hello,

 

Can you upgrade your guide with what is working or not?

 

Thank you

Everything will work except for:

1. Stock Intel Wireless Card ( replace with a BCM4352Z or Dell Wireless 1830A ( BCM4360Z )

2. Graphics ( currently bugged )

Share this post


Link to post
Share on other sites

@azerty076 - just posted a reply on another site. but i will update the GUIDE with my latest files etc. 

 

So quickly what works:

1) ethernet - IntelMausi kext
2) WiFi/BT - with BCM4352Z NGFF M.2 (aka Dell DW1560) - BrcmPatchRAM2 modified for to slow down firmware for USB wake.
3) Audio - ALC293 AppleHDA.kext
4) PS2 - Clickpad/Trackpad + TrackPoint + all 3 buttons - VoodooPS2Controller modified - F key maps
5) USB - custom SSDT + USBInjectAll kext mods. so all external USB3/USB2 ports and internal ports - Camera, BT work.
6) sleep/wake
 

have not messed with SD Card.

Edited by tluck

Share this post


Link to post
Share on other sites

@azerty076 - just posted a reply on another site. but i will update the GUIDE with my latest files etc. 

 

So quickly what works:

1) ethernet - IntelMausi kext

2) WiFi/BT - with Dell 1510 (BCM43252Z) - BrcmPatchRAM2 modified for to slow down firmware for USB wake.

3) Audio - ALC293 AppleHDA.kext

4) PS2 - Clickpad/Trackpad + TrackPoint + all 3 buttons - VoodooPS2Controller modified - F key maps

5) USB - custom SSDT + USBInjectAll kext mods. so all external USB3/USB2 ports and internal ports - Camera, BT work.

6) sleep/wake

7) GFX 2D - turn off IntelAccellerator.

have not messed with SD Card.

 

Hello,

 

I saw your message on the other site. It will be good if you can update this guide with the latest files ;) 

 

Otherwise, I think that i saw in the bios that we can configure the NVRAM size, for me it was 128Mo I think. I have a core i7 6660U.

Share this post


Link to post
Share on other sites

I posted the current/updated zip - not much changed. 

 

@tluck,

hello In my case I have 3D acceleration but I have transparency glitches only. I didn't rename file AppleIntelSKLGraphics.kext and my Hackintosh is working like a charm.

 

 

Here I attach transparency glitch example:

 

 

 

do you have this issue also ?

post-1637991-0-53571700-1475696139_thumb.png

Share this post


Link to post
Share on other sites

@aleixsr - what is your machine model? perhaps post your clover ESP and any other ideas for comparison? i will repost my zip later today. i made some slight changes in the VoodooPS2Controller kext.

Share this post


Link to post
Share on other sites

@tluck,

hello In my case I have 3D acceleration but I have transparency glitches only. I didn't rename file AppleIntelSKLGraphics.kext and my Hackintosh is working like a charm.

 

 

Here I attach transparency glitch example:

 

 

 

do you have this issue also ?

Try changing display color profile. One of the sRGB profiles will solve the issue

Share this post


Link to post
Share on other sites

darn. no joy. i tried your clover zip and got to same exact place - hung on IntelAccelerator.

 

wonder about differences in computer

cpu  - mine is i5-6300U? vs you have i5-6200U.

LCD - do you have touch screen?

 

i noticed you dont have a DSDT or SSDT files in your ACPI folders?

 

$ ioreg -l 

 ....

    | |   | | +-o IOFramebufferUserClient  <class IOFramebufferUserClient, id 0x1000003df, !registered, !matched, active, busy 0, retain 5>

    | |   | |     {

    | |   | |       "IOUserClientCreator" = "pid 220, WindowServer"

    | |   | |     }

    | |   | |    

    | |   | +-o IntelAccelerator  <class IntelAccelerator, id 0x1000002fd, registered, matched, active, busy 0 (0 ms), retain 10>

    | |   |   | {

^C^C^C

 

I don't have touch screen.

Why you said I don't have DSDT and SDST? Yes, I have it and I'm based on your files you posted on another forum. Please let me know.

 

Here is my ioreg -l:

...

| |   | | +-o IOFramebufferUserClient  <class IOFramebufferUserClient, id 0x100000380, !registered, !matched, active, busy 0, retain 5>

    | |   | | |   {

    | |   | | |     "IOUserClientCreator" = "pid 172, WindowServer"

    | |   | | |   }

    | |   | | |

    | |   | | +-o IOFramebufferSharedUserClient  <class IOFramebufferSharedUserClient, id 0x100000431, !registered, !matched, active, busy 0, retain 6>

    | |   | |     {

    | |   | |       "IOUserClientSharedInstance" = Yes

    | |   | |       "IOUserClientCreator" = "pid 1071, firefox"

    | |   | |     }

    | |   | |

    | |   | +-o AppleIntelFramebuffer@1  <class AppleIntelFramebuffer, id 0x1000002d3, registered, matched, active, busy 0 (1 ms), retain 14>

    | |   | | | {

 

...

 

| |   | +-o IntelAccelerator  <class IntelAccelerator, id 0x1000002d0, registered, matched, active, busy 0 (42 ms), retain 92>

 

 

Please tell me how can I help you.

Try changing display color profile. One of the sRGB profiles will solve the issue

 

GREAAAATTTT !!!!!

 

It's true! Using sRGB IEC61966-2.1 Display profile did the trick!!

 

Thank you very much!!!

Share this post


Link to post
Share on other sites

GREAAAATTTT !!!!!

 

It's true! Using sRGB IEC61966-2.1 Display profile did the trick!!

 

Thank you very much!!!

In fact your problem is the same as Haswell's 9MB Cursor issue. A little bit edit to the framebuffer will solve this matter without changing display profile, but I'm no expert on this one

Share this post


Link to post
Share on other sites

Sorry, you're completely right, I don't understand what happened when I compressed files.

 

Here is the correct version, you'll fine references to your nickname ;)

 

 

CLOVER.zip

Share this post


Link to post
Share on other sites

cool. i'll test this out later. as i said i wanted to replicate your setup to see what is different on my box.

 

is your LCD touch?

 

No, my LCD isn't touch.

Share this post


Link to post
Share on other sites

In fact your problem is the same as Haswell's 9MB Cursor issue. A little bit edit to the framebuffer will solve this matter without changing display profile, but I'm no expert on this one

 

Hi, it is not fully fixed, can you help me or tell me where I can found info about how to solve it ?

 

Thank you

Share this post


Link to post
Share on other sites

Hi, it is not fully fixed, can you help me or tell me where I can found info about how to solve it ?

 

Thank you

Google "Haswell 9MB Cursor Patch" and 1st result should be from tony's site. It has basic information on how to fix that problem on Haswell, take that and do what you can with Skylake ( do not replicate the same patch onto the SKLFramebuffer, I do not know if the patch will crash your system or not )

Share this post


Link to post
Share on other sites

well - still no luck here on full 3D gfx - i took your zip and booted up - but again IntelAcellerator hangs.

seems the touch display is the difference.

Is your touch display PS2-based or I2C based ?

Share this post


Link to post
Share on other sites

In fact your problem is the same as Haswell's 9MB Cursor issue. A little bit edit to the framebuffer will solve this matter without changing display profile, but I'm no expert on this one

 

Hello, I discovered that if I boot Windows and then reboot these graphic glitches don't appear, it is related to framebuffer? How can I know what I must change?

Here I attach ioreg files booting directly to OS X and rebooting from Windows.

 

Thank you very much

T460-01-Post_WIN_Boot.ioreg.zip

T460-01-OSX_Boot.ioreg.zip

Share this post


Link to post
Share on other sites

In fact your problem is the same as Haswell's 9MB Cursor issue. A little bit edit to the framebuffer will solve this matter without changing display profile, but I'm no expert on this one

 

Can you please help me on how to edit framebuffer ?

 

thank you.

Share this post


Link to post
Share on other sites

Lenovo T460 Clover Guide

 

Overview - Work in Progress - 05-Oct-2016

 

  • Updated Clover to 3787
  • Updated VoodooPS2Controller.kext (again) 
  • Updated FakeSMC kext to next rev

Attached is a current zip file with a complete /EFI pack for the Lenovo T460 using Clover on OS X

The current File Bundle is for 10.11 - the zip file attached to the bottom of this post

  • Full Clover file set - config.plist etc.
  • Includes all custom kexts
  • Includes custom DSDT/SSDT scripts and patches

Caveat:

My system is a T460 with Intel 520 Graphics. Currently, the full advanced graphics are not working due to lack of DVMT pre-allocated memory. Most systems need 64, 96 or 128 MB. This system seems to have 32 MB. 

I must rename /S/L/E/AppleIntelSLKGraphics.kext to not be used at this time.

 

Credits to: RehabMan and Shmilee (more to come) from which, much is/was based on to get the T460 to this point.

 

 

Devices and aspects working:

  1. Ethernet -  needs IntelMausiEthernext.kext
  2. WiFi/BT - substituted Intel WiFi/BT with Dell 1510 (BCM43252Z) - BrcmPatchRAM2 modified for to slow down firmware for USB wake.
  3. Audio - ALC293 AppleHDA.kext
  4. PS2 - Clickpad/Trackpad + TrackPoint + all 3 buttons - VoodooPS2Controller modified - F key maps
  5. USB - custom SSDT + USBInjectAll kext mods. so all external USB3/USB2 ports and internal ports - Camera, BT work.
  6. Sleep/Wake - sleep watch
  7. GFX 2D - turn off IntelAccellerator.

Note: have not tried to implement the SD card reader.

 

 

ACPI Patches and Files:

  • DSDT.dsl - patched DSDT  
  • ssdt.dsl - define C/P state for I5 via Pike's script

     

  • SSDT-HACK-T460.dsl - add misc functions
  • SSDT-XOSI.dsl  - sets OS type
  • SSDT-LPC-T460.dsl - add/fix/define LPC device
  • SSDT-SMBUS-T460.dsl - add/fix/define SMBUS device
  • SSDT-HDEF-T460.dsl - fix/define Audio for ALC293 codec
  • SSDT-IGPU-T460.dsl - fix/define GFX for Intel HD 520 device 1916
  • SSDT-PNLF-T460.dsl - add LCD/Panel
  • SSDT-PS2K-T460.dsl - fix/define/add T460 keyboard
  • SSDT-XHC-T460.dsl - fix/define/add internal and external USB ports 

 

Boot Clover and define gfx device ID=0x12345678 until able to disable AppleIntelSKLGraphics.kext

 

Part 1 - OS Installation

 

see http://www.insanelymac.com/forum/topic/285678-lenovo-thinkpad-t420-with-uefi-only/page-25?do=findComment&comment=1952283

 

Part 2 - Post OS Installation and Setup on HD

 

 

  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 OS X.  

     

    Note: You may see 3 Volumes instead of the expected 2 on the HD - OS X + 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. Complete the installation steps and login

    Note: This will boot up OS X with Clover injecting the custom kexts from the USB (for now). 

     

  3. Convert the Logical volume to Physical volume

    The full installer likes to make a logical volume. So for simplicity, I recommend one to revert the root volumes to a regular volume.

     

    Run: 

    sudo diskutil corestorage revert /
  4. Install Clover on the HD

    Transfer the Zip file and the most Clover installation pkg to HD (via another USB). 

     

    a ) Run the Clover_v2.3k_rxxxx.pkg to install the related latest bits into the HD OS and ESP (usually partition 1) of disk0. Use the link to download the pkg from SourceForge.  You can do this step later on if you don't have way to get it before you are setup on the network.

     

    Select (check box) at least first 2 items! This picture shows a good set of overall options:

    attachicon.gifclover-pkg-options.png  After you close the pkg installer, then follow these step to replace the ESP.

     

    b ) The ESP contents on the HD are now to be made exactly like the ESP used to setup the USB installer above. If the ESP is not mounted from the running Clover installer pkg, manually mount the ESP of your HD on /Volumes/ESP. (See first 2 commands below.) Then you will replace the ESP installed by Clover in the previous step. Which means you copy/replace these 2 directories /Volume/ESP/EFI/CLOVER and BOOT with the ones from the Zip file. Then just as you did for the USB, the config.plist is renamed from the one that matched your LCD. For a manual mount and install of the ESP bits to disk0 follow same procedure as for the USB. 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 OSX - meaning your new volume is assumed to be named OSX

    If you use a different name, change the volume name or edit the name in config.plist to match. 

    mkdir /Volumes/ESP
    sudo mount -t msdos /dev/disk0s1 /Volumes/ESP
    
    mkdir -p /Volumes/ESP/EFI
    cp -a ~/Downloads/T460/EFI/* /Volumes/ESP/EFI
    
    
  5. Install custom kexts on HD

     

    Install the custom kexts from the Zip kexts directory to the /Library/Extensions directory by running EFI/CLOVER/kexts/_kext-install.command

    Note: If you choose to NOT install the custom kexts in the OS /L/E directory, then AppleHDA kext will not work properly. DO NOT remove standard AppleHDA.kext from /S/L/E.

     

    Run this script:

     ~/Downloads/T460/EFI/CLOVER/kexts/_kext-install.command
  6. Ethernet Device Installation

     

    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: OSX 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
  7. Remove the USB and Reboot to load Clover from the HD

    Note: For this first boot, hit the spacebar on your boot selection (OSX) and use verbose mode.

 

 

 

Notes on Custom Kexts

 

All the kexts listed below are contained in the zip file. The origin is listed below if you wish to download them as well. I recommend you use kext install tool to properly copy all kexts to the /Library/Extensions directory.

  • FakeSMC.kext (v6.21.1413) - Core hack mechanism. Using Kozlek's version + plugins + custom FakeSMC Info.plist

    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.

    • ​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).
  • ACPIBatteryManager.kext (v1.70.1) - RehabMan's kext to show/track battery info on menu bar

     

  • AppleHDA_ALC293.kext (v9274.12) adapted from ALC292.kext. Note: Keep original/unmodified AppleHDA.kext and add this kext to /L/E for full audio support. Note: requires matching DSDT sections for config.plist layoutID 1. and uses Kext Patch via Clover. 

     

  • USB_Injector.kext (1.0.0) - based on RehabMan's UsbInjectAll.kext but modified for T460 XHCI devices. see SSDT-XHC.dsl for related details. 

     

  • IntelBacklight.kext (v1.0.10) - RehabMan's kext for smoother/enhanced LCD backlight (dimming) control. 

     

  • IntelMausiEthernet.kext (v.2.2.0) - Mieze's Intel LAN kext that supports TSO, EEE and other features. Put this kext in /Library/Extensions

     

  • VoodooPS2Controller.kext (v1.8.24a) - New T460 version of RehabMans's PS2 Keyboad/TouchPad/TrackPoint -  

     

    This version has extra T460 definitions in the Info.plist files. And recoded to support 3 real buttons as well ClickPad Right/Left click.

    • Modified Info.plist(s) to add LENOVO T460 override settings. Change defaults to suite your needs in VoodooPS2Controller.kext/Contents/PlugIns/VoodooPS2TrackPad.kext/Contents/Info.plist
    • Reduced MouseMultiplier X and Y for TrackPoint.
    • Note: VoodooPS2Controller keyboard mappings have 3 or 4 finger swipe left/right to back/forward configured for Safari browser

OPTIONAL - used with Dell 1560 Wifi/BT replacement card:

 

Hi @tluck,

your script is returing this error:

 

./_kext-install.command: line 86: cd: /Library/Extensions/AppleHDA_20672.kext/Contents/MacOS: No such file or directory

 

Where is AppleHDA_20672.kext ?

 

Thank you

 

Share this post


Link to post
Share on other sites

ah sorry that is an older script that was hardcoded for my T420... meaning that kext is for the T420 not the T460.

 

ill update the package later but here is revised script that ought to work 

Thank you, I just saw there is:

sudo ln -s /System/Library/Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA

but I don't have AppleHDA.kext ?¿?¿ Does it make sense?

Thank you, I just saw there is:

sudo ln -s /System/Library/Extensions/AppleHDA.kext/Contents/MacOS/AppleHDA

but I don't have AppleHDA.kext ?¿?¿ Does it make sense?

 

Sorry, I found it was on /Backup Extensions folder, I restored it but I don't have any sound device, how did you got it working?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By ludufre
      Installing macOS Catalina 10.15.2 on Lenovo ThinkPad L440

       
      There are two version of this laptop:
      - 20AS = Chipset QM87, without Express Card (mine).
      - 20AT = Chipset HM86, with Express Card.
      I strong believe is the same thing...
       

      Changelog:
       
      12/11/2019 04:24h GMT-0
      - Added 10.15.2 update instructions.
      - Replaced IntelMausiEthernet.kext with IntelMausi.kext.
       
      11/08/2019 20:30h GMT-0
      - Added instructions to swap Command with Option keys in VoodooPS2Controller.kext.
      - Added additional FileVault 2 UEFI drivers be more practical.
       
      10/30/2019 01:42h GMT-0
      - Added 10.15.1 update instructions.
      - Replaced AppleALC.kext with VoodooHDA.kext
      - No more issues after sleep or misconfiguration with jack sense.
       
      10/29/2019 18:18h GMT-0
      - Replaced the config.plist with AppleIntelCPUPM = true.
       
      10/27/2019 05:37h GMT-0
      - Replaced the DW1560 wireless card with BCM94360CS2.
       
      10/20/2019 20:47h GMT-0
      - Removed AppleBacklightFixup.kext.
      - WhateaverGreen now implements backlight since 1.2.5.
       
      10/20/2019 18:10h GMT-0
      - First version.
       
      What works and what does not
       
      - Processor: Intel Core i5-4300M ->  Work. All SpeedStep stages.
      - Video Card: Intel HD4600 ->  Work. QE/CI and Metal.
      - Chipset: Intel QM87 ->  Work.
      - Mini DisplayPort ->  Work. But no audio, yet.
      - VGA ->  Not work. Normal.
      - Audio: ALC292 ->  Work.
      - WiFi/Bluetooth: Intel AC 7260 ->  Not work. Replaced with DW1560 BCM94360CS2 (need whitelist removal).
      - Ethernet: Intel I217-LM ->  Work.
      - Card Reader: Realtek RTS5227 ->  Not work.
      - Keyboard and Touchpad ->  Work.
      - Webcam ->  Work.
      - Fingerprint Reader ->  Not work. Normal.
      - USB3.0 ->  Work.
      - Sleep ->  Work.
      - Airdrop, Handoff and Continuity ->  Work after replaced wireless.
      - Instant Hotspot ->  Not work.
       
       
      Extras
       
      - FullHD 1920x1080 display upgrade: 
      Replaced with AU Optronics B140HAN01.1 30pin eDP (B140HAN01.2 and B140HAN01.3 also compatible).
      Apparently same screen as Dell Latitude E6440, E7440, Lenovo Ideapad U430 and E129.
       
      - CPU upgrade:
      Replaced the stock Intel Core i5 4300M 2.6Ghz (3.3Ghz turbo) 6M cache with Intel Core i7 4700MQ 2.4Ghz (3.4Ghz turbo) 6MB.
      I initially had problems with overheating. The processor ran at full load above 90 degrees.
      After using a quality thermal paste I can work between 70 and 80 degrees.
      Acceptable taking into consideration that the new processor has 47TDP versus 37TDP which is recommended.
      I also had no problem consuming the battery while charging. The original 65W source seems to have figured out.
       
      - Touchpad upgrade:
      Replaced the stock with T460 touchpad.
      This is serious: you have to do it! It should be stock. Touchpad with precision and absurd quality!
      Just do it!
       
      - RAM upgrade:
      16GB (2x8GB). No mistery here. Just upgade.
       
      - Wireless upgrade:
      Previously I have the DW1560 working almost perfectly, now replaced with BCM94360CS2 that is full native supported. 
      More info below.
       
      Todo
       
      - Make DP audio work.
      - Make Card Reader work.
      - Make trackpad appear in System Preferences
      - Make Instant Hotspot work.
       
       
      What you need to install

      - Running install of macOS
      - One USB flash drive of 8GB or bigger
      - macOS Catalina install app
      - Clover EFI
      - Clover Configurator
      - Some KEXTs and SSDT patches


      How create create the install flash drive
       
      Prepare install flash drive

      Format the flash drive with GUID partition mapping and name it "Install".

      - Open Disk Utility.
      - Click in View, then "Show All Devices".
      - Select the destination flash drive, then Erase.
      - Name: Install, Format: Mac OS Extended (Journaled) and Scheme: GUID Partition Map
       
      Create install flash drive

      Open terminal and run this command:
      sudo /Applications/Install\ macOS\ Catalina.app/Contents/Resources/createinstallmedia --volume /Volumes/Install --nointeraction This will take about 30 minutes.
       


      Install bootloader

      Download the CloverEFI from official repository (used 5097) and install only with these options on "Install macOS Catalina":
       
      - Install for UEFI booting only
      - Install Clover in the ESP
      - UEFI Drivers - Recommended Drivers - AudioDxe (Just to have nice sound on boot)
      - UEFI Drivers - Recommended Drivers - FSInject (I still don't know if it's really necessary)
      - UEFI Drivers - File System drivers - ApfsDriverLoader (Support to APFS partitions)
      - UEFI Drivers - File System drivers - VBoxHfs (Support HFS/HFS+ partitions)
      - UEFI Drivers - Memory fix drivers - AptioMemoryFix (Fix the memory management of de UEFI/BIOS)
       
      FileVault 2
       
      If you plan to use FileVault 2, you need to download additional drivers, since what comes with Clover is not up to date and use VirtualSMC instead of FakeSMC.
      Follow instructions bellow:
       
      From current Clover installation, check these options to USB keyboard/mouse work on password screen:
      - UEFI Drivers - Human Interface Devices - UsbKbDxe
      - UEFI Drivers - Human Interface Devices - UsbMouseDxe
       
      After Clover install will be created a partition named EFI and mounted in Desktop. Usually the path is /Volumes/EFI/.
       
      Download the versions 2.1.0 and 2.0.9 of AppleSupportPkg from: https://github.com/acidanthera/AppleSupportPkg/releases
      We need the last version of AppleGenericInput.efi that is inside 2.1.0 and last version of AppleUiSupport.efi that is inside 2.0.9.
      OR download attached bellow.
       
      Put in /Volumes/EFI/EFI/CLOVER/drivers/UEFI/
       
      That's it! FileVault 2 will work without problems.
       
       

       
       
      Make things works
       
      After Clover install will be created a partition named EFI and mounted in Desktop. Usually the path is /Volumes/EFI/.
       
      - Replace the /Volumes/EFI/EFI/CLOVER/config.plist with mine attached below
      - Put SSDT-L440.aml attached below in /Volumes/EFI/EFI/CLOVER/ACPI/patched/
       
      Generate your Serial, MLB and SmUUID
       
      - Open the replaced config.plist with Clover Configurator (used 5.6.2.0)
      - Go to SMBIOS, click few times in "Generate New" in Serial Number and SmUUID.
       
      Copy the Clover Configurator to flash drive because you will need later.
       
      Download those Kexts and put in /EFI/CLOVER/kexts/Other/
       
      - Download the VirtualSMC from here. I used all Kexts and UEFI driver (put VirutalSmc.efi inside /Volumes/EFI/EFI/drivers/UEFI/) from version 1.0.8 (If you followed the steps to enable FileVault 2 above, skip to the next item).
      - Download the Lilu.kext from here. I used the version 1.3.8.
      - Download the VoodooPS2Controller.kext from here. I used version 2.0.4.
      - Download the IntelMausi.kext from here. I used the version 1.0.2.
      - Download the VoodooHDA.kext from here. I used the version 2.9.2. (Need to turn up the volume on Info.plist, more instructions below)
      - Download the WhateverGreen.kext from here. I used the version 1.3.3.
      - Download the USBInjectAll.kext from here. I used the version 2018-1108.
       
      Important! If you are coming from my previous Mojave guide, please note that I am using some kexts from other repositories / authors.
       
       
      Audio volume adjustment
       
      - Open the Info.plist inside VoodooHDA.kext/Contents/ with TextEdit.app or any text editor of your choice.
      - Change:
      <key>PCM</key> <integer>90</integer> to:
      <key>PCM</key> <integer>140</integer> Or, download the versions 2.9.2 attached bellow.
       
       
      Keyboard swap Command with Option (optional)
       
      - If you prefer, you can swap Command and Option keys, to map Win Key - Command and Alt - Option.
      - Change /Volumes/EFI/EFI/CLOVER/OEM/S400CA/UEFI/kexts/10.15/VoodooPS2Controller.kext/Contents/PlugIns/VoodooPS2Keyboard.kext/Contents/Info.plist:
      <key>Swap command and option</key> <true/> to:
      <key>Swap command and option</key> <false/> Or, download the version 2.0.4 already adjusted attached bellow.
       
       
      Wifi and Bluetooth (BCM94360CS2 + M2 NGFF adapter)
       
      Recently I replaced the DW1560 with BCM94360CS2. Now I have fully wireless and bluetooth working (including Instant Hotspot) without any kexts.
       
      See: 
       
       
      Wifi and Bluetooth (DW1560 / BCM94352Z)
       
      Unfortunately, some notebook manufacturers are currently blocking the replacement of wireless cards. They want you to only use the models sold by them. And of course, none of them from Lenovo for this notebook model is compatible with MacOS.
       
      If you try to start with an unauthorized wifi card for them, you will receive a screen error:
      1802: Unauthorized network card is plugged in - Power off and remove the network card. Since this check is done directly in the BIOS, the only solution is to modify it.
      But since nothing is easy in this life, there is one small big problem:
      - The BIOS update procedure does not allow you to use modded files as it used to be.
      - You will need to physically reach your BIOS on the motherboard and make use of a USB BIOS reader/writer.
       
      So what you need to do:
      1. Disassembly your laptop;
      2. Dump your BIOS with an USB BIOS reader with SOIC8 clip (to not desolder from the motherboard);
      3. Patch it (Ask on UEFI hack forums over there to someone patch for you. Every dump is unique, so mine don't work to you.);
      4. Fix RSA signature;
      5. Reflash BIOS;
      6. Replace wireless card;
      7. Remount your laptop;
      8. Done.
       
      To fix a Modded BIOS to remove the 5 beeps on boot, you need this guide: https://www.insanelymac.com/forum/topic/337333-guide-fix-insyde-h2o-bios-signature-5-beeps-on-lenovo (traduzido: pt-BR)
       
       
      After replaced the wireless card. Download those Kexts and put in /Volumes/EFI/EFI/CLOVER/kexts/10.15/
       
      - Download the AirportBrcmFixup.kext from here. I used the version 2.0.3. (To enable Wireless)
      - Download the BrcmBluetoothInjector.kext, BrcmFirmwareRepo.kext and BrcmPatchRAM3.kext from here. I used the version 2019-10-17. (To enable Bluetooth)
      - Download the BT4LEContinuityFixup.kext from here. I used the version 1.1.4. (To enable Handoff and Continuity)
       
      Keep in mind that the bluetooth kexts are currently in development and the official releases will be available in future in the repository: https://github.com/acidanthera/BrcmPatchRAM/releases
       
       
      Now you can start the installation without problem (I guess).
       
       
      How install
       
      UEFI Setup Configuration and Installation

      UEFI configuration
       
      My BIOS is the latest: 1.93 (J4ET93WW) 

      - Shutdown and insert the flash drive.
      - Power on with F1 pressed to enter BIOS setup.
      - Change value: Config - Intel(R) AMT - Intel(R) AMT Control to DISABLED
      - Change value: Security - Security Chip to DISABLED
      - Change value: Security - Anti-Theft - Intel(R) AT Module Activation to DISABLED
      - Change value: Security - Anti-Theft - Computrace to DISABLED
      - Change value: Security - Secure Boot to DISABLED
      - Change value: Startup - UEFI/Legacy Boot to BOTH, Legacy First and CSM Support = Yes
      - Save & Exit Setup (F10)
       
      - Now, hold the F12
      - In the list, select your flash drive.
      - Choose the flash drive (white icon).
       
      The installer will start. 
      
      Format destination disk

      Format the disk with GUID partition mapping and name it "Macintosh".

      - Select Disk Utility in the list, then press Continue.
      - Click in View, then "Show All Devices".
      - Select the destination Disk, then Erase.
      - Name: HD, Format: APFS and Scheme: GUID Partition Map

      Close Disk Utility.
      
      Select "Install macOS", then Continue.
      Follow instructions in screen.

      After install
       
      After first part install the system will reboot. Maybe you have to press F12 again and select the flash drive.
       
      Choose the internal disk (gray hdd icon) if not already selected.

      The second part of the installation will begin. This will take 16 minutes.

       

      Post installation
       
      When the second part of install finish, the system will reboot again.

      After performing the user initial setup and go to the desktop, you need to make the system disk bootable.

      Open the Clover Configurator from flash drive that you copied before.

      Mount and open the flash drive EFI partition. (Inside Clover Configurator, Mount EFI -> Select flash drive in Efi Partitions list -> Mount Partition -> Open Partition)
       
      Copy the EFI folder to desktop.
       
      Go back to Clover Configurator, unmount the EFI partition of the flash drive and mount and open the EFI partition of internal disk.
       
      Move the EFI folder from Desktop to EFI partition of the internal disk.
       
      Eject the flash drive.
       
      Move all Kexts from EFI partition of internal disk to /Library/Extensions and make kext cache, with those commands in Terminal:
      sudo mv -R /Volumes/EFI/EFI/CLOVER/kexts/10.15/* /Library/Extensions/ sudo chmod -R 755 /Library/Extensions sudo chown -R root:wheel /Library/Extensions sudo kextcache -i / Restart the system.
       
       
      It's done!
       
       
      System Updates
       
      10.15.1
       
      Updated without changing or updating anything.
       

       
       
      10.15.2
       
      Before install, update the following kexts:
      - VirtualSMC.kext and all kexts and VirtualSmc.efi. I used version 1.0.9.
      - Lilu.kext. I used version 1.4.0.
      - WhateverGreen.kext. I used version 1.3.5.
      - AppleALC.kext. I used version 1.4.4.
      - VoodooPS2Controller.kext. I used version 2.1.0.
      (all download links above)
       
      Download the latest CLOVERX64.efi.zip build. I used version 5100.
      Mount EFI partition and unzip to:
      - /Volumes/EFI/EFI/CLOVER/CLOVERX64.efi
      - /Volumes/EFI/EFI/BOOT/BOOTX64.efi (rename the copy of CLOVERX64.efi to BOOTX64.efi
       
      Install update. Will reboot at least four time.
       
       

      And last but not least

      I would like to thank the following community members, by making these dream possible:
      @crushers, @snatch, @apianti, @blackosx, @blusseau, @dmazar, @slice2009, @autumnrain, @phpdev32, @EMlyDinEsH, @RehabMan, @Scellow, @mitch_de, @Shailua, @Andy Vandijck, @maxfierke, @ArturXXX, @LexHimself, @brumas, @"Sniki", @Mieze, @headkaze and all others members involved directly or indirectly.
       
       
      Attachments
       
       
      SSDT-L440.aml
      config.plist
      VoodooHDA.kext.zip
      VoodooPS2Controller.kext.zip
      Filevault 2 additional drivers.zip
    • By Dolamarv
      Hi all, I have been using an x240 thinkpad for more than 2 months as hackintosh and it is very stable. As of now I am in Catalina 10.15.1 and it’s running great until I updated it to the new clover build r5100. My laptop won’t automatically sleep when I close the lid down now. I reverted back to 5099 and close-lid automatic sleep works. I don’t know what caused the problem but I think 5100 fixed a dsdt patching of some sort that that conflicted with my config plist? Thanks in advance!
    • By FreqFeeder
      Hi there!
      I'm a newbie to the concept of installing a Mac OS on alternative hardware. Please bear with me
      I have a Lenovo Thinkpad x250 with 5th generation i7-5600U CPU, 16GB RAM, and Intel HD Graphics 5500. (I'd be glad to add any additional hardware details if needed)
      My goal is to have a dual boot machine - Mojave and Win 10. I have two separated physical drives.
      I've tried different methods, but none was stable to be operable.
      If anyone of you has the experience with this specific model it will be really great to hear your opinion.

      Thanks!
    • By zkingtut
      Hello Everyone ,,
       
      I'd  like to share with you my experience with Lenovo ThinkPad P50 ( EFI , and Installation Process with some tips ) Hopefully to be useful for anyone who own Lenovo ThinkPad P50 
       
      Before start I want to show you my device specs , and I'm  sure 99% this will work too with any P50 have different spec. specially Intel i7 CPUs:
       
      - Intel Xeon E-3 1535 v5 ( P530 Intel HD Graphics )
      - 32 GB RAM
      - 256 GB SK Hynix Nvme SSD pc401 hfs256gd9tng-62a0a - for Mac OS  ( be careful not all nvme ssd are compatible)
      - 256 GB Samsung Evo 850 SSD - for Windows 
      - 4K Screen 
      - Nvidia Quadro M2000M 4 GB ( Useless - Disabled )
      - Intel WiFi Card ( Should be change to a compatible Broadcom one )
       
      BIOS SETUP :
       
      I highly recommend this steps before going to BIOS SETUP according to my experience with this Laptop :
       
            *( Update your BIOS Firmware to the latest one using windows )
       
            *( Remove Battery , Open the back cover and unplug the small CMOS BATTERY for about  4~5 minutes and put everything back again )
       
             * ( Remove any SSD HDD Nvme disks , USB , DisplayPort , Dock .. etc during installation, keep only the target Disk )
       
      -------------------------------------------
      Now Power your PC and Press F1 to enter the BIOS SETUP
       
         - Reset BIOS to its defaults
         - Adjust Date and Time 
         - Config ----> Network ---> Wake Up on Lan ( AC Only )
                                                         Network Stack ( Disabled )
       
        - USB ----> USB UEFI support  ( Enabled)
       
        - Display ------> Total Graphic Memory (256 MB)
                                     Graphic Device ( Hybrid)
       
        - RAID -----> Disabled
       
        - Security -----> Security Chip Selection ( Discrete TPM )
                                     Secure BOOT ( Disabled )
                                     Intel SGX Control ( Software Control )
       
        - Start Up ------>BOOT Priority order ( USB HDD - Mac OS Disk - Windows - and so on ....... with this order )
                                     UEFI/Legacy ( UEFI Only )
                                     CSM Support  ( NO )
      ----------------------------------------------------------------------------------------------------------------------------------
       
      **   F1 to Enter Bios - F12 for Boot Menu
      ***   Delete the EFI Folder in your Installation USB and replace it with the Attached one 
      ****   Generate new serial for SMBIOS MacBook Pro 13.1
      *****    If your CPU is XEON then go to Config.plist CPU Section and Add 0x05A5 under Type ( Fix for Unknown CPU )
      ****** You can delete boot-args "brcmfx=1 & brcmfx-driver=#a" if you want , I used it in my case with 1820A card to fix wifi issue
      ******    After you successfully installed OS , now Copy the same EFI Folder to your main EFI Boot Disk Partition 
      *******    Now install all the attached KEXTS to "Library / Extensions"  using Hackintool.app or by any method and rebuild cache and repair permissions
      ********    Check and compare the KEXTS in Library/ Extensions and Delete the repeated ones from Clover / Kexts / Others ( Important don't duplicate the same kexts here and there )
       
      FYI : LiluFriend.kext include ( Lilu , WhatEverGreen, AppleALC , AirportBrcmFixup ) All In One 
       
       
       
      You are Done 
      ---------------------------------------------------------------------------------------------------------------------------------
       
      What is working :
       
      - 4K Intel HD P530 2048 MB 
      - AUDIO
      - CAMERA 
      - ALL USB 3 PORTS , NO THUNDERBOLTS 
      - Keyboard and TouchPad 
      - Battery indicator 
      - Display Brightness 
      - Sleep 
      - DSDT has been patched , USB Ports modified only to MacBookPro 13.1
       
                   See the Screen Shot 
       
      Important Notice For Future OS Updates Installations : 
       
      To avoid Kernel Panic during install any future updates process please remove ( FakeSMC.kext and LiluFriend.kext ) from Library/Extensions directory to Clover / Kexts / Others .
      After update process finish put them back to Library/Extensions and delete them from clover . I hope this is clear enough
      ---------------------------------------------------------------------------------------------------------------------------------
       
      Happy Hackintosh , Let me know if you have any issue or difficulties during installation or later , I will try to help you
       
      *** Headphone Audio Distortions Fix ***
       
      - just in case having this issue with headphones , go to clover >  Devices > Properties > and change Audio Layout Id from 03000000 to 16000000 this means ( from Layout ID  3 to Layout ID 22 )
       
      if this is not enough then place Codeccommander.kext in Library/ Extensions or Clover / kexts / other
      And place hda-verb and Jack fix to usr/bin folder
      In Catalina use this command to enable disk read and write ( sudo mount -uw / ) and show hidden files to see usr/ bin folder and place fixes there... audio will be fixed successfully 
       
      ** P50 4K ICC Color Profile Calibrated **
      You can download this icc and install it for more color accurate or modify it for the best result 
       
       
      EDITED :
       
      Catalina 10.15.1 Update :
                     ( download the attached files for Catalina 10.15.1 if you like to update Mojave or to do a clean fresh update  )
       
       
      EFI.zip
      kexts.zip

      Distortions fix.zip
      CodecCommander.kext.zip
      Color Profile Calibrated.zip
    • By theoriginalmagneto
      Hello, after installing Catalina, I am having trouble with getting the CPU to throttle down its frequencies. It's constantly sitting at above 2.0 Ghz, which is odd.

      I am attaching my config files, EFI folder etc., if someone would be so kind and take a look at them if they see some obvious culprit, that causes this strange behaviour.

      THANKS!
      EssentialsList-2019-11-28 17.46.41.zip
×