- Joined
- Dec 28, 2014
- Messages
- 147
- Motherboard
- Lenovo X1 Carbon (Gen 3 20BS) - Clover
- CPU
- i7-5600U
- Graphics
- HD 5500, 1920x1080
Thinkpad Carbon X1 (3rd Gen)
X1 Carbon Specs:
CPU: Intel Core I7-5600U
GPU: Intel HD Graphics 5500 @ 1920x1080
Lenovo Reference Doc:
LinkCPU: Intel Core I7-5600U
GPU: Intel HD Graphics 5500 @ 1920x1080
Lenovo Reference Doc:
Intro:
This guide is for the 2015 (3rd generation) X1 Carbon. More specifically, it is for the 20BS model with the I7-5600U processor and FHD (1920x1080, non-touch) display. While this guide might (and probably will) work for similar models, I have not had the opportunity to test them or converse with those that have. If you give this a try, please let all of us know which model you have and if you were successful.
Couple Disclaimers:
The X1 Carbon is shipped with an Intel Wifi card. That is incompatible with OSX in every way, that will never work! If you want wifi, consider ordering a USB dongle!
To distinguished hackintoshers - I understand that there are parts in this guide that will probably be out-of-the-norm (like keeping my kexts in the efi/clover/kexts folder) feel free to mention them, and I may give them a try and update the guide. With that said, based on the suggestion I may not - no point in changing what isn't broken.
Requirements:
The biggest requirement right now is making sure Windows reports that your Intel HD5500 graphics reports 64 or 96mb of dedicated video memory. You can check this by right clicking on your desktop, opening the screen resolution window, and hitting the advanced button.
If you do not have 64mb or 96mb of dedicated video memory available then you can try patching your bios via Step 2.2 in this guide. Please note, that if done incorrectly, you could currupt your bios during your X1 into a shint, yet light paperweight.
Part #1 (BIOS):
Turn your X1 off and boot into BIOS.
- Start by going to the Restart tab. Make sure OS Optimized Defaults are disabled, and then use the Load Setup Defaults option to reset your bios. Reboot for that to take effect. (Let's make sure we are on the same page).
- Go to Config > USB > Set USB 3.0 Mode to Disabled (We will turn it back on after installation.)
- Go to Config > Display > Set the total graphics memory to 512mb.
- Go to Security > FingerPrint > Set Predesktop Authentication to Disabled (The scanner breaks OSX sleeping so we cannot have it activate when the pc isn't running.)
- Go to Security > Memory Protection > Make sure Execution Prevention is enabled.
- Go to Security > Virtualization > Make sure both options are disabled.
- Go to Startup > UEFI/Legacy Boot and Make sure it is set to UEFI only.
- In the restart tab, hit save changes and exit.
Part #2 (Create Clover & Yosemite Install USB):
On your current Mac, run Clover. Set the install location to your empty flash drive and click customize when the option appears.
Choose the following options:
- Install for UEFI Booting Only
- Install in the ESP
- Themes > Blue Mac (Optional)
- Drivers64UEFI > OsxAptioFixDrv-64
All other options should remain unchecked.
If you haven’t already, open your App Store and download the Yosemite installer. Once downloaded, open terminal and run this command (REPLACE install_ox with the name of your usb):
Code:
sudo "/Applications/Install OS X Yosemite.app/Contents/Resources/createinstallmedia" --volume /Volumes/install_osx --applicationpath "/Applications/Install OS X Yosemite.app" —nointeraction
That will take awhile.
When it's finished open up Finder. On the left hand side you should see an EFI drive, open that and go into the /Efi/Clover folder. Extract the Pre Install Clover Edits.zip from the attachments into this post into that folder. It should replace config.plist, add some kext files into clover/kexts/other and add a driver into drivers64uefi.
Finally, navigate into the EFI/EFI/Clover/Drivers64UEFI folder and delete VFSBox file if it exists.
Now safely eject your EFI drive which will prompt you to eject the install drive and move back to your X1 Carbon.
(You are done with Part 2 - This is a summarized version of Rehabmans Laptop Clover Install Guide, his goes into extra detail if you want to read through/follow that. Make sure to grab my config.plist_install though!)
Part 3 (Launching Clover):
Restart your X1 Carbon with the newly created drive plugged in. Hit F12 as the Thinkpad menu appears to access the boot menu and select your flash drive.
When the Clover window opens, hit enter on the Install OS X Yosemite option. A ton of text should start filling up your screen and a few minutes later you will see the familiar Yosemite Install window.
*If you run into any errors, try to get a screen capture so you can tell us about them and we can help you.*
Part 4 (Installing Yosemite):
Go through the install wizard like you normally would. (Please keep in mind that OSX requires the disk to be partitioned in GUID format.) The only real thing to note is that it will say that there is about a second remaining for 10 minutes or more, don't freak out.
Your PC will reboot during this process, when it does boot into your clover usb again, but once you reach clover, choose to boot from your new Yosemite partition instead of the installer. You would receive the basic setup prompts including setting up your time zone, username, etc.
Part 5 (Yosemite - First Contact):
When you reach the desktop, you will notice that everything is horribly slow, don’t worry, we are about to fix that. Open up SysPrefs>Security and make it so you can run apps from anywhere.
Next, run Clover and install it on your new Yosemite partition with the same settings as earlier
Choose the following options:
- Install for UEFI Booting Only
- Install in the ESP
- Themes > Blue Mac (Optional)
- Drivers64UEFI > OsxAptioFixDrv-64
When the installation has finished, don’t restart. Instead, open up finder and locate the EFI drive that clover mounted. Go into the Clover folder and extract my Post Install Clover Edits archive there.
That will replace the config.plist, add the FakeSMC.kext, VoodooPS2Controller.kext and the ethernet kext to your laptop. It will also install HFSPlus.efi which seems to work outside of the installer.
Finally, navigate to EFI/EFI/Clover/Drivers64UEFI/ and remove VBOXHFS if it exists.
After that, you can remove the usb installer and restart your pc.
Part 6 (Half way there!):
If all went well, your pc should have started right back up, boot time should be significantly quicker and the display lag is now gone. The easy part it done .
The next several parts describes the steps needed to bring basic systems back online. We want USB3 support, backlight control, battery status, power management, etc and all of that is possible. We are going to start with DSDT patches.
Part 7 (Dumping your DSDTs):
Restart your laptop. When clover appears, top F4 and Fn+F4 a couple of times. This will dump your unmodified DSDT and SSDT files to your EFI partition.
Part 8 (Retrieving your DSDTs):
Now we need to fetch the DSDT and SSDT files.
Open terminal and type the following command.
defaults write com.apple.DiskUtility DUDebugMenuEnabled 1
Now open disk utility. At the top of the screen open the debug menu and toggle the show all partitions option. Find your EFI partition and mount it.
Make a new folder on your desktop called MyDDSTs
Open finder and navigate to EFI/EFI/Clover/ACPI/origin.
Copy the DSDT.aml and all of the SSDT-#.aml files to your MyDSDTs folder.
Part 9 (Converting your DSDTs):
Download iasl form Rehabmans Bitbucket - https://bitbucket.org/RehabMan/acpica/downloads
Extract the zip archive and copy the iasl file to /usr/bin
Next, open terminal.
Type the following commands
cd ~/Desktop/MyDSDTs
iasl -da -dl *.aml
Exit terminal.
Part 9 (Gathering the MaciASL DSDT patching software):
Download MaciASL from Rehabmans Bitbucket - https://bitbucket.org/RehabMan/os-x-maciasl-patchmatic/downloads
Extract the archive and then click and drag the MaciASL executable into your applications folder.
Part 10 (Actually patching the DSDTs):
*You must have internet connection to complete this part the easy way. If you don’t have your ethernet adapter, a usb wifi card, or an iPhone/iPad you can tether from then you will be stuck finding these patches in Rehabmans repository and coping them into the MaciASL patch window manually.*
Go back to Finder and navigate to your Desktop/MyDSDTs folder. When you get there, double click on DSDT.dsl (NOT .aml) — MaciASL should launch.
Upon the first MaciASL launch, Click on the MaciASL tab at the top of the screen and open preferences. Click on the general tab and add the following source.
http://raw.github.com/RehabMan/Laptop-DSDT-Patch/master
You can call it whatever you want, we recommend “Laptop Patches”.
After you add the source, close out of the preferences window.
Click on the patch button at the top of the main window. On the left you should see a large list of patches from Rehabmans repo. You need to apply, one at a time.
[bat] Lenovo X220
[igpu] Brightness Fix (Haswell)
[sys] Fix _WAK Arg0 v2
[sys] HPET Fix
[sys] “SMBUS” Fix
[sys] IRQ Fix
[sys] RTC Fix
[sys] OS Check Fix (Windows 8)
[sys] Fix PNOT/PPNT
[sys] Add IMEI
And finally, add this patch into the patch window by coping and pasting, it will map the brightness buttons to the correct acpi events.
into method label _Q15 replace_content
begin
// Brightness Down\n
Notify(KBD, 0x0205)\n
Notify(KBD, 0x0285)\n
end;
into method label _Q14 replace_content
begin
// Brightness Up\n
Notify(KBD, 0x0206)\n
Notify(KBD, 0x0286)\n
end;
Now, close the patch window and hit the compile button. Some warnings should appear but as long as there are no errors we are good to go.
Make a new folder on your desktop called MyPatchedDSDTs.
In MaciASL hit File > Save, make the filename DSDT save it in your new MyPatchedDSDTs folder and make sure you set the drop down box for the file type to be ACPI Machine Language Binary.
Part 11 (Loading our patched DSDT):
Okay, that was the first hurdle. Let’s go ahead and put that newly patched DSDT to work.
Remount our EFI partition by opening DiskUtility, selecting the partition and clicking the mount button.
In finder, navigate to EFI/EFI/Clover/ACPI/patched and copy our patched DSDT.aml into that folder.
Next, navigate to EFI/EFI/Clover/kexts/Other and add the ACPIBatteryManager.kext and ACPIBacklight.kext that is attached to the bottom of this post.
Finally, open EFI/EFI/Clover/config.plist and set SSDT>DropOem to true and if you see CStates/PStates make sure they are false.
Restart your computer and you should find that you have a battery icon displaying the battery status. In SysPrefs>Display you should have a slider to change the backlight power and your backlight buttons on your keyboard should be working.
Part 12 (CPU Power Management/SSDT Patch):
We are almost there! Last things to touch on are CPU power management and audio.
Lets go ahead and create an SSDT patch for CPU management.
Download the Broadwell SSDT Gen.zip attachment from this post, extract it and place it in a new folder on our desktop called SSDTGen
Then open terminal and type these commands
cd ~/Desktop/SSDTGen
chmod +x ssdtPRGen.sh
./ssdtPRGen.sh
The script should run and the last line will tell you if it succeeded or failed. (It should run without issue, if it doesn’t post and let us know!)
Open up our SSDTGen folder and you should find some new files. We only care about ssdt.aml.
Remount our EFI partition by opening DiskUtility, selecting the partition and clicking the mount button.
Navigate to EFI/EFI/Clover/ACPI/Patched and copy that new ssdt.aml file in there.
Restart your laptop and you now have cpu power management or multiple power states that will help you save battery life a little.
Part 13 (Audio):
I fixed a version of VoodooHDA to work with the X1 Carbon. You can download it at the bottom of this post. Install it by mounting the EFI partition again and placing it in Clover/Kexts/Other.
If you want to patch a VoodooHDA yourself, I made the following changes to its info.plist.
Input Gain = 0
Half Volume Fix = Yes
Nodes to Patch:
Code:
<key>NodesToPatch</key> <array>
<dict>
<key>Codec</key>
<integer>0</integer>
<key>Config</key>
<string>0x0321101f</string>
<key>Node</key>
<integer>21</integer>
</dict>
</array>
Part 14 (USB3) :
Nothing special here, once you are in Yosemite you can re-enable USB3 in the bios.
We're Done!!
The rest of this guide will touch up on credits, thank-yous and other various little fixes that you might need. At this point you should have a working Yosemite installation on your X1 Carbon, audio isn't great and the built in Intel Wifi adapter doesn't work but that can be solved by a $10 usb dongle. Enjoy Yosemite!
Various Fixes (Only apply these if you are having issues!):
App Store Fix:I
f you don’t have an ethernet adapter, you will need to install NullEthernet. I won’t go into that but you can find simple straightforward guides on this site.
If you do have the ethernet adapter and the app store isn’t working, go to Finder and navigate to /Library/Preferences/SystemConfiguration/ and delete the NetworkInterfaces file. Restart your computer, go into network settings and add the ethernet option as the first device.
Shoutout/Thanks!
This is a massive shoutout to Rehabman who was answered all my questions these past several days. He is also the mastermind behind a lot of the kext files, dsdt patches and more that we used to get this online. AustereJ is also a notable mention, he wrote up the details for getting Intel HDGraphics 5500 up and running, without his Framebuffer patch we wouldn't have made it to the installer. There are several others too - everyone that helped out in this I am greatly appreciative!
Wrapping-Up
Please remember that this guide works on my device, that doesn't mean it will work on yours. If you have issues, make a post with as much detail to describe the problem as possible and tell me where you are in the guide, I or someone else will try to help. If it works, please post and let us know what X1 Carbon you have!