Contribute
Register

Lenovo x220 ThinkPad (i5-2520) with FileVault

Status
Not open for further replies.
Joined
Jan 30, 2016
Messages
40
Motherboard
Gigabyte Z77X-UDH5
CPU
i7-3770K
Graphics
GTX 560 Ti
Mac
  1. MacBook
  2. MacBook Pro
Classic Mac
  1. Classic
  2. iMac
  3. LC
  4. Performa
  5. Power Mac
  6. Quadra
Mobile Phone
  1. Android
  2. iOS
  3. Other
There is a well known guide to Hackintoshing and installing High Sierra on the x220 by McDonnellTech.

The only problem is that it doesn't allow for FileVault encryption of the hard disk. And for many encryption is a must.

The problem is revealed after following the guide and then encrypting the drive. Upon restart, we are presented with the password login screen, and we are unable to enter a password, because the keyboard doesn't work. Effectively locking us out.

I think this is because the Lenovo x220 bios uses different keyboard drivers at boot... I'm not entirely sure. But this is a common problem for devices using a PS/2 keyboard. And there is no one size solution that fits all of these devices.

There is a supposed work around, where plugging an external USB keyboard in restores our ability to enter the password. I don't remember if this also requires installing different keyboard kexts... but regardless there is a better solution. One which will restore full keyboard functionality.

The solution first surfaced here it seems, and it comes in the form of a new keyboard driver by Jeif.

The X220 macOS 10.13 Utility and Kext pack 07.09.2018 provided in the McDonnellTech guide is great but our solution requires a change.

This new keyboard driver was one part of the solution, but the other part is removing keyboard drivers from the EFI folder. Finding out which drivers to keep and which ones to remove is not obvious, but in the end I figured it out.

So having carefully gone through the McDonnell guide (I skipped the wifi card part, still waiting for mine to arrive by post), and before switching on encryption, I got hold of Jief's AppleKeyFeeder.efi (a version that worked, attached to this post). Then I went into the EFI partition of my SSD, and removed one file from the drivers64UEFI folder. UsbKbDxe.efi. Removing this driver, and replacing it with Jief's file did the trick. I encrypted the drive, rebooted and I was able to use the keyboard to login with my password to my fully encrypted x220 hackintosh running HS 10.13.6.

Minor bugs:

The keyboard is pretty good, minor glitch with Capslock though. Sometimes it doesn't know whether to do uppercase or lowercase. This is really minor though. And seems to reset itself properly when I hit the Shift key.

Also, on windows with a light background, a thin 1 pixel line sometimes appears. There may be a graphics driver for this IDK.

Finally, not 100% sure yet but it may be best to wait until the disk has finished encrypting before installing any apps. Otherwise you may have to put up with a dialog box popping up everytime you open the app, saying the app was downloaded from the internet. Just a little annoying.
 

Attachments

  • AppleKeyFeeder.efi
    5.3 KB · Views: 169
Last edited:
Noticed Brightness was not working. No slider in the menu or in system preferences and the keyboard keys (Fn+Home/End) not working.

Lazy fix (from here: https://www.tonymacx86.com/threads/...ontrol-using-applebacklightfixup-kext.218222/): delete AppleBacklightInjector.kext from Library/Extensions, replaced with AppleBacklightFixup.kext. I also added SSDT-PNLF.aml to my EFI (ACPI/patches).

(edited to amplify ReHabMan's point below)
 
Last edited:
Noticed Brightness was not working. No slider in the menu or in system preferences and the keyboard keys (Fn+Home/End) not working.

Lazy fix (from here: https://www.tonymacx86.com/threads/...ontrol-using-applebacklightfixup-kext.218222/): delete AppleBacklightInjector.kext from Library/Extensions, replaced with AppleBacklightFixup.kext. I also added SSDT-PNLF.aml to my EFI (ACPI/patches). This only worked after I deleted the AppleBacklightInjector, so i'm not sure if the files actually helped.

AppleBacklightInjector.kext should not be combined with AppleBacklightFixup.kext.
(AppleBacklightFixup.kext replaces AppleBacklightInjector and the AppleBacklight KextsToPatch entry)
 
Status
Not open for further replies.
Back
Top