Jump to content
Kogen Mantis

Lenovo ThinkPad T420 with UEFI Only

4,582 posts in this topic

Recommended Posts

@k.surachai - well it sounds like the USB is not configured right for one reason or another if it will not boot to the clover GUI? i am not very familiar with cvad tool and proper settings. i may take a look at his latest rev based on clover v2444 to see what is the right settings. 

EDIT - yeah i tried cvad's tool - does a good job loading up a clover config - but not suitable for the T420 - but there probably a variety of reasons it would NOT boot. However, there is no reason you cannot set it up on windows. Download the zip from my post, then replace the CLOVER folder with the contents of the my zip folder to get a bootable USB or HD. just follow instructions.

Share this post


Link to post
Share on other sites
Advertisement

@k.surachai - well it sounds like the USB is not configured right for one reason or another if it will not boot to the clover GUI? i am not very familiar with cvad tool and proper settings. i may take a look at his latest rev based on clover v2444 to see what is the right settings. 

EDIT - yeah i tried cvad's tool - does a good job loading up a clover config - but not suitable for the T420 - but there probably a variety of reasons it would NOT boot. However, there is no reason you cannot set it up on windows. Download the zip from my post, then replace the CLOVER folder with the contents of the my zip folder to get a bootable USB or HD. just follow instruction

 

@tluck - - Not sure I understand your suggestion to set your package on windows. I did download your zip. (it contain "_MACOSX" folder and a file called "Clover_v2_r1625.pkg". The "_MACOSX" folder also contain just one file, "Clover_v2_r1625.pkg".) But I not sure where to copy them to. I don't seem to find "CLOVER" folder in the USB drive created by cvad's tool.

Share this post


Link to post
Share on other sites

@k.surachai.  

 

what you have must be from the original post on this thread from a long time ago by Kogen Mantis.  

 

the zip (and Guide) I am talking about is from in the link in my signature. Follow this: Clover UEFI on T420 Guide. it contains a zip of my Clover folder and other files that will work on a T420. 

Share this post


Link to post
Share on other sites

@wojtoo - all you have to do is add DualLink = 1 to config.plist (or the DSDT) - download the zip from my signature and use that instead of the clover v1625 stuff i see in the image! the DSDT in there should really help you out.

 

 

@tluck - thanks for help. I started from scratch and installed iOS using your tutorial. There I used config.1366x768.plist with modify dual link =0. (EDIT: sorry,1)
I have display 1920x1080 95% gamut auo b156hw01 v.4 which is used in W510,W520 & W530. 
When I compared these two plist(1600x900 and 1366x768) I found that another difference is inject EDID. This EDID is just raw data from your monitor? Because this raw data is actually in displays/overrides.Am I right. I attached my display vendor catalog for display mentioned above and monitor info. 

Share this post


Link to post
Share on other sites

@wojtoo - good news. so for your 1920x1080 LCD, you set DualLink=1 right? well yeah the T420 1600x900 (some models) seems to have a malformed EDID for the built-in LCD that causes glitches on OSX. Clover  (and the DSDT) replaces it with a working EDID and get glitch-free graphics. if you are glitch-free then don't worry about replacing/patching your EDID. and then yes, i created a DisplayOverride that matches which provides a better looking more natural (less blue etc IMO) gamma color corrected LCD profile. this is largely a matter of preference. btw, i could not see the file in the link from previous post. permission?

Share this post


Link to post
Share on other sites

I found a cheap mini-dock ($50), so I've been working on upgrade support (e.g. removed VGA patch so that I could use both digital ports on the dock to drive my monitors).

 

I also patched AppleHDA (from 10.9) to drive the dock headphone/microphone ports:

 

First, edit ConfigData of CodecID 351359086 (LayoutId 12) /System/Library/Extensions/AppleHDA.kext/Contents/PlugIns/AppleHDAHardwareConfigDriver.kext/Contents/Info.plist to add the dock input/output:

0x40,0x10,0x21,0x04, /* 0x19        jack, External      Right,             HP Out, 1/8" stereo/mono,    Black, misc 0,                      , 4-0 */

0x50,0x90,0x81,0x21, /* 0x1a        jack, Separate       Rear,            Line In, 1/8" stereo/mono,     Pink, misc 0,                      , 5-0 */

0x60,0x10,0x81,0x04, /* 0x1b        jack, External      Right,            Line In, 1/8" stereo/mono,    Black, misc 0,                      , 6-0 */

0x20,0x40,0x21,0x21, /* 0x1c        jack, Separate       Rear,             HP Out, 1/8" stereo/mono,    Green, misc 0,                      , 2-0 */

0x10,0x01,0x17,0x90, /* 0x1f    internal, Internal        N/A,            Speaker,     Other Analog,  Unknown, misc 0,  Jack Detect Disabled, 1-0 */

0x70,0x01,0xa6,0x90, /* 0x23    internal, Internal        N/A,             Mic In,    Other Digital,  Unknown, misc 0,  Jack Detect Disabled, 7-0 */

<data>
AZccQAGXHRABlx4hAZcfBAGnHFABpx2QAacegQGnHyEBtxxgAbcdEAG3HoEBtx8EAcccIAHHHUAB
xx4hAccfIQH3HBAB9x0BAfceFwH3H5ACNxxwAjcdAQI3HqYCNx+QAbcMAg==
</data>

Also add 2 new PathMap array elements (copy the other two, but modify mappings to add the new pins) to /System/Library/Extensions/AppleHDA.kext/Contents/Resources/Platforms.xml

 

Note: I couldn't get auto-switching detect to work on my first try, so this adds a Headphones & LineIn menu item instead. (First listing is auto-detect Internal Speaker/Headphones. Second listing is Dock Headphones and won't do anything if you don't have a dock. Same for audio input. I've discovered that it's trivial to modify AppleHDA to split Internal Speaker/Headphones1 too, but I like having the auto-switchover -- and the lenovo hardware mutes the internal speaker when you plug in headphones into either port. But I can post more detail if someone's interested.)

 

This setup is actually extremely cool since we can now plug in TWO sets of speakers for QUADRAPHONIC audio (use Audio MIDI Setup App to configure) when using the dock.

 

edit: oops, forgot to attach kext

AppleHDA.manwe150.kext.zip

Share this post


Link to post
Share on other sites

@manwe

 

sweet! I have been using a dock and I love that I don't have to connect my home speakers to the side port anymore. I have incorporated your new files (Info.plist and Platform.xml.zlib) into the "Guide" version of AppleHDA.kext v2.5.3 currently on 10.9.1. Been waiting on 10.9.2 to repost the zip bundle since not much has really changed on my end - other than revving a few kexts to keep current with Clover and Rehabman's kexts. 

 

Thank you!

Share this post


Link to post
Share on other sites

@k.surachai.  

 

what you have must be from the original post on this thread from a long time ago by Kogen Mantis.  

 

the zip (and Guide) I am talking about is from in the link in my signature. Follow this: Clover UEFI on T420 Guide. it contains a zip of my Clover folder and other files that will work on a T420. 

 

TLUCK

 

Thank you so much. Seem I had successfully modified my Clover USB Drive (created by cvad's tool) with your package as you suggested. It boot and work well. I follow your instruction till end. Only some device still not working and may need to work around.

 

Just one point .. I did success installation on a 16GB USB Drive (for testing purpose) Everything looked good. So, I redo .. now on my internal HDD. The installation went well. But after first reboot .. the seem not able to boot from the HDD. I got an error

 

"Still waiting for root device"

 

I left the machine for long time .. and found multiple lines of the same "Still waiting for root device"

 

 

Not sure what went wrong ? Any advise please......

 

 

 

 

******

 

One more thing .. your package work so well. I'm thinking of using it for another ThinkPad (X201) But seem your package had been configured specifically for T420. The Installer USB (which work well on ThinkPad T420) behave like a unmodified cvad's Clover (the menu/background image/etc). And that unmodified installer doesn't work.

 

Any advise how can I modify to make your package work on X201 as well ? Many thanks.

Share this post


Link to post
Share on other sites

@k.surachai - what version of OSX? "still waiting for root device" was problem in 10.8.0-10.8.2. i would go to 10.9.1 or 10.8.5. 

Share this post


Link to post
Share on other sites

@TLUCK

 

Thanks for the advise, I can install 10.8 on internal HDD now.

 

Sir, your package work so well. I'm thinking of using it for another ThinkPad (X201) But seem your package had been configured specifically for T420. The Installer USB (which work well on ThinkPad T420) behave like a unmodified cvad's Clover (I can tell from the menu/background image/etc when boot with it. Same Installation USB boot & look differently on T420 & X201). And that unmodified installer doesn't work.

 

 

Any advise how can I modify to make your package work on X201 as well ? Many thanks.

Share this post


Link to post
Share on other sites

k.surachai - well the package is somewhat specific to the T420 ( DSDT and kexts AppleHDA.kext, Bluetooth).  But should be easy to modify for other laptops. The T420 is UEFI capable but i don't think the X201 is UEFI capable so then you then must install the Legacy MBR tools to boot the installer USB and/or the HD.

Share this post


Link to post
Share on other sites

TLUCK

 

Confirm that X201 is UEFI capable. I can use Clover bootable USB created by cvad's tool to boot. But it can boot but not completely work. I wish I could use your package to modify it and make it work (just like your package work well on T420)

 

As mentioned, after I modify the Clover bootable USB created by cvad's tool ... the USB boot but just like normal (and installation fail) Unlike when I use the same USB on T420, It boot with your modified menu/background screen/etc .. and most importantly, the installation success.

 

Hope you can help guide how to modify your package a bit make it boot on X201. Many Tks.

Share this post


Link to post
Share on other sites

Support for 10.9.2 posted here: Clover UEFI on T420 Guide

 

25-Feb-2014

  • Updates from 10.9.2 - new (patched) AppleHDA.kext (v2.6.0) and BroadcomBluetoothHostControllerUSBTransport.kext (v4.2.3)
    Note: AppleHDA.kext has Manwe150's fix/additions for dock ports.
  • Updated to Clover 2536
  • Updated RehabMan's kexts - VoodooPS2Controller (v1.8.10), ACPIBatteryManager (v1.52)
  • Updated FakeSMC.kext to kozlek 6.0.1123 (instead of RehabMans fork)

Share this post


Link to post
Share on other sites

Thanks a lot tluck. Some issues seem better now, even without using a usb stick for booting. 

Sleep/wake goes better, no freeze with mute button, ... let's see as I keep using it, but looks much better.

I'm not sure if it is related to the update, the new kexts or the new Clover version...

Share this post


Link to post
Share on other sites

@ag6942563 - thanks for the feedback. you are welcome. yeah i have been booting MBR-on-usb for last few months... so good to know!

 

@honeywell - no changes to the DSDT since december when I posted some mods for sleep/wake that addressed sound and LED blinking.

Note: not long ago, I removed the ssdt.aml files and include the ssdt generator script to allow people to create their own based on your CPU model.

 

the box has been running just as good as my real mac. well 99.9%. so knock on wood! 

Share this post


Link to post
Share on other sites

Hi tluck,

 

Could you tell me how you make AppleACPIPlatform.kext 2.0 work? I can only use 1.3.6 on my W520.

 

Thank you!

 

 

I just found I have to turn off vt-d to use AppleACPIPlacform.kext 2.0.

 

I downloaded your AppleHDA.kext and found AppleHDAHardwareConfigDriver is version 2.5.2fc2 which should be 2.6.0.

Edited by zhangqq

Share this post


Link to post
Share on other sites

@zhangqq - 

 

I presume you have AppleACPIPlatform.kext 2.0 working now?  meaning it sleeps/wakes and shows the battery? the DSDT.dsl - the source has comments indicating additions or mods. Note: clover can do most of the work now, but there is some "fancy" stuff for the battery.  I can also post the diffs output between dsdt.original.dsl and dsdt.dsl if that would help non-T420 users.

 

Thanks for catching that rev info issue for AppleHDA. It turns out it is just the Info.plist that I forget to replace - the binaries are right. I will repost the bundle anyway with revised kext so the versions match.

Share this post


Link to post
Share on other sites

Tluck, the 430 users would really appreciate that, thanks.

 

I took some time off and haven't touched mine since 10.8.4. Would be nice to catch up again.

Share this post


Link to post
Share on other sites

OK. Here is a zip of dsdt.original.dsl (from BIOS v1.46) and dsdt.current.dsl as well the iasl compiler I have.

 

Note: the current DSDT is a combination of edits with credits to Clover, manwe150, TimeWalker150, RehabMan and me.

 

diff dsdt.original.dsl dsdt.current.dsl > diffs.txt

cp dsdt.original.dsl dsdt.dsl

patch dsdt.dsl diffs.txt

iasl dsdt.dsl

 

The above sequence will create a patched and compiled DSDT (dsdt.aml) from the diffs.

Note: a more readable version of the diffs (i.e. ignore blank lines and other white space) can be obtained by
 

diff -Bw dsdt.original.dsl dsdt.current.dsl

 

dsdt.zip

Share this post


Link to post
Share on other sites

Yes tluck, My W520 works with AppleACPIPlatform.kext 2.0 but only when I turn off VT-D and I also ptached DSDT for battery. I will study your DSDT again.Thank you very much!

Share this post


Link to post
Share on other sites

@tluck

 

Now, maybe I missed this, but why is all the WMI stuff stripped out? I'm guessing you don't multiboot windows? Or does it cause problems for OSX? I guess the same question applies for IMEI which I think is the Intel Management Engine Interface. I can live without ME if necessary, but does it show up in OSX as a device if left in?

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 glasgood
      CLOVER DUAL BOOT MOJAVE & WINDOWS 10 GUIDE 
       

       
       
      INCLUDES  MBR / LEGACY BIOS  TO  GPT / EFI CONVERSION
      USING MBR2GPT TOOL
       
       
      PREREQUISITE: Two physical discs ( SSD’s or HDD’s )
       
       
       
       
       
      STEP 1 - Clover dual boot configuration 
       
      Open config.plist with Clover Configurator
       
      Boot
       Legacy = PBR Timeout = True ( will remove the Timeout countdown, from Clover boot menu)  

       
      GUI 
      Scan / Custom
       Entries = True  Tool = True  Legacy = False ( removes extra Windows 10 entries )  
      Hide Volume
      - Preboot ( macOS Preboot )
      - Recovery ( macOS Recovery )
       

       
      So at boot you will have two options: boot macOS Mojave or Windows 10 
       
       
       
       
       
       
       
      ————————————————————
       
       
      STEP 2 - Using a drive without Windows 10 installed
       
      Disconnect system drive that contains your macOS Mojave install from computer ( This is so that Windows does not overwrite existing macOS Mojave boot loader )
       
      Proceed with a Windows 10 UEFI install.  
      After installation reconnect macOS Mojave Drive, the Windows installation should now be detected and usable in Clover. 
      If Windows 10 is not detected or able to boot,  then verify you installed Windows 10 as UEFI and not MBR ---->  ( Read step 2 - For a drive with Windows 10 installed )
       
       
      OR
       
       
       
      STEP 2 - Using a drive with Windows 10 already installed
       
      Verify your Windows install is  GPT / UEFI or MBR / Legacy BIOS.   
      If Windows install is GPT UEFI then Windows 10 install is ready to use at Clover boot menu, you should be able to boot into Windows directly from Clover boot screen. 
       

       
       
      But if  Windows drive is detected at Clover boot screen, but when booting Windows you get a black screen with a cursor on the top left,
      then this is most likely because Windows drive is MBR ( Legacy BIOS ).  You can easily convert MBR to GPT using  Windows MBR2GPT tool ( this saves hours work having to reinstall Windows 10 and setting up all your applications again  ) 
       
      If Windows 10 install is MBR / Legacy BIOS  then simply convert to GPT / UEFI  following instructions below ( read video summary and view video )
       
       
      ** To use Windows 10  MBR2GPT tool  you must have Windows 10 version 1703 ( creators update  ) or later and less than 3 partitions on 
      the Windows 10 drive **
       
      Video summary:
       
      Confirm Windows 10 drive is MBR Legacy BIOS ( in Windows Disk Management ) Reboot into Windows PE ( Advanced Startup ) Convert from MBR Legacy BIOS to GPT UEFI ( using commands below ) mbr2gpt /validate mbr2gpt /convert Restart Verify Windows 10 drive has changed to GPT UEFI ( in Windows Disk Management )  
       
       
       
      After conversion Windows 10 is ready to use at the Clover boot menu 
       
       
       
      STEP 3 - Stop Windows Boot manager from overriding Clover boot manager
       
      How to stop Windows boot manager from overriding your Hackintosh Clover boot manager when using dual booting between macOS and Windows
       
       
       
       
       
       
    • By Averyfreeman
      Dear @tluck 
       
      I have a T460s 20F9-003HUS - I5-6300U 2C 2.4GHz, FHD non-touch, 8GB DDR4, PM961 NVMe, vPro, AMT, etc.
      http://psref.lenovo.com/Detail/ThinkPad_T460s?M=20F9003HUS
       
      I have been following the following thread to hackintosh my T460s:
       but it's very long and hard to sort through, so I thought I'd start a new thread specifically for this issue
       
      Personally, my model has been doing pretty good with just the T460 EFI from github.  I did run the scripts to create and patch a new DSDT, though, after installing patchmatic and iasl.  I also manually installed VooDooPS2Controller.kext by following the guide on RehabMan's git wiki. 
       
      I also re-installed my kexts from CLOVER/kexts/other using kext helper to build them into the kext cache
       
      My only glaring issue is the touchpad.  It's unusably bad, I've had to use a mouse which kinda sucks on a laptop.
       
      It'll be really slow and then all of the sudden be really fast.  It hangs and skips intermittently.  Kind of hard to describe but it's {censored}. 
       
      So far I've tried: 
       
      installing latest version of VooDooPS2Controller, urning off all gestures, modifying speed, patching DSDT with autogen scripts (iASL, patchmatic). 
       
      Has anybody seen this problem?  What do you recommend I do?  
       
      Happy to provide any logs anyone believes would be relevant via pastebin, etc. 
       
      Thank you!
    • By SoThOr
      This was spurred on from a discussion in the Clover General thread. Where there was a debate on bcdedit being able create/read/edit (U)EFI Boot entries. I didn't think it appropriate to post all this information there and somebody may want to make use of this and its likely to get lost in that massive thread.
       
      Out of curiosity I decided to see if I could create an EFI entry using bcdedit. What can I say I like a challenge.  Whilst is not a documented method by Microsoft, as it turns out in a round about way it IS possible to create an EFI entry using bcdedit and these are the steps I went through to add UEFI Shell located on a USB stick to the EFI entries. 
       
      Third party software is available that can create and edit UEFI entries from Windows with better support and more features. I'm just making this information available in case those options are unavailable. 
       
      DISCLAIMER - This is not a supported method. Use at your own risk. I recommend backing up your BCD/Firmware variables/settings beforehand.
       
      1) Copy {bootmgr} entry.
      C:\Windows\System32>bcdedit /copy {bootmgr} /d "UEFI Shell" The entry was successfully copied to {34e8383c-73a7-11e9-9cb0-94de8078a7b5}. 2) Edit the new entry using the new GUID bcdedit generated in the copy step.
        a) Set the device and path for UEFI shell on my USB stick.
      bcdedit /set {34e8383d-73a7-11e9-9cb0-94de8078a7b5} device partition=G: bcdedit /set {34e8383d-73a7-11e9-9cb0-94de8078a7b5} path \EFI\SHELL\SHELLX64.efi   b) Clean up some of the stuff that was copied from {bootmgr} (optional as far as I can tell, just makes things tidier in bcdedit)
      3) Put the new EFI entry first in boot order. (optional)
       
      After completing the steps above, here is what "bcdedit /enum firmware" shows:
       
      I shutdown my computer and when I turned my computer back on it booted up into UEFI Shell. After exiting the shell my PC went on to boot Windows.
      Here is the resulting dump using "bcfg boot dump -v" from that shell:
       
      You may notice that the shell shows as "Windows Boot Manager" in the bcdedit output. This I believe is because of the "WINDOWS" at the beginning of the option data that bcdedit added to the EFI Boot entry. I also believe this why bcdedit shows my Windows 8 installation as "Firmware Application" because it has no option data. I don't know how to remove this data using bcdedit nor do I know how the option data, that bcdedit adds, will affect other EFI applications.

      There might be a way to create the EFI entry without copying the Windows entry but if there is I'm unable to find any documentation on how one would do so. If you use the create command then it just puts it in the BCD and I'm unaware of a way to tell it to create it in EFI instead, other than by doing the above.
    • By cvad
      Small tool to download, compile and build the latest Clover X64 package.
       
       
       

      The script inside is editable.

       
      Enjoy...
       
      Many thanks to the comrade SunKi for help with creating the script.
       
       
       
       
       
      Best thanks - click "Rate File".
       
×