Jump to content

[SOLVED] Asus ROG laptops with Kepler cards not detecting DP-2 connected LCD display


gazzacbr
 Share

165 posts in this topic

Recommended Posts

The NVCAP string can separated 20 hexadecimal parts, like 0x04, 0x00,...... The first part 0x04 is 0100 in binary format, means single video card slot. The 7th part 0x01 is the primary card ports and the 9th part 0x02 is the secondary card ports. The 7th part 0x01 is 0001 and the the 9th part is 0010, each bit means one port, 0 is off, 1 is on. According the information offered before, the 1st bit mans TV port, the 2nd bit means HDMI port, the 3rd bit means VGA port, the 4th bit means DP port. So the primary ports 7th part 0x01 means the DP port is on, the secondary ports 9th part 0x02 means the VGA port is on.

 

According the @Styrian's opinion, the NVCAP of mobile kepler card can do nothing on OSX, so NVCAP is useless for solving the problem.

 

Excellent information!!

Link to comment
Share on other sites

@vislo4

 

Thanks for the exellent information.

 

Apple is using for the iMacs 13,1/13,2/14,2 these same values for NVCAP: 0500 0000 0000 0100 0600 0000 0000 000f 0000 0000

 

The MBP 9,1 and 10,1 have these values for NVCAP:                                   0501 0000 0000 0100 0600 0000 0000 000f 0000 0000

 

The MBP 7,1 with only Fermi gfx has these values for NVCAP:                     0501 0000 0000 0100 0600 0000 0000 000e 0000 0000

 

Does anybody know the meaning of the with colors marked digits?

 

In any case it seems to be important to add @0,fboffset data 00000200 in an EFI String for internal laptop display, to get it dedected as internal on port 0 by OSX.

 

A good source for getting dumps of Apple hardware is this one: http://tdev.me/2010/12/apple-hardware-dumps/

 

An Ioreg.rtf file of an iMac 14,2 I have attached below. I have removed parts of the platformUUID, board-ID and SerialNr., which I don´t give away.

 

On the L702x 3D (fully working display EDID) I have added nearly all properties for AAPL00 and @0,...... from Ioreg of MBP 7,1 with the for it set values. This seems to work fine with the GT555m. Display mirroring is also working with the HDMI port. But I know it by myself, Kepler cards are other things.

 

I believe, that we are with an EFI-String not far way from getting the Kepler cards working. But we have to find some of the properties and values, we have to set, perhaps with a healthy mix of properties and values (Laptop and OSX). Even trying to set the Apple NVCAP (or some of it´s values) seems to make sence on mobile devices.

 

Have fun.

iMac 14,2.rtf.zip

Link to comment
Share on other sites

@Styrian, I noticed the EFI string you gave me has the NVCAP value of the MBP 9,1 that you wrote in the previous post. Can you make a new EFI string based on the previous one without touching anything but adding the NVCAP from my original VBIOS rom?

 

By the way, you have a PM

Link to comment
Share on other sites

I'm very curious about the different type of Asus G750. I found that Asus G750JX can run OSX Marvericks perfectly. The link below:

http://rog.asus.com/forum/showthread.php?39406-ASUS-G750JX-OSX-Mavericks-INSTALL-GUIDE

 

I think the difference is the screen, HD 1080p screen works and 3D 120Hz screen doesn't work. Is it right? 


I'm very curious about the different type of Asus G750. I found that Asus G750JX can run OSX Marvericks perfectly. The link below:

http://rog.asus.com/forum/showthread.php?39406-ASUS-G750JX-OSX-Mavericks-INSTALL-GUIDE

 

I think the difference is the screen, HD 1080p screen works and 3D 120Hz screen doesn't work. Is it right? 

I think 3D screen uses the DP port and internal 1080p screen uses the LVDS port, Is it right?

 

Link to comment
Share on other sites

I'm very curious about the different type of Asus G750. I found that Asus G750JX can run OSX Marvericks perfectly. The link below:

http://rog.asus.com/forum/showthread.php?39406-ASUS-G750JX-OSX-Mavericks-INSTALL-GUIDE

 

I think the difference is the screen, HD 1080p screen works and 3D 120Hz screen doesn't work. Is it right? 

I think 3D screen uses the DP port and internal 1080p screen uses the LVDS port, Is it right?

I find that the screen of Asus G55VW-DH71 in United States is LP156WF1-TLB2(LGD02D9). This screen is not 3D screen, the specification of this screen is blow:

http://www.panelook.com/LP156WF1-TLB2_LG%20Display_15.6_LCM_parameter_12286.html

The signal category is LVDS.

 

Link to comment
Share on other sites

I find that the screen of Asus G55VW-DH71 in United States is LP156WF1-TLB2(LGD02D9). This screen is not 3D screen, the specification of this screen is blow:

http://www.panelook.com/LP156WF1-TLB2_LG%20Display_15.6_LCM_parameter_12286.html

The signal category is LVDS.

 

Don't get mad searching for data. it doesn't matter which type of screen your notebook uses. Is just that if is a 120hz display, uses displayport wich untill know, we can't manage to fire it first to osx recognizes it.

Link to comment
Share on other sites

Don't get mad searching for data. it doesn't matter which type of screen your notebook uses. Is just that if is a 120hz display, uses displayport wich untill know, we can't manage to fire it first to osx recognizes it.

Maybe I'm confused about the conception of screen and display.

I have bought a pcs of second-hand G55VW-DH71 from American Amazon, which has a 1920x1080 screen. I will get the laptop few days later. I have checked the max. refresh rate of the screen is 60Hz. I'm not sure the port is LVDS or not. Do you think the graphics card and screen of my laptop can work on OSX?

ps. I have bought BCM94325HMB wifi+BT4.0 card to change the AR9485WB-EG card. Do you have the AppleHDA.kext for Via vt1802p?

Link to comment
Share on other sites

I've made some progress. Well, depends of the point of view indeed. But I've reached the desktop with NVDAResman.kext IN and no extra parameters in org.Chameleon.boot.plist but basics. What happens is that desktop is fully loaded when we think is not. I've just enabled the screen sharing through VNC and once the system seems to be hanged I conneted my ipad to it using the Screens app (vnc connection) and managed to look in IOREGExplorer details. I found then that there are all of the 4 display connectors (being displayA@1, displayB@2, displayC@3 and display D@4) in GFX0. This is very useful because it proofs what I suspected a months ago: that this graphics card has 4 display outputs. The strange thing here is that all of the 4 outputs has display-cfg = ffffffff. I know I can give alternate values for display-cfg 0 and 1 in chameleon, but I wonder if display-cfg 3 and 4 can be indicated too. Maybe chameleon need to add this to its code to adapt itself to new graphics cards.

Curious thing is that you just can't find a display in system information. It just shows no display connected to it. Expected I think, but then I tried to connect the TV to my hackintosh through HDMI nor VGA but it keeps detecting no display. Another curious thing is that under system information there's no info about the graphics card but "NVIDIA chip model 256MB" meaning that we need to modify anything else (like the NVDAResman kext itself or any other) cause NVDAResman is loaded but it keeps not detecting the VRAM and the whole graphics card. Or maybe NVDAResman needs to detect a display to start working. I don´t know yet.

Now question: is there any other utility for Linux similar to IORegExplorer?? That would be amazing because we can then observe the corrects display-cfg data of the 4 outputs.
Below I attached some screenshots starting with my org.chameleon.boot.plist (to let you know that is really clean). Remember that NVDAResman is loaded.

.

post-898685-13881750360295_thumb.jpgpost-898685-138817512897_thumb.jpgpost-898685-13881752601517_thumb.jpgpost-898685-13881752727128_thumb.jpgpost-898685-13881752829988_thumb.jpgpost-898685-13881752931642_thumb.jpgpost-898685-13881753080827_thumb.jpg

Link to comment
Share on other sites

Now, following the tips which I detailed in this thread, I was able to get this information about my display:

Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 16384 x 16384

DP-2 connected primary 1920x1080+0+0 (0x283) normal (normal left inverted right x axis y axis) 382mm x 215mm
    Identifier: 0x282
    Timestamp:  16116
    Subpixel:   unknown
    Gamma:      1.0:1.0:1.0
    Brightness: 1.0
    Clones:    
    CRTC:       0
    CRTCs:      0 1 2 3
    Transform:  1.000000 0.000000 0.000000
                0.000000 1.000000 0.000000
                0.000000 0.000000 1.000000
               filter:
    Backlight: 100
        range: (0, 100)
    EDID:
        00ffffffffffff004ca3445000000000
        01140104952615780287f594574f8c27
        27505400000001010101010101010101
        0101010101015f3980dc703840403020
        35007ed71000001b0000000f00000000
        00000000003c9610fe00000000fe0053
        414d53554e470a2020202020000000fe
        004c544e3137334854303250303101ce
        02010400f25c80a07038404030203500
        7ed71000001b3d6680a0703840403020
        35007ed71000001b896f80a070384040
        302035007ed71000001b000000000000
        00000000000000000000000000000000
        00000000000000000000000000000000
        00000000000000000000000000000000
        00000000000000000000000000000029
    BorderDimensions: 4
        supported: 4
    Border: 0 0 0 0
        range: (0, 65535)
    SignalFormat: DisplayPort
        supported: DisplayPort
    ConnectorType: Panel
    ConnectorNumber: 0
    _ConnectorLocation: 0

VGA-0 disconnected (normal left inverted right x axis y axis)
    Identifier: 0x27e
    Timestamp:  16116
    Subpixel:   unknown
    Clones:    
    CRTCs:      0 1 2 3
    Transform:  1.000000 0.000000 0.000000
                0.000000 1.000000 0.000000
                0.000000 0.000000 1.000000
               filter:
    BorderDimensions: 4
        supported: 4
    Border: 0 0 0 0
        range: (0, 65535)
    SignalFormat: VGA
        supported: VGA
    ConnectorType: VGA
    ConnectorNumber: 1
    _ConnectorLocation: 1

HDMI-0 disconnected (normal left inverted right x axis y axis)
    Identifier: 0x280
    Timestamp:  16116
    Subpixel:   unknown
    Clones:    
    CRTCs:      0 1 2 3
    Transform:  1.000000 0.000000 0.000000
                0.000000 1.000000 0.000000
                0.000000 0.000000 1.000000
               filter:
    BorderDimensions: 4
        supported: 4
    Border: 0 0 0 0
        range: (0, 65535)
    SignalFormat: TMDS
        supported: TMDS
    ConnectorType: HDMI
    ConnectorNumber: 2
    _ConnectorLocation: 2

DP-0 disconnected (normal left inverted right x axis y axis)
    Identifier: 0x27f
    Timestamp:  16116
    Subpixel:   unknown
    Clones:    
    CRTCs:      0 1 2 3
    Transform:  1.000000 0.000000 0.000000
                0.000000 1.000000 0.000000
                0.000000 0.000000 1.000000
               filter:
    BorderDimensions: 4
        supported: 4
    Border: 0 0 0 0
        range: (0, 65535)
    SignalFormat: TMDS
        supported: TMDS
    ConnectorType: DisplayPort
    ConnectorNumber: 3
    _ConnectorLocation: 3

DP-1 disconnected (normal left inverted right x axis y axis)
    Identifier: 0x281
    Timestamp:  16116
    Subpixel:   unknown
    Clones:    
    CRTCs:      0 1 2 3
    Transform:  1.000000 0.000000 0.000000
                0.000000 1.000000 0.000000
                0.000000 0.000000 1.000000
               filter:
    BorderDimensions: 4
        supported: 4
    Border: 0 0 0 0
        range: (0, 65535)
    SignalFormat: DisplayPort
        supported: DisplayPort
    ConnectorType: DisplayPort
    ConnectorNumber: 3
    _ConnectorLocation: 3

Meaning that my notebook outputs through 4 connectors as:

Connector 0 - (0x282)        DisplayPort-2
Connector 1 - (0x27e)        VGA-0
Conenctor 2 - (0x280)        HDMI-0
Connector 3 - (0x27f, 0x281) DisplayPort-0, DisplayPort-1

I think I almost got it!!!

Link to comment
Share on other sites

Guys, I have more information. It seems that some Macbooks Air has their displays connected trough displayport but uses a customized configuration to make them start. We need URGENTLY help from someone who have access to one. The steps to follow are:

1 - Start the MBA with an Ubuntu live Pendrive (or external USB CD drive) on it. Reach the desktop, start a terminal and run:

sudo xrandr --verbose

2 - See if the connection is made through displayport. If you don´t know how to do it, pay attention to the code on the post #59

3 - If it is, run:

sudo xrandr --verbose >> info.txt

4 - Take that file (sure is in home folder) and paste it here to analyze it.

5 - Start OSX, fire IOREGExplorer 2.1 and save a dump to a file. Then paste it here to let us start working with it.

 

 

THING IMPORTANT TO NOTE: all the information in Display0 is extremely important (connector-type, display-cfg) etc

Come on, we can do it!

Link to comment
Share on other sites

Hello guys,

I received a message from NiPeGun that called for help.
I've not thoroughly read the whole topic, but to me this only seems to be a matter of connector.
1st thing I need to dig further is a graphic BIOS dump. It's either in a separate ROM, in which case the usual nvidia tools will work, or it might be merged in the main system BIOS/UEFI. In that case, use tools for dumping the system BIOS.
  • Like 1
Link to comment
Share on other sites

Hello guys,

I received a message from NiPeGun that called for help.
I've not thoroughly read the whole topic, but to me this only seems to be a matter of connector.
1st thing I need to dig further is a graphic BIOS dump. It's either in a separate ROM, in which case the usual nvidia tools will work, or it might be merged in the main system BIOS/UEFI. In that case, use tools for dumping the system BIOS.

 

 

 

GTX 670MX VBIOS extracted from inside the dump of my current BIOS. NiBiTor can´t handle it. Neither KeplerGB ...

 

10de_11a1.rar

Link to comment
Share on other sites

Maybe I'm confused about the conception of screen and display.

I have bought a pcs of second-hand G55VW-DH71 from American Amazon, which has a 1920x1080 screen. I will get the laptop few days later. I have checked the max. refresh rate of the screen is 60Hz. I'm not sure the port is LVDS or not. Do you think the graphics card and screen of my laptop can work on OSX?

ps. I have bought BCM94325HMB wifi+BT4.0 card to change the AR9485WB-EG card. Do you have the AppleHDA.kext for Via vt1802p?

I have got my G55VW-DH71 which has the same problem. The graphics card is GTX660M and I use Clover r2428 to boot the Mavericks 10.9.1.  I get the vbios on windows and set the Clover parameter loadvbios=yes, Inject Nvdia=Yes, OSX has recognized the graphics card correctly, I have checked by VNC. If I set Inject Nvidia=No, the vram is only 256MB. I have tested the VGA and HDMI port using normal displays, it doesn't work. I  add graphics card information in DSDT and tried different NVCAP strings, no luck. 

Link to comment
Share on other sites

At this point, only the help from Krazubu can solve this issue. I myself have no experience enough. At list for now...

According your posts before, I installed Ubuntu on a mobile HDD and got some information. It's not the same as yours.

Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 16384 x 16384
VGA-0 disconnected (normal left inverted right x axis y axis)
	Identifier: 0x27d
	Timestamp:  23226
	Subpixel:   unknown
	Clones:    
	CRTCs:      0 1 2 3
	Transform:  1.000000 0.000000 0.000000
	            0.000000 1.000000 0.000000
	            0.000000 0.000000 1.000000
	           filter: 
	SignalFormat:	VGA
		supported: VGA         
	ConnectorType:	VGA
	ConnectorNumber: 1 (0x00000001)
	_ConnectorLocation: 1 (0x00000001)
LVDS-0 connected 1920x1080+0+0 (0x27f) normal (normal left inverted right x axis y axis) 344mm x 194mm
	Identifier: 0x27e
	Timestamp:  23226
	Subpixel:   unknown
	Gamma:      1.0:1.0:1.0
	Brightness: 1.0
	Clones:    
	CRTC:       0
	CRTCs:      0 1 2 3
	Transform:  1.000000 0.000000 0.000000
	            0.000000 1.000000 0.000000
	            0.000000 0.000000 1.000000
	           filter: 
	EDID:
		00ffffffffffff0030e4d90200000000
		00140104902213780a15d59e59509826
		0e505400000001010101010101010101
		0101010101017e3680b070381f403020
		350058c210000018542480b070381f40
		3020350058c210000018000000fe004d
		43364a4e813135365746310a00000000
		000041319e0000000002010a20200030
	SignalFormat:	LVDS
		supported: LVDS        
	ConnectorType:	Panel
	ConnectorNumber: 0 (0x00000000)
	_ConnectorLocation: 0 (0x00000000)
  1920x1080 (0x27f)  139.5MHz -HSync -VSync *current +preferred
        h: width  1920 start 1968 end 2000 total 2096 skew    0 clock   66.6KHz
        v: height 1080 start 1083 end 1088 total 1111           clock   59.9Hz
  1920x1080 (0x280)   93.0MHz -HSync -VSync
        h: width  1920 start 1968 end 2000 total 2096 skew    0 clock   44.4KHz
        v: height 1080 start 1083 end 1088 total 1111           clock   39.9Hz
DP-0 disconnected (normal left inverted right x axis y axis)
	Identifier: 0x281
	Timestamp:  23226
	Subpixel:   unknown
	Clones:    
	CRTCs:      0 1 2 3
	Transform:  1.000000 0.000000 0.000000
	            0.000000 1.000000 0.000000
	            0.000000 0.000000 1.000000
	           filter: 
	SignalFormat:	TMDS
		supported: TMDS        
	ConnectorType:	DisplayPort
	ConnectorNumber: 3 (0x00000003)
	_ConnectorLocation: 3 (0x00000003)
HDMI-0 disconnected (normal left inverted right x axis y axis)
	Identifier: 0x282
	Timestamp:  23226
	Subpixel:   unknown
	Clones:    
	CRTCs:      0 1 2 3
	Transform:  1.000000 0.000000 0.000000
	            0.000000 1.000000 0.000000
	            0.000000 0.000000 1.000000
	           filter: 
	SignalFormat:	TMDS
		supported: TMDS        
	ConnectorType:	HDMI
	ConnectorNumber: 2 (0x00000002)
	_ConnectorLocation: 2 (0x00000002)
DP-1 disconnected (normal left inverted right x axis y axis)
	Identifier: 0x283
	Timestamp:  23226
	Subpixel:   unknown
	Clones:    
	CRTCs:      0 1 2 3
	Transform:  1.000000 0.000000 0.000000
	            0.000000 1.000000 0.000000
	            0.000000 0.000000 1.000000
	           filter: 
	SignalFormat:	DisplayPort
		supported: DisplayPort 
	ConnectorType:	DisplayPort
	ConnectorNumber: 3 (0x00000003)
	_ConnectorLocation: 3 (0x00000003)

My laptop have 5 ports, one LVDS port for internal display, two DP ports (but I find only one miniDP), one VGA and one HDMI on the right side of my laptop.

 

So I think my laptop is not totally same as yours. But I found OSX doesn't have graphics acceleration on Display-A (LVDS).

 

post-814142-0-75593100-1388771628_thumb.jpg

Link to comment
Share on other sites

That means your laptop has not a 120hz display. And still not getting graphics acc? Curious. Did you booted with NVDAResman on it and took those screenshots under vnc connection? Or you just removed NVDAResman to reach the desktop on the laptop display?

Link to comment
Share on other sites

That means your laptop has not a 120hz display. And still not getting graphics acc? Curious. Did you booted with NVDAResman on it and took those screenshots under vnc connection? Or you just removed NVDAResman to reach the desktop on the laptop display?

I got those screenshots under VNC with NVDAResman.kext, I have another hackintosh laptop Acer 5750g.

Link to comment
Share on other sites

That means your laptop has not a 120hz display. And still not getting graphics acc? Curious. Did you booted with NVDAResman on it and took those screenshots under vnc connection? Or you just removed NVDAResman to reach the desktop on the laptop display?

After I added the display lvds port information in DSDT:

                                "@0,connector-type", 
                                Buffer (0x04)
                                {
                                    0x02, 0x00, 0x00, 0x00
                                }, 

                                "@0,AAPL,boot-display", 
                                Buffer (0x04)
                                {
                                    0x01, 0x00, 0x00, 0x00
                                } 

I think OSX have get my display because the white Apple appears, not always the black console. But OSX crashed.

 post-814142-0-92666100-1388827891_thumb.jpg

 

Can you help me to solve this crash?

Link to comment
Share on other sites

Hi, here's a 1st attempt. You'll find attached a modded ROM.

I intentionally disabled every output but the internal so we can see if there's any hope from my side. It means only the internal display is theoretically supported, nothing from various external ports. 
Try injecting this ROM using clover or other method.
You must specify this NVCAP 0501000000000100000000000000000e00000000
For display-cfg,0 : 03013100
 
Don't inject anything else, especially don't mess with display@0 and connector types, let the driver do its autodetection job that will work if it has to work.
Clear any GFX tweak from DSDT.
 
Sidenote : I'm getting old fashioned and it's been a while I haven't played with all that. I'm not sure how injected BIOS behaves nowadays. It might be without effect and in that case, flashing the ROM might be required. No need to explain the risk of doing that, especially on a laptop.
Even if my image is valid, it might still crash BIOS because of some CRC or checksum inside it.
If you're still adventurous, you might search for some emergency recovery procedure. For instance some BIOS allow you an automatic recovery if you put a BIOS image with a certain name on an USB port. If you find such feature, better try it before.

 

10de_11a1 single head mod.zip

Link to comment
Share on other sites

ok I will try first " use nvidia rom" and modify the nvcap and display0 as you said. I'll report soon...

 

Well, I'm having problems. If I boot with your rom and modified display-cfg the system won't panic but we stay at the same level that we stay without doing it. The thing is the matter about injecting the NVCAP it can not be done with rom injection. Why? Cause if I want to boot with the nvcap injected (in org.chameleon.boot.plist) I must use graphics enabler yes, but if I do so, the system reboots suddenly after 2 or 3 seconds.. Meaning that GE yes + any injected rom (not just yours) = reboot after 2 or 3 seconds.

I know 2 other ways of injecting the NVCAP. One is device-properties and the other is DSDT. Both apply complete graphics card injection and skip autodetect as you said I must NOT do.

 

I will try this new skipautodetection feature that new versions of chameleon has. That gives me the ability to fire graphics enabler, and inject the nvcap without autodetecting the graphics cards. I will try it and report back...

Link to comment
Share on other sites

Hi, i've been away and missed out on some good stuff here.

I am still on the original problem of the display being initially recognised though.

OS X has no problem fully supporting my graphics card once it sees it.

All the strings and injections I tried did not really make any difference at all. Neither did Clover or Chameleon.

I have 2 Mavericks versions now:

One with the NV... kexts removed which boots fine with resolution set in boot.plist but of course no accelleration.

And one with everything working perfect even after disconnecting the VGA and sleeping, except it will only first boot from a VGA monitor.

@Krazubu: thanks for helping, what do you mean by an injector kext?

Is there one or does someone have to write on?

 

I have Win 7 and 8 and Ubuntu if you need some data.

I am now all hacked out and this is past my limited knowledge of OS X :(

post-393777-0-87881900-1388980620_thumb.jpg

Link to comment
Share on other sites

And one with everything working perfect even after disconnecting the VGA and sleeping, except it will only first boot from a VGA monitor

I am still thinking you are a lucky guy. I can't fire the system while I'm connected to a VGA CRT monitor with NVDAResman on it but if I try VGA booting, the system only starts the VGA monitor, not the internal one. Showing me is its first preference. Issue noted.

 

I don't know if Krazubu read the whole thread but I think is better to rename it to "Digging into 120hz laptop displays". Or we can rename it to "Digging into 120hz laptop displays with kepler cards". Maybe that way we will get more attention from people from the forum.

I don't know if this has only thing to do with asus 120hz displays but with every 120hz laptop display. I think every..

 

@Krazubu, a weird think is that when I inject your modded VBIOS rom and reading IOREG it keeps showing displayA,B,C, and D. Is this ok? Since you told me that you disabled all the outpus but one I think is not OK. Maybe you was right when you said that we need to flash the moded vbios to graphics card. Thing that I will not do, of course, since I have 3 other OS too perfectly configured and I use my TV connected to the lappy to play Battlefield 4 on the big screen.

Link to comment
Share on other sites

Yeah if you still see the 4 outputs it means the BIOS has been ignored. However there's a cleaner way to inject the BIOS that is using some native feature of the driver. I suggest you use NVEnabler for that, read my thread on projectOSX.com. Inside NVE plist you'll find a field to inject BIOS image. NVE by itself is broken with Mavericks but we don't care we just want the BIOS injection feature.

Link to comment
Share on other sites

 Share

×
×
  • Create New...