Contribute
Register

[Guide] 2015 X1 Carbon Yosemite

Status
Not open for further replies.
Joined
Dec 28, 2014
Messages
149
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:​
Link

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.
134444d1429338007-guide-intel-hd-graphics-5500-os-x-yosemite-10-10-3-mygfx.png
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 :D.

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!
 

Attachments

  • ACPIBatteryManager.kext.zip
    20 KB · Views: 939
  • ACPIBacklight.kext.zip
    11.9 KB · Views: 928
  • Broadwell SSDT Generator.zip
    490 KB · Views: 1,021
  • Post Install Clover Edits.zip
    538.8 KB · Views: 1,209
  • Pre Install Clover Edits.zip
    597.3 KB · Views: 1,318
  • VoodooHDA_X1Carbon.kext.zip
    155 KB · Views: 1,066
Nice Guide!:thumbup:
 
By anychance how did you backup your bios file from your lenovo?

i have a new lenovo yoga 3 14inch..

intel 5500u
intel 5500 hd graphics (currently 0mb)

im stuck with changing the DVMT.

please help me :D
 
No idea, that was a bullet I dodged. If you do find out, please come back and let us know!
 
Hi,
First of all, thank you for this awesome guide, it's great seeing you've put this much effort in making OSX available to users that do not have the hacking skills required to make it run on newer configurations.

I'm using Lenovo T450s (with Broadwell i7 5600U) and would be happy to see OSX run on it, since there are many multimedia applications that work flawlessly on OSX.
Checking the first and biggest requirement, dedicated video memory, running "lspci -v -s 00:02.0" gives me:
Code:
00:02.0 VGA compatible controller: Intel Corporation Broadwell-U Integrated Graphics (rev 09) (prog-if 00 [VGA controller])    Subsystem: Lenovo Device 5036
    Flags: bus master, fast devsel, latency 0, IRQ 48
    Memory at e0000000 (64-bit, non-prefetchable) [size=16M]
    [B]Memory at d0000000 (64-bit, prefetchable) [size=256M][/B]
    I/O ports at 3000 [size=64]
    Expansion ROM at <unassigned> [disabled]
    Capabilities: <access denied>
    Kernel driver in use: i915

So I guess my HD5500 has 256MB of dedicated memory. Now, correct me if I am wrong, but kernel panic will occur shall there be less than 66MB of memory dedicated for graphics card. So, if I understand this correctly, I do not have to patch my BIOS (I am a total noob when it comes to that kind of hacking and wouldn't want to brick this baby). I want to sort this out before I dive into the installation itself.
 
@graddd I'm in the same boat as you. If it came to the point where I had to patch my bios I woulda dropped the whole project. I booted an Ubuntu live CD and ran the same command:

It said my 64bit prefetchable memory is 512mb while windows responds with 64mb dedicated. I am not sure how to find the correct value in Linux.
 
Hi,

I've come here to share with you my progress on installing OSX on T450s.

First thing to mention is that after setting all the settings neccessary in BIOS and booting into the bootable volume created (+ Clover), I could not get past the installation loading screen (it gave me the beachball). However, I was able to resolve this simply by adding "-v" to arguments in config.plist and setting debug to true instead of false (not sure why it worked, but oh well).

When I got into the installation screen, I knew I needed to erase the partition intended for Hacintosh OS (Disk Utility, Journaled erase), but what I didn't know was that partition scheme needs to be GUID and not MBR. That's kind of important and I feel it needs to be pointed out. So that's my current quest, repartitioning my disk without losing other data on the volume.
 
Hi,

I've come here to share with you my progress on installing OSX on T450s.

Off-topic. Please open a separate thread. This is a guide for X1 Carbon.
 
Ok, sorry. I can't find the delete button on my reply tho... seems as if it's disabled. You as a moderator can probably delete these irrelevant posts and I'll open another thread.
 
Updated the original post. Includes a proper audio tutorial with working headphone/jack detection and it includes a config.plist correction in the power management section.

P.S. Sorry to whatever poor moderator has to keep approving the first post as I make changes.
 
Status
Not open for further replies.
Back
Top