Jump to content

Help: Fixing Lenovo Y510p Nvidia GT 755M on OS X Yosemite 10.10.2


ahmed_ais
 Share

169 posts in this topic

Recommended Posts

eDP + nVidia is hard very hard same on my system.

your issue is eDP with nVidia , not about SLi nVidia.

if your system is LVDS i think it work perfect. dGPU for internal Display, untrabay GPU for external display.

 

Unfortunately, I made myself so sure that it is eDP:

46c57bdb9dc3b59a.png

 

I have also checked your topic here about eDP and K1100M and I hope you get proper help for your issue. But our status is so far far away than yours as we don't have QE/CI yet no matter what we tried. Do you suggest anything I could try? Thanks.

Link to comment
Share on other sites

Unfortunately, I made myself so sure that it is eDP:

46c57bdb9dc3b59a.png

 

I have also checked your topic here about eDP and K1100M and I hope you get proper help for your issue. But our status is so far far away than yours as we don't have QE/CI yet no matter what we tried. Do you suggest anything I could try? Thanks.

try this : boot with defaut dsdt ssdt --> got black screen -> use share screen or teamview to check ---> i think is QE/CI but no display plug in <----- because display don't have power aux <---- inject aux ---> got full QE/CI but dark screen.

 

thanks for your ioreg of real mac on this topic.

i think we need inject display for break this issue.

Link to comment
Share on other sites

try this : boot with defaut dsdt ssdt --> got black screen -> use share screen or teamview to check ---> i think is QE/CI but no display plug in <----- because display don't have power aux <---- inject aux ---> got full QE/CI but dark screen

When I try booting with native dsdt/ssdt it does not boot at all (not black screen but stuck) unless I set nv_disable=1. I believe the first step is to figure out how to boot without that flag.

Link to comment
Share on other sites

  • 2 weeks later...

oh i see some comment was lost

 

have any news?  @ahmed_ais

 

Yea that's unfortunate.

 

In summary, I tried to make EFI strings for both cards as you suggested; the internal at PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0) and the external at PciRoot(0x0)/Pci(0x7,0x0)/Pci(0x0,0x0) and used the resulting hex through Clover but it changed nothing (i.e, I still can only boot with nv_disable=1 with or without the web driver, no QE/CI, and display is not defined as built-in).

 

While preparing the EFI strings I failed to create the NVCAP strings using NVCAP maker and I don't know why but the tool did not produce any code when I select either roms for the built-in or external gpus so I set NVCAP to one of the default options available.

 

Here you will find both the EFI string plist and the roms for both gpus in case you might want to try calculating NVCAP.

Link to comment
Share on other sites

 

Yea that's unfortunate.

 

In summary, I tried to make EFI strings for both cards as you suggested; the internal at PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0) and the external at PciRoot(0x0)/Pci(0x7,0x0)/Pci(0x0,0x0) and used the resulting hex through Clover but it changed nothing (i.e, I still can only boot with nv_disable=1 with or without the web driver, no QE/CI, and display is not defined as built-in).

 

While preparing the EFI strings I failed to create the NVCAP strings using NVCAP maker and I don't know why but the tool did not produce any code when I select either roms for the built-in or external gpus so I set NVCAP to one of the default options available.

 

Here you will find both the EFI string plist and the roms for both gpus in case you might want to try calculating NVCAP.

hmm....

+ my idea efi string for enable dual VGA. not for enable QE/CI

 

when enable dual VGA (without SLi) -> next issue is eDP + nVidia

 

about without nv_disable and QE/CI 

 

try this efi with out nv_disable https://dl.dropboxusercontent.com/content_link/Rpgoo4ipM09Ji9ZdLAQeedVRATAqQqQdyuK2PVG3uc42CuVeO2UEpEbXLKYoObLg/file?dl=1

display can turn on with blacklight but may be no signal (dard screen)

 

eDP need : AUX + hotplug + signal link . 

AUX and hotplu was inject on efi

signal link ----- you can read the real retima mac ioreg... i'm try but not work, may be your system can be work.

Link to comment
Share on other sites

hmm....

+ my idea efi string for enable dual VGA. not for enable QE/CI

 

Would you clarify what you mean by "enabling"? Do you mean booting with both cards on without nv_disable? because, at the moment, I can boot and see both GPUs in IOREG but of course with nv_disable=1 so drivers are not initialized.

 

This is from a previous setup (as I'm using Windows now):

Card1.png

 

about without nv_disable and QE/CI 

 

try this efi with out nv_disable https://dl.dropboxusercontent.com/content_link/Rpgoo4ipM09Ji9ZdLAQeedVRATAqQqQdyuK2PVG3uc42CuVeO2UEpEbXLKYoObLg/file?dl=1

display can turn on with blacklight but may be no signal (dard screen)

 

File not found, kindly update the link.

 

Thanks

Link to comment
Share on other sites

Would you clarify what you mean by "enabling"? Do you mean booting with both cards on without nv_disable? because, at the moment, I can boot and see both GPUs in IOREG but of course with nv_disable=1 so drivers are not initialized.

 

This is from a previous setup (as I'm using Windows now):

Card1.png

 

 

File not found, kindly update the link.

 

Thanks

your "enable" is false.

false on fakeID of nvidia. you can see vendor id : 0x0FE4 <---- that's device iD , is not vendor id.

it's mean NVDA kext neva load same as nv_disable=1;

 

file:

EFI_STRING.plist.zip

Link to comment
Share on other sites

your "enable" is false.

false on fakeID of nvidia. you can see vendor id : 0x0FE4 <---- that's device iD , is not vendor id.

it's mean NVDA kext neva load same as nv_disable=1;

 

Yea I agree of course, that screenshot was taken at the time I was still learning when I was trying things without knowledge and it seems I mistakenly swapped the device and vendor IDs while attempting FakeID.

 

I have applied the EFI String you posted (without nv_disable flag) and the boot process stuck at a point without reboot or KP. Here is the final screen before it stop: http://i.imgur.com/mpUzW5w.jpg. I think this is where the graphics should start but it does not, right?

Link to comment
Share on other sites

Yea I agree of course, that screenshot was taken at the time I was still learning when I was trying things without knowledge and it seems I mistakenly swapped the device and vendor IDs while attempting FakeID.

 

I have applied the EFI String you posted (without nv_disable flag) and the boot process stuck at a point without reboot or KP. Here is the final screen before it stop: http://i.imgur.com/mpUzW5w.jpg. I think this is where the graphics should start but it does not, right?

+ that's all card was load kext.

+ nv_disable=1 is injject for all card

+ wrong fakeID is same as nv_disable =1

 

----> want inject only primary card ----> fake worng for ultrabay ---> try this string:

EFI_STRING 2.plist.zip

Link to comment
Share on other sites

use efi string 2 + nv_disable=1

and save ioreg send to me. may by ....pci....7/...... is wrong way 

 

The ioreg is attached, thanks.

 

EDIT:

  • I can see that the external GPU is not affected at all with the injection. Isn't this what you wanted to achieve?
  • I tried the web driver to see if there is any difference. Booting (without nv_disable and with nvda_drv) halt after loading the driver but it does not reboot or KB. Booting (with nv_disable and with nvda_drv) reach desktop but with glitchy graphics as expected although I feel the desktop experience is a bit better with the web drivers.
  • I'm going to see if there a way to disable the external GPU via ACPI. 

efi_str2-nv_disable_1.ioreg.zip

Link to comment
Share on other sites

 

The ioreg is attached, thanks.

 

EDIT:

  • I can see that the external GPU is not affected at all with the injection. Isn't this what you wanted to achieve?
  • I tried the web driver to see if there is any difference. Booting (without nv_disable and with nvda_drv) halt after loading the driver but it does not reboot or KB. Booting (with nv_disable and with nvda_drv) reach desktop but with glitchy graphics as expected although I feel the desktop experience is a bit better with the web drivers.
  • I'm going to see if there a way to disable the external GPU via ACPI. 

 

hm...

use ubuntu live -> terminal -> use comand : " lshw -class display " -> copy and upload result

 

and about disable Device : try to use _STA method.

 

on ssdt6 i insert _STA method in to PEGP1/PEGP and return Zero like this:

 

Screen%20Shot%202016-06-13%20at%206.45.4

 

on ACPI Document say on 6.3.7 _STA (Status) (page number 323): http://www.uefi.org/sites/default/files/resources/ACPI_5_1release.pdf

 

 

OSPM evaluates the _STA object before it evaluates a device _INI method....

If bit 0 is cleared, then bit 1 must also be cleared (in other words, a device that is not present cannot be enabled)....

SSDT-6.zip

Link to comment
Share on other sites

use ubuntu live -> terminal -> use comand : " lshw -class display " -> copy and upload result

 

Here's the result:

root@kubuntu:/home/kubuntu# lshw -class display
  *-display               
       description: VGA compatible controller
       product: GK107M [GeForce GT 755M]
       vendor: NVIDIA Corporation
       physical id: 0
       bus info: pci@0000:01:00.0
       version: a1
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
       configuration: driver=nouveau latency=0
       resources: irq:30 memory:d3000000-d3ffffff memory:a0000000-afffffff memory:b0000000-b1ffffff ioport:5000(size=128) memory:d4080000-d40fffff
  *-display
       description: 3D controller
       product: GK107M [GeForce GT 755M]
       vendor: NVIDIA Corporation
       physical id: 0
       bus info: pci@0000:07:00.0
       version: a1
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list
       configuration: driver=nouveau latency=0
       resources: irq:31 memory:d2000000-d2ffffff memory:c0000000-cfffffff memory:d0000000-d1ffffff ioport:4000(size=128)
root@kubuntu:/home/kubuntu#

I will check the method you mentioned and see how it goes then feedback here.

 

Thanks.

Link to comment
Share on other sites

Here's the result:

root@kubuntu:/home/kubuntu# lshw -class display
  *-display               
       description: VGA compatible controller
       product: GK107M [GeForce GT 755M]
       vendor: NVIDIA Corporation
       physical id: 0
       bus info: pci@0000:01:00.0
       version: a1
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
       configuration: driver=nouveau latency=0
       resources: irq:30 memory:d3000000-d3ffffff memory:a0000000-afffffff memory:b0000000-b1ffffff ioport:5000(size=128) memory:d4080000-d40fffff
  *-display
       description: 3D controller
       product: GK107M [GeForce GT 755M]
       vendor: NVIDIA Corporation
       physical id: 0
       bus info: pci@0000:07:00.0
       version: a1
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list
       configuration: driver=nouveau latency=0
       resources: irq:31 memory:d2000000-d2ffffff memory:c0000000-cfffffff memory:d0000000-d1ffffff ioport:4000(size=128)
root@kubuntu:/home/kubuntu#

I will check the method you mentioned and see how it goes then feedback here.

 

Thanks.

... and ... dose it working ? 

Link to comment
Share on other sites

... and ... dose it working ? 

 

Not sure what you mean but if you are referring to the dual GPU under Linux then yes it does. Otherwise, if you are referring to disabling the external GPU via ACPI then your suggested method did not work unfortunately. I also tried the following (without a method) just after the _ADR method but again it did not work either and the external GPU is still loaded.

Name (_STA, Zero)
Link to comment
Share on other sites

  • 1 month later...

i have good news : eDP type 75HGz, and G-Syn can work on Mac. 

 

I take it you mean eDP that support 75Hz refresh rate or those equipped with G-Sync? It would be great news for other people but unfortunately not with Y510p since it's refresh rate max is 60 and it lack G-Sync. Thanks for the info though :)

Link to comment
Share on other sites

I take it you mean eDP that support 75Hz refresh rate or those equipped with G-Sync? It would be great news for other people but unfortunately not with Y510p since it's refresh rate max is 60 and it lack G-Sync. Thanks for the info though :)

have a next good news : i think eDP 60GHz can work on Mac, i'm trying change port-number for Display-A. my Display eDP M4800 can turn on BackLight but no singnal, because nVidia kext inject port-number 0 for Display A. But port-number 0 is empty -----> i'm trying change to other port number.

 

may be your eDP same my eDP. 

 

keep calm and Hackintosh on

  • Like 1
Link to comment
Share on other sites

have a next good news : i think eDP 60GHz can work on Mac, i'm trying change port-number for Display-A. my Display eDP M4800 can turn on BackLight but no singnal, because nVidia kext inject port-number 0 for Display A. But port-number 0 is empty -----> i'm trying change to other port number.

 

may be your eDP same my eDP. 

 

keep calm and Hackintosh on

 

It seem I forgot to post with the quote !

 

I wanted to say that I like the idea but I can't see how I may help. 

Link to comment
Share on other sites

  • 4 months later...

Hi!. I installed Web driver to OS X and I used VNC to check how card is recognised. While 2nd card is recongnised as it should, the first is called NVIDIA Chip Model with 256MB VRAM. Screen is seen as internal (to my surprise) with max resolution 1280x1024.

Hmm ... interesting ... I will try to make a test setup and see. Which macOS version are you on??

Link to comment
Share on other sites

Hmm ... interesting ... I will try to make a test setup and see. Which macOS version are you on??

I use the latest Sierra. So OS X is booting and 2nd card works out of box. There is problem with first card. Maybe we need to use EFI string or somewhat.

 

 

Wysłane z iPhone za pomocą Tapatalk

Link to comment
Share on other sites

I use the latest Sierra. So OS X is booting and 2nd card works out of box. There is problem with first card. Maybe we need to use EFI string or somewhat.

 

 

Wysłane z iPhone za pomocą Tapatalk

The second card used to work fine since Yosemite but the problem has always been getting the first one connected to the display and being recognized as built-in. My previous investigations led me to conclude that IGD (Intel Graphics Display) does not completely go out of the scene even with two dedicated GPUs are on. That is, IGD is the only graphics device directly connected to the display and while the two Nvidia GPUs are active IGD fades out but still responsible (alone) to deliver all the processed graphics to the display. This behavior may be fine in Windows and Linux as the driver knows how to deal with it ignoring that gateway (IGD) but it is not the case for macOS where this setup just does not exist (for real macs) and the driver is not aware of it.

 

So with 2 Nvidia GPUs --> IGD fades out (to be a gateway only) --> macOS see the 2 GPU's --> macOS cannot see the display (only a gateway) --> macOS assume the gateway is the display for the system (which is not exactly true) --> configurations for 1st Nvidia with display fails --> macOS does not work correctly graphics wise. 

 

This is all a theory and could be completely wrong (I hope). For that, I'm reading into how IGD work with Optimus (how the connections are designed). I wish if there were any technical manual for this type of gaming PCs where the details of the hardware are shown.

Link to comment
Share on other sites

 Share

×
×
  • Create New...