Jump to content
ahmed_ais

Guide for Installing OS X on Lenovo IdeaPad Y510p

1,395 posts in this topic

Recommended Posts

I boot with nvda_drv=1 Fake ID 0x10DE0FE4. Alternative Fake ID 0x10DE0FE9, are for GT 750M. For GT755M 0x10DE0FEA / 0x10DE0FCD. Video card fan starts, feels the heat. I tried with the original nvidia driver, but it does not work, there is no difference

between drivers from the site and the drivers from the system. The system starts with Nvidia integrated video card.

 

My experience is 0mb or 7mb vram using either built-in drivers or web drivers. I tried different SMBIOS but nothing made any difference. I also can't boot without nv_disable=1 which supposedly disables nvidia but it doesn't. The flag nvda_drv=1 doesn't have any effect and I think it is not even for Clover. I haven't tried any FakeID yet.

Share this post


Link to post
Share on other sites
Advertisement

Hello, everyone,

Ahmed Salah AIS, that is a great guide you've written.

I've updated to 10.10 a week or so ago (didn't have enough free time to try it earlier), and was able to fix everything quite fast. I only have one problem (had it with previous 10.9 installation), in 75% of boots clover hangs on "+++++" right before starting loading the OS, and I have to reboot to windows and then try launching OS X once again. Didn't you have such a problem? I'm gonna take a look at clover debug logs sometime later.

Also, how did you manage to boot into os x with both NVidia GPUs? Do you boot it in safe mode? I'm interested in it 'cause I'm a bit tired of taking off the ultrabay gpu and putting it back.. When I try to boot with both GPUs, verbose log is fine, though it reboots just before showing the login screen. What are the downsides of it?

Also, if you want to disable nvidia GPU whatsoever, you can use the SSDT I've once provided in the previous topic.

Share this post


Link to post
Share on other sites

Hello, everyone,

Ahmed Salah AIS, that is a great guide you've written.

 

Hi, Sfairat.

Thanks for this, and thanks for passing by. You are one of those guys that helped me when I didn't even had a bootable installation!

 

I've updated to 10.10 a week or so ago (didn't have enough free time to try it earlier), and was able to fix everything quite fast. I only have one problem (had it with previous 10.9 installation), in 75% of boots clover hangs on "+++++" right before starting loading the OS, and I have to reboot to windows and then try launching OS X once again. Didn't you have such a problem? I'm gonna take a look at clover debug logs sometime later.

I stopped getting such problem once I fixed the Clover version and most of its configurations, efi images, etc. It is not a scientific approach and I have not made any research for the reason to get these but certain configuration can lead to this. The steps I listed here in the guide will not result in this, I hope.

 

Also, how did you manage to boot into os x with both NVidia GPUs? Do you boot it in safe mode? I'm interested in it 'cause I'm a bit tired of taking off the ultrabay gpu and putting it back.. When I try to boot with both GPUs, verbose log is fine, though it reboots just before showing the login screen. What are the downsides of it?

I do not need NVIDIA GPU with OS X and Intel is doing just fine. But my problem is exactly as you say, swapping ultrabay in/out. When I tried this I booted normally not in safe mode but I had not had much time with it to try fix things. I always wondered how Intel card disappear completely when we boot Windows with ultrabay card in and kept asking what is attached to the display? How the optimus card gets itself attached to display? I guess this is wrong and the correct is the other way around. The ultrabay PCI-E seems to be connected to the display and not the optimus. So while the optimus card will not work in OS X as Apple has different propitiatory approach to get gpu switching works, connecting ultrabay card is totally different thing and COULD really work! this is a theory for now thought!

 

Back to you, if it suddenly reboots then you could try booting with/without injecting NVIDIA, injecting EDID, nv_disable=1 and nvda_drv=1 boot flags, or ACPI files (I think they are relevant as we have patch renamed GFX to IGPU at some point). I can't comment on the downsides now but can say my experience is not good so far. I couldn't get to have proper VRAM and the process broke loading some kexts (VoodooPs2Controller, VoodooHDA).

 

Also, if you want to disable nvidia GPU whatsoever, you can use the SSDT I've once provided in the previous topic.

I think it is included in the thread download section with other ACPI files as yours were the basis (the guide is still needs edits and I will give you and others the credit you all deserve). However, I received a comment from Rehabman at some point saying the SSDT for disabling optimus is 'an attempt but not working'. He said the method _OFF() have to be called in the SSDT to actually disable the card.

Share this post


Link to post
Share on other sites

Hello,

I think it is included in the thread download section with other ACPI files as yours were the basis (the guide is still needs edits and I will give you and others the credit you all deserve). However, I received a comment from Rehabman at some point saying the SSDT for disabling optimus is 'an attempt but not working'. He said the method _OFF() have to be called in the SSDT to actually disable the card.

Well, if you take a closer look at this ssdt, it consists of

\_SB.PCI0.PEG0.PEGP._DSM (Buffer (0x10)
{
/* 0000 */ 0xF8, 0xD8, 0x86, 0xA4, 0xDA, 0x0B, 0x1B, 0x47,
/* 0008 */ 0xA7, 0x2B, 0x60, 0x42, 0xA6, 0xB5, 0xBE, 0xE0
}, 0x0100, 0x1A, Buffer (0x04)
{
0x01, 0x00, 0x00, 0x03
})
If (One)
{
\_SB.PCI0.PEG0.PEGP._PS3 ()
}

If you look at _SB.PCI0.PEG0.PEGP._PS3 method in ssdt5, you'll find this

            If (LEqual (\_SB.PCI0.PEG0.PEGP.OMPR, 0x03))
            {
                \_SB.PCI0.PEG0.PEGP._OFF ()
                Store (One, DGOS)
                Store (0x02, \_SB.PCI0.PEG0.PEGP.OMPR)
            }

so, it calls _OFF method if OMPR is set to 3.

And, if you look at what _DSM does with the parameters provided in the call, you'll notice that one of the side-effects will be setting OMPR to 3. Looks like _DSM with these parameters makes some preparations needed to turn GPU off safely/in a proper way.

Also, in your guide you recommend to inject string into AirPortBrcm4360 > info.plist > IONameMatch. There's a bit more update-safe way. You can do Toleda's DSDT patch from here http://www.insanelymac.com/forum/topic/292542-airport-pcie-half-mini/ , there's only one difference: in the original patch, properties are injected into RP04. In our DSDT, RP04 is wired LAN, and wireless LAN is RP05, so you have to inject PXSX into it, or you'll break both LAN and WLAN.

The ultrabay PCI-E seems to be connected to the display and not the optimus.

This is highly unlikely. In windows, NVidia reports that display is connected to GPU#0, which is not ultrabay GPU. Maybe I'll have more time to get it working on the weekend.

 

I stopped getting such problem once I fixed the Clover version and most of its configurations, efi images, etc. It is not a scientific approach and I have not made any research for the reason to get these but certain configuration can lead to this. The steps I listed here in the guide will not result in this, I hope.

I think that this is related to DSDT patching, though the only patch I have is FixRegions. I'm gonna try Clover's debugLog/have a closer look at my dsdts.

Share this post


Link to post
Share on other sites

If i copy yours kext from download in EFI / CLOVER / KEXTS / 10.10, is required to delete kext identical from System / Library / EXTENSIONS? From what I know it is not good to have two kext the same on a system. I managed to make it myself, but from what I noticed embarks on a long time, compared to 10.9.

Thanks for your hard work.

Share this post


Link to post
Share on other sites

Hi there .

 

Yes, because starts automatically with integrated video card(nvidia). I can start without nv_disable=1, but I have 0 mb. When i entered Fake ID, there was no difference.

Fake ID https://github.com/Clover-EFI-Bootloader/clover/blob/master/rEFIt_UEFI/Platform/nvidia.c 

 
I think is good 

 

First :-

Are you have a ULTRABAY card ?

-------------------------------------------------------------------------------------------
Secondly :-

 

This page can't be found , i think it removed Because this Fake ID don't work .

 

-------------------------------------------------------------------------------------------

Thirdly :-

 

What about this Page ?

 

http://forum.techinferno.com/lenovo-ibm/4668-lenovo-y410p-y510p-unlocked-bios-wlan-whitelist-mod-vbios-mod.html

 

------------------------------------------------------------------------------------------------------------------------------------------

Fourthly :-

 

I'm haven't ULTRABAY card , Can i make the PCi card is the main card ?

 

-----------------------------------------------------------------------------------

Fifthly :- 

 

I'm haven't Windows i was deleted it for 3 months , Now i'm have the mac Only .
i want the laptop Boot on mac Directly what should i do ? 

 

---------

Sorry for my bad English :D

Thanks 

Share this post


Link to post
Share on other sites

Hello,

Well, if you take a closer look at this ssdt, it consists of

\_SB.PCI0.PEG0.PEGP._DSM (Buffer (0x10)
{
/* 0000 */ 0xF8, 0xD8, 0x86, 0xA4, 0xDA, 0x0B, 0x1B, 0x47,
/* 0008 */ 0xA7, 0x2B, 0x60, 0x42, 0xA6, 0xB5, 0xBE, 0xE0
}, 0x0100, 0x1A, Buffer (0x04)
{
0x01, 0x00, 0x00, 0x03
})
If (One)
{
\_SB.PCI0.PEG0.PEGP._PS3 ()
}
If you look at _SB.PCI0.PEG0.PEGP._PS3 method in ssdt5, you'll find this

            If (LEqual (\_SB.PCI0.PEG0.PEGP.OMPR, 0x03))
            {
                \_SB.PCI0.PEG0.PEGP._OFF ()
                Store (One, DGOS)
                Store (0x02, \_SB.PCI0.PEG0.PEGP.OMPR)
            }
so, it calls _OFF method if OMPR is set to 3.

And, if you look at what _DSM does with the parameters provided in the call, you'll notice that one of the side-effects will be setting OMPR to 3. Looks like _DSM with these parameters makes some preparations needed to turn GPU off safely/in a proper way.

 

Thanks for this, I got the mentioned feedback long ago and I didn't have time to investigate it. Maybe Rehabman didn't look through all SSDts. I will look though it again.

 

 

Also, in your guide you recommend to inject string into AirPortBrcm4360 > info.plist > IONameMatch. There's a bit more update-safe way. You can do Toleda's DSDT patch from here http://www.insanelymac.com/forum/topic/292542-airport-pcie-half-mini/ , there's only one difference: in the original patch, properties are injected into RP04. In our DSDT, RP04 is wired LAN, and wireless LAN is RP05, so you have to inject PXSX into it, or you'll break both LAN and WLAN.

The way I do, though not update-safe, was the only way at one point to get it working I guess. I never looked back but to get the new bits to patch. I will look into that again, thanks!

 

 

This is highly unlikely. In windows, NVidia reports that display is connected to GPU#0, which is not ultrabay GPU. Maybe I'll have more time to get it working on the weekend.

I'm not sure of anything yet, I was highly influenced by those who say optimus card will NEVER work as it is not attached to display. But again, the ultrabay serves GPU, SSD, or DVD so it doesn't make any sense to be attached to display!

 

The built-in NVIDIA card must be connected to display somehow, and the bios must have a way to disable Intel.

 

 

I think that this is related to DSDT patching, though the only patch I have is FixRegions. I'm gonna try Clover's debugLog/have a closer look at my dsdts.

Before you dig into that if you think it is related to DSDT, try boot without them. If they are faulty you should be able to boot just fine.

Share this post


Link to post
Share on other sites

If i copy yours kext from download in EFI / CLOVER / KEXTS / 10.10, is required to delete kext identical from System / Library / EXTENSIONS? From what I know it is not good to have two kext the same on a system. I managed to make it myself, but from what I noticed embarks on a long time, compared to 10.9.

Thanks for your hard work.

AFAIK, it is not required to delete from /S/L/E. The kexts in /S/L/E are not used actually when you boot OS X but only the cache that OS X made out of them. When using Clover, it will override the kext cache with what it have (either custom kexts or on-the-fly kexts patches) so there should be no problem.

Share this post


Link to post
Share on other sites

I am going to attempt this with the exception that I'm going to go for Legacy Boot instead of UEFI. I have two Y510Ps in front of me, one of them already partitioned, the other one has a Mavericks VM. Wish me luck. I'll post updates.

 

 

EDIT: By the way, thank you @AhmedSalahAIS for posting this tutorial on how to learn to build a hackintosh.

 

EDIT 2: There's this guide on flashing our BIOSes to a hacked up v3.05 that removes the internal wireless card whitelist (so you can install an internal wlan that works in OS X) and may also be helpful in disabling the Internal GPU with both Discrete GPUs installed (although I can't confirm this yet). Here is the link: http://forum.techinferno.com/lenovo-ibm/4668-lenovo-y410p-y510p-unlocked-bios-wlan-whitelist-mod-vbios-mod.html

Share this post


Link to post
Share on other sites

I am going to attempt this with the exception that I'm going to go for Legacy Boot instead of UEFI. I have two Y510Ps in front of me, one of them already partitioned, the other one has a Mavericks VM. Wish me luck. I'll post updates.

 

 

EDIT: By the way, thank you @AhmedSalahAIS for posting this tutorial on how to learn to build a hackintosh.

Good luck, and thanks!

 

 

EDIT 2: There's this guide on flashing our BIOSes to a hacked up v3.05 that removes the internal wireless card whitelist (so you can install an internal wlan that works in OS X) and may also be helpful in disabling the Internal GPU with both Discrete GPUs installed (although I can't confirm this yet). Here is the link: http://forum.techinferno.com/lenovo-ibm/4668-lenovo-y410p-y510p-unlocked-bios-wlan-whitelist-mod-vbios-mod.html

I would vote against flashing modded BIOS if only for WiFi white-list removal. After all, one will NEED a WiFi card supported by OS X so i would prefer to buy a WiFi card IN the white-list AND supported by OS X AND keep BIOS untouched. But in case of managing the active graphics mode, this may be a bonus.

Share this post


Link to post
Share on other sites

Hi i Pmed you earlier this is my efi. 

 

 

Hi, sorry again for the delay. First of all, I clearly stated it in the guide to use CloverEFI r2999. Other versions may and should work but later versions are getting more complicated which makes it harder to configure for new users. You are using CloverEFI r3129 so expect things to be different than I put in my guide. Now you have 2 options:

  1. The easy way (recommended): delete your Clover folder inside EFI and download r2999 in addition to all the mentioned files in the guide. You then can download the config.plist so nothing to edit (I would prefer if you skim through configuring Clover steps in the guide to learn).
  2. The hard way: keep using your current version and fight to get it working. All your problems lies in config.plist which is improperly configured. As a start, take a look at the boot arguments section in config.plist:

     

    Screen_Shot_2015_02_07_at_15_01_10.png

     

    AFAIK, those keys with hash (#) are not executed so the top red box is for a commented key. The lower red box, however, contains the actual key for Arguments and this is what Clover will execute. Therefor, the boot flags on the top one are useless and the real deal should be in the lower one. There may be of course other problems with this config.plist file that you would have to fix.

Share this post


Link to post
Share on other sites

For those of you who dual boot Windows and Yosemite, I modified ios7 theme, a CloverEFI theme by the forum members Ukr55 & Winlog, to suite our Laptop. Take a look:

 

screenshot.png

 

All credit goes to the authors, I only added Lenovo banner and replaced Mac icon by Yosemite icon. Link in Downloads section at first post!

Share this post


Link to post
Share on other sites

For those of you who dual boot Windows and Yosemite, I modified ios7 theme, a CloverEFI theme by the forum members Ukr55 & Winlog, to suite our Laptop. Take a look:

 

screenshot.png

 

All credit goes to the authors, I only added Lenovo banner and replaced Mac icon by Yosemite icon. Link in Downloads section at first post!

 

What about this two backgrounds

BG.zip

post-589594-0-85255000-1423427982_thumb.png

post-589594-0-92307700-1423499280_thumb.png

Share this post


Link to post
Share on other sites

Settings are well made, because I have not LAN connection,sleep. I put the kext from 10.9 and it works, but when I upload on site, laptop restarts. config.plist is in the download section at you. I noticed that did not have checked slide = 0

image.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.pngimage.png

Share this post


Link to post
Share on other sites

Settings are well made, because I have not LAN connection,sleep. I put the kext from 10.9 and it works, but when I upload on site, laptop restarts. config.plist is in the download section at you. I noticed that did not have checked slide = 0

I am sorry but I did not get exactly your point. The boot arg slide=0 is not mandatory as it fixes compatibility issues that may happen on some systems and prevent them to boot. Without this argument I can boot just fine so I did not need it and did not add it. If it fixes a problem for you then use it of course! also I would be glad if you share the problem and how this argument fixes it.

 

Regarding the LAN, I cannot say much about it as I rarely use it (always on WiFi). That is why I have not made any comment about it in the guide though I linked a working kext for Ethernet in Downloads section (a kext I do not remember where I got it from but it basically works). If there is a problem with that kext or you have a better one, it would be nice if you share your thoughts and I can update the guide with the better kext you provide.

Share this post


Link to post
Share on other sites

I am sorry but I did not get exactly your point. The boot arg slide=0 is not mandatory as it fixes compatibility issues that may happen on some systems and prevent them to boot. Without this argument I can boot just fine so I did not need it and did not add it. If it fixes a problem for you then use it of course! also I would be glad if you share the problem and how this argument fixes it.

 

Regarding the LAN, I cannot say much about it as I rarely use it (always on WiFi). That is why I have not made any comment about it in the guide though I linked a working kext for Ethernet in Downloads section (a kext I do not remember where I got it from but it basically works). If there is a problem with that kext or you have a better one, it would be nice if you share your thoughts and I can update the guide with the better kext you provide.

I solved the LAN, I put kext from 10.9 in S/L/E, I rebuilt permission and then I copied in clover/kext/10.10. Sleep does not work, how can I make it? If enter in sleep, laptop restarts. The settings i have made in clover configurator are good? In section, the CPU should not write frequency, Bus Speed, Latency? 

Share this post


Link to post
Share on other sites

I solved the LAN, I put kext from 10.9 in S/L/E, I rebuilt permission and then I copied in clover/kext/10.10. Sleep does not work, how can I make it? If enter in sleep, laptop restarts. The settings i have made in clover configurator are good? In section, the CPU should not write frequency, Bus Speed, Latency? 

 

Okay. First it is good you got Ethernet sorted out. One of the common reasons for hackintosh to fail while attempting sleep is forgetting to disable the option "Wake for network access" in System Preferences > Energy Saver.

 

Screen_Shot_2015_02_08_at_23_47_42.png

 

Disable it and try again. If it still does not work, make sure to follow the steps in the guide (or use the supplied DSDT and SSDTs in Downloads if you do not know how to correctly patch ACPI files). If after patching the tables or using mine you still have a problem, post the output of this Terminal command:

pmset -g assertions

Share this post


Link to post
Share on other sites

:))) I unchecked slide=0 and no longer boots. Thanks for the information. I will try tomorrow.

 

I do not know exactly how you configured Clover but since it only works with this argument then use it right away!. Though my Y510p runs perfectly fine without it.

Share this post


Link to post
Share on other sites

I solved and now sleep function works. The problem was "Wake for network access". I have a problem in Mavericks, the processor does not load to maximum. In Yosemite I did not installed Final Cut, because the project is in Mavericks :) . Here http://www.insanelymac.com/forum/topic/304492-cpu-does-not-load-to-a-maximum-100/ I made topic, please take a look.

Share this post


Link to post
Share on other sites

I solved and now sleep function works. The problem was "Wake for network access". I have a problem in Mavericks, the processor does not load to maximum. In Yosemite I did not installed Final Cut, because the project is in Mavericks :) . Here http://www.insanelymac.com/forum/topic/304492-cpu-does-not-load-to-a-maximum-100/ I made topic, please take a look.

 

Good. Regarding your problem with Final Cut, I made a small comment there.

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.

×