Jump to content

Lenovo ThinkPad T420 with UEFI Only

* * * * * 16 votes UEFI ThinkPad T420 Lenovo Clover

Best Answer tluck, 08 October 2013 - 02:47 PM

04-December-2014 Update

  • Clover r3048
  • Updated FakeSMC.kext to 6.12.1355 (and included pkg to install HWMonitor.app)

24-November-2014 Update

  • Clover r3029- or download r3021.
  • Consolidated kexts into Other folder vs 10.10, 10.9 since they are all the same.
  • ThinkPad Theme - minor tweaks to add Yosemite 2014.  This theme revised and committed to Clover source tree.
  • Updated select kexts - AppleHDA_20672.kext fixed for 10.10.2 dependency (works for 10.9. and 10.10)
  • Removed drop MCFG table from config.plist files.

29-October-2014 Update

  • Clover r2980 - or download r2976.
  • Tweaked config to actually use NVRAM boot drive selection on startup. (Can specify startup disk in System Prefs and restart will use it.)
  • Tweaked config (add kernel location for Yosemite) so boot without caches works.

23-October-2014 Update

  • Clover r2967 - or stay on r2953 - it is still fine.
  • Recompiled VoodooPS2Controller.kext v1.8.13 with added Lenovo T420 sections for Keyboard/TouchPad/TrackPoint
  • Bumped the ACPIBatteryManager.kext up to v1.53
  • Added Platforms.xml file for use with Docking Station (and No-Dock default) option in AppleHDA_20672.kext

18-October-2014 - OS X 10.8.x 10.9.x 10.10.x Update

  • Clover updated to v2953
  • New custom kexts AppleHDA_20672.kext (fixed since October 13) and BroadcomBluetooth_T420.kext are added. Huge thanks to vladichimescu for showing me this kext method.
  • All custom/extra kexts are OS version independent and go in /Systems/Library/Extensions 
  • New Clover config.plist files for on-the-fly HDA kext patching. No need to replace any kexts after updates anymore.
  • Removed EmuVariableUefi-64.efi driver to use native NVRAM (vs /nvram.plist) - see note below on how to migrate.
  • FakeSMC updated to 6.11.1328
  • Added drop table MCFG for Nvidia/Optimus (mixed gfx)
  • Added drop table DMAR so VT-d does not have to be disabled
  • ACPIBacklight.kext - v2.0.3 - with modified code to fix/workaround for LCD brightness in Yosemite.
  • Updated 10.10 kexts folder (10.10. AppleHDA and BroadcomBluetooth kexts + Hackintosh Kexts)
  • Updated 10.9  kexts folder (10.9.5 AppleHDA and BroadcomBluetooth kexts + Hackintosh Kexts)
  • Note: To make an Mavericks USB installer, just follow the Yosemite method

Lenovo T420 Clover Guide

 

Attached is a current /EFI pack for the Lenovo T420 using Clover on OS X versions:

  • 10.10  Yosemite
  • 10.9    Mavericks

Why Clover vs Chameleon?

  • Native UEFI boot support for OS X and Windows on GUID/GPT disks.
  • Native Apple OS X Installers and App Store Updaters. 
  • Supports Recovery HD for system recovery and 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 is a zip contains what is working for me on my specific model. The guide outlines the 2 phases: (1) how create a USB installer and install OSX, and (2) run OSX for your HD. If your HW is not similar as mine, the included DSDT and configuration files may need to be retrofitted to work for your system.  The models T420s, T420i as well as the T520 family may work as is or need some changes to the DSDT.

 

Highlights:

  • Clover config.plist + required kexts + custom DSDT
  • 2 versions are separated by LCD size
    • ACPI.1600x900 folder - has dsdt.aml for high-res LCD with DualLink=1 and injects a good/patched EDID
    • ACPI.1366x768 folder - has dsdt.aml for low-res  LCD with DualLink=0 and no injected EDID
    • Note: the CPU section is not needed in the config.plist anymore, as Clover computes Bus Speed ok in later revs - check it though! should be around 99676 - 99700 to keep system clock accurate.
  • A current Clover and Kext Bundle for 10.9 or later is here in this post
  • Non-maintained Mountain Lion Kext Bundles for 10.8.4 are in post #241 and 10.8.5 in post #397

Misc Notes:

  • VoodooPS2Controller.kext  - slightly modified Info.plist(s) to add LENOVO T420 keys. Removed HP and few other non-relevant options in various Info.plist files.
     
  • Note: TrackPad pressure FingerZ value set to 47 - up from default of 30  - change to suite your touch in VoodooPS2Controller.kext/Contents/PlugIns/VoodooPS2TrackPad.kext/Contents/Info.plist
  • DSDT mods to KBD device - renamed to PS2K and added LENOVO OEM-ids for VoodooPS2Controller to use.
     
  • Added RehabMan's ACPIBacklight.kext v2.0.2 for smoother dimming. (patched DSDT included)
  • RehabMan's DSDT mods to PNLF for ACPIBacklight.kext to function (adds wider smoother LCD brightness range)
     
  • Included is a revised Pike's  SSDT generation script (sdtPRgen-clover.command) and a local copy of iasl. running the script will end with making a copy of ssdt.aml into proper ESP location when mounted.

Custom Kexts

 

Use kext install tool to install all kexts to /S/L/E (/System/Library/Extensions).

  • FakeSMC.kext (v6.x.xxxx) - Core hack mechanism. Using Kozlek's version + plugins - Note: Follow link to download full package - so you can install HWMonitor.app etc (no need to re-install FakeSMC.kext unless there is a newer rev - so if you do install - just select these 2 Plugins Sensors: ACPI and CPU)
  • AppleIntelE1000e.kext (v2.4.14) - Ethernet (gigE) - can go in /System/Library/Extensions vs Plugins so updates will not delete it.
  • VoodooPS2Controller.kext (v1.8.13) - T420 version of RehabMans's PS2 Keyboad/TouchPad/TrackPoint -  Note: Follow link to get full package and installation instructions to install daemon and pref-panel This version has extra T420 definitions in the Info.plist files.
  • ACPIBatteryManager.kext (v1.53) - RehabMan's kext configured for v3 ACPI instructions to show/track battery info on menu bar
  • ACPIBacklight.kext (v2.0.3) - RehabMan's kext for smoother/enhanced LCD backlight (dimming) control. The fix is for a Yosemite quirk.
  • GenericUSBXHCI.kext (v1.2.8d9) - RehabMan's version. Use for USB3 express card, etc.
  • IOAHCIBlockStorageInjector.kext -  configured to make just the DVD device appear internal so iDVD player works. 
  • BroadcomBluetooth_T420.kext (v999.99) - adds ProductID 8575 to make BT work better (on/off capability). Keep original/modified BroadcomBluetooth plug-in and add this kext to /S/L/E.
  • AppleHDA_20672.kext (v999.99) Keep original/unmodified AppleHDA.kext and add this kext to /S/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 - 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 of the Zip

  • Clover configuration files (config.plist) 
     a ) config.plist                   - (default) to use the custom DSDT and WITH extra Clover patching
     b ) config.nodsdt.plist    - this testing version - everything works except battery levels
                                                       - remove/rename DSDT.aml and use built-in/BIOS DSDT with Clover patching
  • Model is to set MacBookPro8,1 explicitly in config.plist. (needed to get proper DP/HDMI/DVI/VGA FrameBuffers)
  • Zip includes extra and custom kexts plus cVad's Kext Utility v2.5.7 for easy kext installation (or you can use manual script:  _kext-install-SLE.bash)
    Note: VoodooPS2Controller keyboard mappings have 3 or 4 finger swipe left/right to back/forward for browsers configured.
  • removed ssdt.aml files from zip and added ssdtPRgen-clover.command script so you can create your own SSDT P/C state tables
  • High-res vs low-res config.plist (and DSDT) are very consistent - difference is EDID and DualLink settings.
  • Note: for 1600x900 the EDID is injected by Clover and is also in the 1600x900 version of the DSDT for - there are 2 sets of timings for 60 and 50 Hz options
  • Added folder for Displays/Overrides (for more natural color gamma curves and more screen size options) in this zip
  • Swapped out VBoxHFS-64.efi for HFSPlus-64.efi - supports installation bundles and Recovery HD better.
  • Clover patches string for SNBFrameBuffer kext to fix LCD brightness max level - now its the same brightness before and after sleep. Thanks to Timewalker75a (again!)
    Note: this same kext 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 you can either not do this! Or replace the 3rd port (DP) if you want the VGA.
  • Thinkpad theme (updated/change vs standard clover pkg) to show badge (disk type) and added Mavericks and Yosemite Icons instead of using generic apple.
  • ScrLk and Pause keys change LCD brightness. ThinkPad button toggles fan to high speed.
  • Alt key is the Command key and Microsoft flag key is the Option key.

A few DSDT tweaks:

  • DSDT includes source and binary with recent patches (some beyond Clover and manwe150's original post edits)
  • 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.

  • For 1600x900 LCDs, added an EDID that removes infamous HD 3000 glitches and buffer hangs.

  • PNLF additions from RehabMan for smoother LCD backlight control with ACPIBacklight.kext

  • PS2K (Keyboard) is identified as id LENOVO table-id T420 to use custom VoodooPS2Controller settings.

EmuVariableUefi-64.efi migration

 

1) Before updating if you are still using EmuVariable.efi, run this command see and then save current nvram values:

nvram -p
nvram -xp > ~/nvram.plist

2) Update the ESP with new Clover version (from zip or pkg) - uncheck EmuVariableUEFI-64 driver option.

3) Rename (or remove) EmuVariable driver the ESP so it will not be loaded on next boot, if there is one still in the Clover driver folder.  

Note: manually mount ESP on /Volumes/EFI or /Volumes/ESP, if not already mounted and then run:

mv /Volumes/ESP/EFI/CLOVER/drivers64UEFI/EmuVariableUEFI-64.efi /Volumes/ESP/EFI/CLOVER/drivers64UEFI/EmuVariableUEFI-64.efi.NU

4) Reboot and restore previous nvram values and remove Clover NVRam variable. You should see some variables already in there!

nvram -p
sudo nvram -xf ~/nvram.plist
sudo nvram -d Clover.NVRamDisk

5) Reboot to boot run with final values! 

 

INSTALLATION GUIDE

 

BIOS settings:

- Recommend update to BIOS v1.46

- Recommend reset to defaults. Most defaults settings will work but validate these settings:

- SATA set AHCI mode

- Enable Execution Bit

- Disable Discrete Nvidia/Optimus (use integrated HD 3000 only - unless you really know what you are doing!)

 

The custom DSDT is based off BIOS v1.46 (flashed with whitelist mod or original)

 

Part 1 - OS Installation

 

Install (or reinstall/update) OS X to a GUID/GPT formated disk from a USB using the standard Install OSX .app

You can use this zip to build a Clover-based USB installer and then install on HD for UEFI boot.

  • For Mavericks (10.9.x) and Yosemite (10.10.x) USB installer
  1. Download latest Yosemite or Mavericks from the App Store - default location is in /Applications
  2. Partition an 8GB USB as GUID (use option menu to change from MBR) - name this partition USB
    Note: if you format the USB as MBR, then you will need to install the Clover boot tools (after) - see note at the bottom.
    Note: if you have a larger USB (say 16GB) you can split into 2 8GB partitions, so you can have 10.9 and 10.10 installers on the same USB key
  3. Run this command (if Mavericks, the replace word Yosemite with Mavericks):
    sudo /Applications/Install\ OS\ X\ Yosemite.app/Contents/Resources/createinstallmedia --volume /Volumes/USB --applicationpath /Applications/Install\ OS\ X\ Yosemite.app —nointeraction
    
  • Common steps
  1. manually mount ESP of USB and copy the entire EFI folder (from the zip) onto USB ESP
    For example, assuming the USB is disk2:

    sudo mkdir /Volumes/ESP-USB
    sudo mount -t msdos /dev/disk2s1 /Volumes/ESP-USB
    sudo cp -a ~/Downloads/T420/EFI /Volumes/ESP-USB

    Note: run "diskutil list" on the command line to find your USB disk
             if your USB is MBR format - just copy the EFI structure to the / (root) of the main partition instead!

     

  2. Setup configuration files to match your LCD resolution in /Volumes/ESP-USB/EFI/CLOVER:
    1. ​​​Rename ACPI.1600x900 to ACPI or rename ACPI.1366x768 to ACPI
    2. Rename config.1600x900.plist to config.plist or rename config.1366x768.plist to config.plist
       
  3. Boot from USB and select Install OSX
     
  4. Install on your GUID OSX partition! 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.And your Intel WiFi will not work. Period. 

TIP: Enable debug mode for Disk Utility to see all the partitions (such as hidden EFI). From the Terminal command line, run this:

defaults write com.apple.DiskUtility DUDebugMenuEnabled 1

Part 2 - Post OS Installation and Setup on HD

  1. Boot Clover from USB - but now select the new OS X partition to start OS X. 
    This will boot up OS X with Clover injecting the custom kexts from the USB (for now). 

     
  2. Install Clover on HD 

    a ) Run the full Clover_v2k_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:
    [attachment=149386:clover-pkg-options.png] After you close the pkg installer, then follow these step:

    b ) REPLACE the ESP (EFI folders) contents with the exact CLOVER folder as your setup on USB from steps above. If not still automatically mounted by the installer pkg, manually mount the ESP of your HD on say /Volumes/ESP. Then copy and replace the folders /Volume/ESP/EFI/CLOVER and BOOT from the USB installer you just built and used.

    Note: Yosemite likes to make a logical volume and this may confuse the Clover Installer looking for the ESP. So I recommend revert you root partition to a regular volume. Run: 
    sudo diskutil corestorage revert /
     
  3. Install custom kexts on HD
    • Recommended: Use the folder with its config.plist with the custom dsdt.aml (as is) to start.  And install the custom kexts from the zip folder to the /System/Library/Extensions folder. 

      Install these kexts from the zip folder EFI/CLOVER/kexts/Other by either method:
      - if you don't have a GUI, use the included shell script _kext-install-SLE.bash
      OR 
      - if you have a GUI, then use the Kext Utility tool (from cvad included in Utilities folder). 

      Note: If you choose to NOT install the custom kexts in the OS /S/L/E folder, then AppleHDA and BroadcomBluetooth kexts will not work properly. You can also install custom kexts in /Library/Extensions if you dont want to put them in /System/Library/Extensions

       
  4. Install (copy) the DisplayVendorID-* folders
    These are from the zip file and should be put in /System/Library/Display/Overrides
    Note: These provide alternate color correction and gamma curves as well as more screen sizes for just a few LCD models. 

     
  5. Reboot - Boot Clover from HD vs USB.
    Hit the spacebar on your boot selection (OSX) to start up
     without kext caches to make sure it loads all the custom kexts just installed. 

     
  6. Ethernet Device Install
    Note: This step is optional but usually needed after a fresh OS install.
    This loads the ethernet kext and resets network device order to have ethernet as en0 (may help with iMessage etc)
    Run this set of commands in a terminal window:

    sudo kextload /System/Library/Extensions/AppleIntelE1000e.kext
    sleep 10
    sudo rm       /Library/Preferences/SystemConfiguration/NetworkInterfaces.plist
    
  7. Create a custom SSDT (optional)  
    Creates P and C states to match system CPU. Test against Clover generated SSDT PM tables - may be the same performance lately. (Long ago Clover had some issues here.)
    Run the custom ssdtPRgen-clover.command script in Zip Utilities folder. It should ask you if you want copy ssdt.aml to your ESP ACPI/patched folder, otherwise copy/move ssdt.aml to the same location as your custom dsdt.aml 
    which is: /Volumes/ESP/EFI/CLOVER/ACPI/patched

    Note: it will copy iasl from the Utility folder to /usr/local/bin/iasl

     
  8. Reboot a final time to use the new SSDT table (and other changes from last 3 steps)

 

Known Issues and Random Tips:

  • The stock Intel WiFi will not work. There are options to replace and use modded bios.
     

  • Clover may present 2 options for main OS partition if using Logical Volume vs Standard Volume. Revert the logical volume as Yosemite likes to install now on the boot disk, so Clover will not get confused and present duplicate options. Just "revert" using: 

    sudo diskutil corestorage revert /
  • Enable (turn 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!
  • When using external headphones or speakers, may need to plug and unplug 1 or 2 times for recognition.
     
  • E1000e ethernet hang: with the 2.5.4d and 3.x version of the Intel E1000e ethernet kext, I have seen some random problems. I rolled back to v2.4.14 and have not had issues lately. The issue occurs under heavy file copy/transfers and your ethernet stops working with a lot of log messages that only a reboot fixes. 
     
  • iMessage/Facetime may not register without overriding the Clover generated values with real ROM and MLB values from a real Apple Mac. Search thread for ROM to get more info.
     
  • With ACPIBacklight.kext installed, boot with lid open or LCD will be black when you open it.
     
  • Hibernation does not wake from stored image with OsxAptioFixDrv-64.efi - suggested setting:
    sudo pmset -a hibernatemode 0
    rm /var/vm/sleepimage
  • OR if you really need hibernationm, use (experimental) OsxAptioFix2Drv-64.efi instead of OsxAptioFixDrv-64.efi UEFI driver and set hibernate mode to 7 (like 3 with no encryption)

    sudo pmset -a hibernatemode 7

Note: booting from hibernated image may have jumbled LCD until one sleep/wake (non-hibernated) cycle.

 

Old issues - no longer happening. 

These 4 problems listed below happened with earlier versions of Clover and OS X  but on 10.9.2 or later, and with the rewrite of Clover and OsxAptopFixdrv-64.efi, these UEFI/ESP issues are seem to be a thing of the past.

  1. putting to sleep can result in flashing/hung state

  2. built-in keyboard mute button can totally freeze system - works fine from software (i.e. apple bluetooth KB)

  3. shutdown may not go all the way to full power off (OS shuts down but at black screen with fans/lights on)

  4. built-in PS2 keyboard/trackpad may disappear after sleep/wake 

Optional: Boot with Clover on MBR USB

 

One can still boot from the HD using UEFI. But one can also create a bootable MBR formatted USB with CloverEFI. This boot method may mitigate any random UEFI issues. The exact same EFI folder can be used. To make a bootable MBR USB:

  1. Format the stick as MBR (which is usually the default) with a single FAT32 partition named USB.
  2. Optionally copy the OSX installer to USB (same command for GUID USB above) but must be done before steps below!
  3. Then with Clover_v2k_rxxxx.pkg, install to the USB for "legacy CloverEFI" boot.  That is: Uncheck the top 2 items, and in Bootloader check the 2nd option to install boot0af.
  4. After the Clover pkg installer is finished and closed, then replace the EFI/CLOVER folder just like you did on the HD. the EFI/BOOT folder is not needed. Note: the HD ESP EFI folder and USB EFI folder should be exactly the same now.
  5. Then from the BIOS, set USB-HDD as top boot option (so you don't have manually boot from USB vs the HD)
Go to the full post


  • Please log in to reply
1565 replies to this topic

#1
Kogen Mantis

Kogen Mantis

    InsanelyMac Protégé

  • Donators
  • 98 posts
  • Gender:Male

Thanks to Clover EFI Bootloader I was able to achieve almost perfect HacBook Pro from my Lenovo T420

This guide is work in progress and I’ll try to update it as often as I can outdated! For more updated guide head to tluck's post #481 (thanks tluck for taking over)

 

Why UEFI Only?
Faster boot time, better hardware detection, native Mac OS X Installation process and Auto create Recovery HD, working iCloud and iMessage to name a few. But in general you will achieve almost perfect Macbook Pro clone that will most likely survive all future System updates.

Note: I’ll be focusing on Mountain Lion but I guess Lion would work equally good.

Lets start by preparing Mac OS X install media.
You will need:
- Working Mac OS X 10.6 or later (Hackintosh, Virtual machine or real Mac)
- 8GB+ USB pen-drive
- Legal copy of Mountain Lion install app
- and an app called Lion Disk Maker
- my custom Clover Package: Attached File  Clover_v2_r1625k0.pkg.zip   5.44MB   1980 downloads

Prepare Mountain Lion install media using Lion DiskMaker.

LDM.png

Making install media bootable on your ThinkPad
Run my custom Clover Package and change the install destination to the Mountain Lion install media you’ve just created using Lion DiskMaker. Generaly you don't have to worry about anything else it is all customized to work best on all ThinkPads.






Custom Clover 1229k0.png

Note (optional): At this point you can use another FAT32 formatted pen-drive to install Clover on to it. This pen-drive needs to be capable of storing at least 25MB+ of data.

System installation
Insert prepared OS X Mountain Lion Install Disk - 10.8 in your ThinkPad and set to boot in UEFI Only mode. And wait for the boot loader. You should be presented with screen like this:






screenshot0.jpg

Now start the installation process just like you would on a normal Mac. Partition your drive with GUID table and install.

Adding Extra drivers using myHack
You now should be running vanilla Mac OS X 10.8. Before you start upgrading and instaling software now is a good time to add missing drivers and install them in a clean and proper manner using myHack.
1. Download Extra Folder: Attached File  Extra.zip   1.75MB   1100 downloads
2. Download myHack and place it in your Application folder
3. Run myHack and choose myFix. When asked about Extra folder choose "Use My Own" and point to downloaded Extra folder from step 1. Reboot and check if everything is working fine. By everything, beside AppleACPIPlatform.kext ver 1.3.5, I mean Sound and Battery meter cause these are the only kexts that are in Extra/Extentions

Extra-Extensions.png

Making your custom configuration using OEM folder
... under construction...

Booting Clover EFI Bootloader from system drive
It's time to get rid of the osx pen-drive you've been booting all the time and install my custom Clover to your main disk and boot directly from your hard drive EFI partition. This step is identical to the "Making install media bootable on your ThinkPad" but this time you will be using your main drive. Just make sure your disk drive is selected when installing.

Note: Now You can customize your installation. You have the choice to install Clover Preference Panel and Optional RC scripts.






Clover1625k0.png CloverPrefPane.png CloverPrefPane1.png CloverPrefPane2.png

Remove pen-drive and reboot. If all went well you should be booting from your hard drives EFI partition now. Good luck!

Software worth mentioning
Clover EFI bootloader (thread) - (source code) - (changelog) - (wiki)
CloverGrower (post) - (source code)
HWMonitor + HWSensors (thread) - (source code)
DSDT Editor (thread)
DarwinDumper (thread)
...

Thanks and credits
Slice, dmazar and all Clover thread members, joshhh and all T510 thread members, gothic860 and all W520 thread members, Manwe150 and all T420 thread members

.…. to be continued.

Update 2013-01-20: Flashed latest UEFI Bios version 1.43 + whitelist and started fresh DSDT patching

Update 2013-01-30: Uploaded new LenovoEFI_Pack_Beta2.zip (from now on I'll be attaching latest version to this thread). I've started using the EFI/OEM/4180A32 folder specific for my T420 model and added minimal config in the root that should work for everyone else (testers needed). My latest DSDT.aml in EFI/OEM/4180A32/ACPI/patched and updated ThinkPad theme is included.

Update 2013-05-15: Updated the post to reflect some changes and progress made in this topic. Using custom Clover r1625 that has all the stuff Lenovo UEFI user needs. This one is enabled to install to ESP by default with ThinkPad Theme and RC scripts and example EFI/CLOVER/OEM/4180A32 folder.


Edited by Kogen Mantis, 01 July 2014 - 04:08 PM.


#2
FireROR

FireROR

    InsanelyMac Protégé

  • Members
  • Pip
  • 22 posts
Does this support speedstep and sleep?

#3
Kogen Mantis

Kogen Mantis

    InsanelyMac Protégé

  • Donators
  • 98 posts
  • Gender:Male
Yes and Yes - but you need to patch USB for sleep to work.
dsdt.aml included in clover EFI/ACPI/patched/dsdt.aml does not have this patch. I'll add info about DSDT patching later.

#4
djm20

djm20

    InsanelyMac Protégé

  • Members
  • Pip
  • 29 posts
i have a dell xps 14 ultrabook and it has UEFI as well, do you know if this guide will work on my laptop?
my specs are

BIOS: A13
intel core i5 3317U
intel HD4000
4gb ram
500gb hdd
32 gb ssd
intel centrino wireless card(im assuming this wont work)
im running windows8 pro(legal copy) and i plan to dual boot with mountain lion and win8

#5
FireROR

FireROR

    InsanelyMac Protégé

  • Members
  • Pip
  • 22 posts
WIFI won't work for sure. You need to get one from ebay

#6
Kogen Mantis

Kogen Mantis

    InsanelyMac Protégé

  • Donators
  • 98 posts
  • Gender:Male

i have a dell xps 14 ultrabook and it has UEFI as well, do you know if this guide will work on my laptop?
my specs are

BIOS: A13
intel core i5 3317U
intel HD4000
4gb ram
500gb hdd
32 gb ssd
intel centrino wireless card(im assuming this wont work)
im running windows8 pro(legal copy) and i plan to dual boot with mountain lion and win8


Yes this guide will work but remember that I use kexts (drivers) specific for Lenovo ThinkPad's and as I mentioned before my DSDT.aml that will KP on your machine.
So in your case delete:

EFI/ACPI/patched/dsdt.aml
and try it out.



#7
FireROR

FireROR

    InsanelyMac Protégé

  • Members
  • Pip
  • 22 posts
I can't get my hardware monitor to work. Try to run it and I got KP.....

Did you use some special kext for the hardware monitor? The one I am using is from iAtkos ML2

#8
Kogen Mantis

Kogen Mantis

    InsanelyMac Protégé

  • Donators
  • 98 posts
  • Gender:Male

I can't get my hardware monitor to work. Try to run it and I got KP.....

Did you use some special kext for the hardware monitor? The one I am using is from iAtkos ML2

If by hardware monitor you mean HWMonitor.app than you just need the latest FakeSMC.kext and in our case CPUSensors.kext and ACPISensors.kext. You can find them in my "EFI/kexts/10.8" and the minimal readout should look more or less like this:
Posted Image

I'm guessing that KP is due to different version of FakeSMC being loaded from iAtkos .

#9
dmazar

dmazar

    InsanelyMac Sage

  • Coders
  • 274 posts
  • Gender:Male
Hey, nice customisation :)

#10
Kogen Mantis

Kogen Mantis

    InsanelyMac Protégé

  • Donators
  • 98 posts
  • Gender:Male

Hey, nice customisation :)

I'm glad you like it dmazar... any chance to put it in next clover installer release? :)

#11
dmazar

dmazar

    InsanelyMac Sage

  • Coders
  • 274 posts
  • Gender:Male
I do not know. You can propose it to Slice in Clover thread.

#12
Kogen Mantis

Kogen Mantis

    InsanelyMac Protégé

  • Donators
  • 98 posts
  • Gender:Male

Today I've made a display override for my HD+ Panel (1600x900) based on MacbookPro9,1(DisplayVendorID-610/DisplayProductID-9cc7) and named it Lenovo LCD.

The display profile default is warmer using this file and I have added some extra resolution choices in scaled mode.


Attached File  Lenovo LCD.png   77.48KB   132 downloads Attached File  Lenovo LCD Pref.png   105.9KB   115 downloads

Just unzip it and copy entire DisplayVendorID-30e4 folder to:

/System/Library/Displays/Overrides/

Attached Files



#13
Kogen Mantis

Kogen Mantis

    InsanelyMac Protégé

  • Donators
  • 98 posts
  • Gender:Male

Posted Image


Today I had the chance to test out the Display Port to Hdmi cable that I've ordered for 7$ from China (free shipping) and I'm happy to report that all is working great.

Posted Image

All testing done on my Samsung 40" FullHD LED TV. Full resolution support. Stable graphics with no artifacts that I keep on hearing here and there. Even done some OpenGL testing to see how much FPS can I get in case of gaming on the big screen. Mirroring works. The HDMI sound output works both in direct mode (sound in TV) and pass through to my Onkyo receiver.


Here are some screenshots:

Attached File  Screen Shot 2013-01-31 at 13.53.15.png   562.19KB   125 downloadsAttached File  Screen Shot 2013-01-31 at 13.51.24 (2).png   272.02KB   115 downloadsAttached File  Screen Shot 2013-01-31 at 13.55.41 (2).png   1.13MB   102 downloadsAttached File  Screen Shot 2013-01-31 at 13.54.23.png   83.42KB   91 downloads



#14
distortionmusic

distortionmusic

    InsanelyMac Protégé

  • Members
  • Pip
  • 14 posts
  • Gender:Male
  • Location:Netherlands
Hey, it's maybe a little bit off-t, but I have a t420 wich I want to run on OSX. I've been in the hackintosh business for a few years, but since the new Sandy Bridge and further I admit I lost track of the scene a bit.

I have tried to install with the "OSX 10.8 bootable usb method", the one you need the raw file and a windows pc for,
I've tried the ##### method, also myHack etc etc.

With the bootable usb method I can boot in installation, but osinstall.mpkg failes to load, so there's no custom install option. When I install and reboot, I get stuck after the IOBluetooth succes message, which is the last one before loading graphics. This "freeze" happens while loading ##### etc too. I've tried using all different flags etc but no succes.

How did you manage to get your graphics working? Do you have two GPU's or just the Intel graphics?

My setup is:

T420
i5 2520m vPro
4gb ram
HD3000 graphics
1600x900 screen

and the standard stuff as bluetooth 3.0, wan etc.

Hope you have some tips for me ;)

Greetz

#15
Kogen Mantis

Kogen Mantis

    InsanelyMac Protégé

  • Donators
  • 98 posts
  • Gender:Male

Hey, it's maybe a little bit off-t, but I have a t420 wich I want to run on OSX. I've been in the hackintosh business for a few years, but since the new Sandy Bridge and further I admit I lost track of the scene a bit.

I have tried to install with the "OSX 10.8 bootable usb method", the one you need the raw file and a windows pc for,
I've tried the ##### method, also myHack etc etc.

With the bootable usb method I can boot in installation, but osinstall.mpkg failes to load, so there's no custom install option. When I install and reboot, I get stuck after the IOBluetooth succes message, which is the last one before loading graphics. This "freeze" happens while loading ##### etc too. I've tried using all different flags etc but no succes.

How did you manage to get your graphics working? Do you have two GPU's or just the Intel graphics?

My setup is:

T420
i5 2520m vPro
4gb ram
HD3000 graphics
1600x900 screen

and the standard stuff as bluetooth 3.0, wan etc.

Hope you have some tips for me ;)

Greetz

Try starting from step "Clover installation" - use another FAT32 formatted pen-drive and copy the EFI folder to it and try installing again in UEFI only mode. I won't support other methods.
Also instead of hardware specs I rather you tell my your ThinkPad serial number. Good luck

#16
distortionmusic

distortionmusic

    InsanelyMac Protégé

  • Members
  • Pip
  • 14 posts
  • Gender:Male
  • Location:Netherlands

Try starting from step "Clover installation" - use another FAT32 formatted pen-drive and copy the EFI folder to it and try installing again in UEFI only mode. I won't support other methods.
Also instead of hardware specs I rather you tell my your ThinkPad serial number. Good luck


My serial number is 4236Z9U.
Thanks for the fast reply, and also my compliments for the work you're doing!



NB: Tried to copy your files from EFI, didn't work OOB. What worked for me is to download latest Clover package installer (v2_rL971), install it to USB and then copy (and replace where needed) your files from "EFI" folder to the EFI folder on the USB. Now I can boot Clover, it's a start haha.


UPDATE: I have followed your guide, and now I can actually boot into the installer. Only issue is, my display does not work. I noticed that I got a black screen after booting (instead of hanging at bluetooth succes it goes on running to graphics), but when I clicked something my usb did go do something. So I figured my graphics were working now, only my internal LCD did not. I switched to external VGA as default boot screen in my UEFI bios, and that, in fact, works. I guess it tries to go 1600x900x32 on my 1280x1024 screen, but it's working.

Do you know what I have to change to make my LCD working, is it something in Clover or in my kexts?

#17
Kogen Mantis

Kogen Mantis

    InsanelyMac Protégé

  • Donators
  • 98 posts
  • Gender:Male

My serial number is 4236Z9U.
Thanks for the fast reply, and also my compliments for the work you're doing!



NB: Tried to copy your files from EFI, didn't work OOB. What worked for me is to download latest Clover package installer (v2_rL971), install it to USB and then copy (and replace where needed) your files from "EFI" folder to the EFI folder on the USB. Now I can boot Clover, it's a start haha.


UPDATE: I have followed your guide, and now I can actually boot into the installer. Only issue is, my display does not work. I noticed that I got a black screen after booting (instead of hanging at bluetooth succes it goes on running to graphics), but when I clicked something my usb did go do something. So I figured my graphics were working now, only my internal LCD did not. I switched to external VGA as default boot screen in my UEFI bios, and that, in fact, works. I guess it tries to go 1600x900x32 on my 1280x1024 screen, but it's working.

Do you know what I have to change to make my LCD working, is it something in Clover or in my kexts?

You have almost identical hardware specs to mine so I advice you to rename the 4180A32 folder inside EFI/OEM/ to 4236Z9U and report back.


BTW: Are you sure you have the correct UEFI booting settings in your ThinkPad Setup? (Startup > UEFI/Legacy Boot Priority [UEFI First])

#18
Kogen Mantis

Kogen Mantis

    InsanelyMac Protégé

  • Donators
  • 98 posts
  • Gender:Male

ThinkPad Setup


I still can't make up my mind regarding the best ThinkPad Setup configuration but it seem that some setting are essential for booting Mac OS X:

Essential:
Config > Serial ATA (SATA) > SATA Controller Mode Option [AHCI]
Security > Memory Protection > Execution Prevention [Enabled]

Security > Intel ® VT-d Feature [Disabled]

My other settings:
Security > Security Chip > Security Chip [Disabled]
Startup > UEFI/Legacy Boot [Both]
Startup > UEFI/Legacy Boot Priority [UEFI First]

Edited by Kogen Mantis, 18 February 2013 - 02:53 PM.


#19
distortionmusic

distortionmusic

    InsanelyMac Protégé

  • Members
  • Pip
  • 14 posts
  • Gender:Male
  • Location:Netherlands

You have almost identical hardware specs to mine so I advice you to rename the 4180A32 folder inside EFI/OEM/ to 4236Z9U and report back.

BTW: Are you sure you have the correct UEFI booting settings in your ThinkPad Setup? (Startup > UEFI/Legacy Boot Priority [UEFI First])


Yeah I have the system up and running now, from my internal screen with right resolution. Sound and ethernet work as well now.
Only issue, I get a KP after a few minutes.

panic(cpu 2 caller 0xffffff7f807ff1df): No HPETs available...CPU(s) configured incorrectly
Debugger called: <panic>
Backtrace (CPU2), Frame : Return Adress
and after that a lot of computer language, which probably is the adress of where it got stuck or something.


I'm going to try changing stuff in bios first, turning off hypertheading etc, maybe it works maybe not, I'll post updates.
I'm still running original UEFI/BIOS by the way, because I wasn't planning yet on changing my wireless card.

I think some things in your DSDT aren't the same after all, but the namechanging thing did work for the rest. Only problem now is that I do not have any knowledge of modifying DSDT's...

#20
Kogen Mantis

Kogen Mantis

    InsanelyMac Protégé

  • Donators
  • 98 posts
  • Gender:Male
I think there is my experimental DSDT.aml in the patched folder, try replacing it with the one I'm using right now.

Attached Files







Also tagged with one or more of these keywords: UEFI, ThinkPad, T420, Lenovo, Clover


0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy