- This guide is intended to help Lenovo Y510p users to try OS X for educational purposes. You should buy Apple computer to be able to use Apple software legally in compliance with Apple's macOS EULA.
- It is very possible to install any OS X version from Yosemite (10.10.x) up to the most recent version Sierra (10.12.x). However, I only evaluate the most recent version on my system so I won't be able to support old versions.
- As some may have different partition layout or different hardware, it should be noted this is not a definite guide and you must adapt according to the situation you have
- For every step there might be other ways to do it better (or worse). The experts here in this forum may not agree with some of the steps mentioned here. This is what I had to do to get it working for my liking but comments and suggestions are very welcome indeed.
- This guide will always be incomplete (this is not a mac anyway) and I will refine it overtime time as needed
- The work introduced here is gathered and collected from many sources. My contribution is the least of all and I will try to give credit where it belongs as much as I remember. For any work I forgot to give credit I apologize for not remembering the source.
Although no one ever reported broken Y510p because of this guide, I still hold no responsibility for broken systems. Proceed at your own risk, read, read again, and ask before attempting something you are not OK with. Whoever is going to use part or all of this guide, please backup everything you are going to tinker with first.
What Works and What Does not
Simply put, almost everything works if the post-installation fixes are followed carefully. In summary:
- Graphics with full acceleration QE/CI (using Intel GPU only) + HDMI Video
- Audio using AppleHDA
- HDMI Audio
- Ethernet (LAN)
- WiFi / Bluetooth (after replacing the Intel card (incompatible) with a compatible one like Broadcom BCM4352 for example
- Sleep (also sleep on Lid Close)
- Keyboard / Touchpad
- CPU Power Management
- All USB ports
Issues and What does not work
- Intel GPU / Restart issue: There is a problem related to graphics occurs when display goes off then on, like when system sleeps and wake or when changing display resolution for example, which results in no display on restart. These events requires re-initialization for the graphic driver but it seems the driver re-initialize incorrectly. As a result, the graphics related memory hold wrong data for some graphic registers which indirectly affects the restart functionality. Once the system is restarted in any of these scenarios, the POST (where Lenovo logo should appear) has no display and so is Clover and beyond if an OS is selected and booted using keyboard blindly. However, this is a graphic driver issue and has nothing to do with power or reboot function itself. Workarounds:
If you did not trigger the graphic-restart issue (no display off/on switch) then use Restart function as you wish.
If you triggered the graphic-restart issue then use Shutdown instead of Restart and Power on again. It is a good advice anyway not to hot-reboot between different OS's as some devices do not initialize properly.
If you triggered the graphic-restart issue and used Restart already and stuck in a black screen, calm down and do not panic. Just know you are on Clover bootloader and control it using keyboard:
If you were planning to boot OS X, blindly choose it using keyboard and hit Enter. Now press Ctrl+Shift+Eject to set the display to sleep then press any key and the display will return. [Eject key is mapped to Insert for VoodooPS2Controller.kext users]
If you were planning to boot Windows, blindly choose it using keyboard and hit Enter and wait until Windows boots completely. Now press Fn+F1 to set Windows to sleep, then press any key to wake up the machine and display will be back on.
- VGA port: This will not work at all. A workaround when projecting to VGA display is to buy and use (male)HDMI-to-(female)VGA adapter. This adapter however have to be Active and NOT Passive to work.
- Wake on LID open: Currently is not working but I believe this one can be fixed.
- Nvidia GPU (built-in): This will have to be disabled as OS X does not support Optimus technology.
- Nvidia GPU (external/ultrabay, for those who have it): This will have to be removed before using OS X. It was possible to boot with this GPU and the built-in Nvidia GPU without Intel GPU like it is possible in Windows / Linux. However, there are issues prevents configuring those Nvidia GPUs correctly. There is a work started in this thread to try booting OS X with this graphics configuration but the work is in very early stage and seem halt as well as the interest of the community is quiet low for this regard.
- [Sierra 10.12 ONLY] Keyboard Issues: This is not specific to Y510p but a general Sierra problem. Apple introduced a lot of changes for keyboard in the latest update 10.12 resulted in the following problems:
- Controlling volume and brightness using FN+Arrows is no longer functioning
- Caps-Lock is unreliable. I'm using SmartTouchpad kext and I find Caps-Lock works now by double pressing the key. I.e. double pressing Caps-Lock turn it on and another double press turn it off. Not sure if VoodooPS2Controller work the same now.
- Karabiner is not functioning anymore. The developer is aware and is currently developing the next generation of his software called Karabiner-Element.
2. Preparing a Partition for OS X
3. Increasing EFI Partition Size
4. Preparing OS X USB Installer
5. Installing OS X
6. Post Installation
Once logged in, you will have a working system with full resolution 1920x1080 but with glitches and only 7MB (check Apple-Menu > About This Mac) which makes the experience awful. Also no Sound, no WiFi, no Brightness Control, no Battery Management, no Sleep, and more. Follow the steps below to fix most of the issues and have a better working system.
Many of these steps will require DSDT/SSDT patching to get things working and unfortunately it is wrong for one to use patched tables of another one so an easy way to patch tables was needed. Our forum member intruder16 came out with a brilliant tool to automatically patch the tables for us which made the installation process very easy for a lot of users.
As with everything, there will always be updates and new better ways to do things. Recently, there were some work initiated by the infamous Rehabman to revolutionize the DSDT/SSDT patching process in what is called SSDT-HACK. This method work by creating some patches through Clover's config.plist and using additional SSDT's to complement the native DSDT and SSDT's without touching them. This mean, using SSDT-HACK method allow us to share the same files without worry and no need to extract the native tables and patch them anymore. I have adapted this method and prepared the files to use which are already included in the CLOVER zip in the downloads section.
So here's a summarization of what to do to fix everything:
- Have the CLOVER zip (attached in Downloads section) unzipped into EFI folder of your EFI partition. This will ensure you have the proper config.plist (including all kexts & acpi hot-patches among other important settings) in addition to the SSDT-HACK tables.
- Install all recent versions of the following kexts (links in Downloads section) in /S/L/E using EasyKext Utility:
- Get native Audio by fixing AppleHDA. Go to this page and follow the instructions.
- Done !
Note: The rest of this guide contain a lot of details about the post installation process for those who want to understand and learn. If you read on, you don't need to apply anything there as it will be already done and you may break things. Moreover, the some of the information given below might be outdated (newer patches are found or additional patches are needed). I was about to remove all that to keep the guide up-to-date but I thought to keep the whole thing FOR REFERENCE ONLY.
6.3 Ethernet (LAN)
6.6 Proper CPU Power Management
6.9 Battery Management
6.10 Keyboard and Touchpad
6.11 Enabling SSD TRIM
6.12 USB 3.0
Links & Downloads
Sfairat, Mirone, intruder16, useletters, Rehabman, Mieze, vusun123, EMlyDinEsH, many more ....