Contribute
Register

HD4000 Internal Display + HDMI out Framebuffer Issue

Status
Not open for further replies.
Joined
Jul 1, 2015
Messages
11
Motherboard
Smg NP700Z5C-S01UB
CPU
Intel i7-3615QM HM76
Graphics
Intel HD4000 1600x900
Mac
  1. 0
Classic Mac
  1. 0
Mobile Phone
  1. Android
Greetings, this is my first post. I want to first offer gratitude to this community for the wealth of information, experience and effort that has been contributed here. I have managed to get almost everything working on my Samsung Series 7 Chrono 15" notebook (NP700Z5C-S01UB) thanks to the resources I have come across, which I'm really very happy about.


I'm running vanilla Yosemite 10.10.4 installed via Clover EFI with Intel injection. To get internal display working with full Qe/Ci I'm currently using ig-platform-id: 0x0166000A or 0x0166000B. I must use EDID injection for this to work. No other ID's work for this display.


To get HDMI out working to an external display I can use any number of combinations to the same effect provided I am using the AppleIntelFramebufferCapri kext patches provided by RehabMan.
Most commonly I can use the following patches together with ID 0x01660004:
-040066010103010100000002
+040066010102040200000004


-300200000000000001000000400000000000000001000000400000000000000001000000400000000000000000000000
+300200000205000000040000070400000304000000040000810000000406000000040000810000000000000000020011


I can also use the following patches together with ID 0x0166000A:
-040066010103010100000002
+0A0066010103020200000004

I have tried exhaustive variations on these with ID's ranging from 0 to B and the results are the same. Both displays are picked up automatically by OS X. However, the internal display has a green tint, is covered in fine horizontal static, peculiar psychedelic gradients and some vertical bars and stripes.

I have tried several DSDT patches provided by RehabMan including graphics_HD4K_high and graphics_EDID to no avail. I have since returned to using no patched DSDT.

Any help would be greatly apreciated.
 

Attachments

  • config.plist
    6.3 KB · Views: 246
...
I have tried exhaustive variations on these with ID's ranging from 0 to B and the results are the same. Both displays are picked up automatically by OS X. However, the internal display has a green tint, is covered in fine horizontal static, peculiar psychedelic gradients and some vertical bars and stripes.

Sounds like issue with EDID.
 
Thank you for your swift response RehabMan. I have tried EDID injection which helps when using only the internal display and id 0A. However, when I use id 04 to enable HDMI the EDID injection does not appear to remedy the internal display. Is it possible that the EDID injection is being applied to the external display instead? Is it possible to define the EDID for both displays? I tried creating an override plist for the internal display which did not help either.
 
Thank you for your swift response RehabMan. I have tried EDID injection which helps when using only the internal display and id 0A. However, when I use id 04 to enable HDMI the EDID injection does not appear to remedy the internal display. Is it possible that the EDID injection is being applied to the external display instead? Is it possible to define the EDID for both displays? I tried creating an override plist for the internal display which did not help either.

Other common HD4000 laptop ig-platform-id: 0x1660008, 0x01660009.

EDID inject applies only to internal.
 
Other common HD4000 laptop ig-platform-id: 0x1660008, 0x01660009.

I have tried these ID's various times, they result in no power to the internal display and the image on the external display looks like it's being repeated 5 times interlaced across the screen.

I've followed your lead and gone back to have another look over the EDID. I've patched the DSDT again with the EDID. I've checked to make sure Clover is injecting EDID and I have generated a DisplayProductID-X containing the EDID and placed it in /System/Library/Displays/Overrides.

None of these worked. I've check the EDID I generated with Windows against the EDID generated by SwitchResX and IOReg. They are all identical. However I'm wondering if it may somehow be wrong or if there may be something I'm missing here?
 
I have tried these ID's various times, they result in no power to the internal display and the image on the external display looks like it's being repeated 5 times interlaced across the screen.

I've followed your lead and gone back to have another look over the EDID. I've patched the DSDT again with the EDID. I've checked to make sure Clover is injecting EDID and I have generated a DisplayProductID-X containing the EDID and placed it in /System/Library/Displays/Overrides.

None of these worked. I've check the EDID I generated with Windows against the EDID generated by SwitchResX and IOReg. They are all identical. However I'm wondering if it may somehow be wrong or if there may be something I'm missing here?

As far as separate ig-platform-id, work on internal display vs. external display independently.

Once you find the ids that solve each, you can patch of the ids to handle both.
 
As far as separate ig-platform-id, work on internal display vs. external display independently.

Once you find the ids that solve each, you can patch of the ids to handle both.

Only 0A and 0B work on internal perfectly. External does not work with Qe/Ci on any displays if internal is not working also (albeit with artefacts). Enabling external through the patches whether using 0A/0B or 04 causes artefacts to appear on the internal.
 
Only 0A and 0B work on internal perfectly. External does not work with Qe/Ci on any displays if internal is not working also (albeit with artefacts). Enabling external through the patches whether using 0A/0B or 04 causes artefacts to appear on the internal.

Which patches are you using for 166000a/166000b? Post ioreg in each scenario along with complete details on what patches are being used.
 
Which patches are you using for 166000a/166000b? Post ioreg in each scenario along with complete details on what patches are being used.

0x0166000A
-
040066010103010100000002
+0A0066010103020200000004

-300200000000000001000000400000000000000001000000400000000000000001000000400000000000000000000000
+300200000205000000040000070400000304000000040000810000000406000000040000810000000000000000020011

-020500000004000007040000
+020500000004000007010000

-030400000004000081000000
+030400000004000007010000

-040600000004000081000000
+040600000008000006000000

0x0166000B
-
040066010103010100000002
+0B0066010103020200000004

Is it normal that every time I run IOReg, even with the same configuration I receive a different output?
 

Attachments

  • ioreg0x0166000A.txt.zip
    105.8 KB · Views: 85
  • ioreg0x0166000B.txt.zip
    104.7 KB · Views: 63
Status
Not open for further replies.
Back
Top