Contribute
Register

Dell XPS 15 (9530) - Intel HD 4600 Graphics on QHD+ built-in display - Need some help

Joined
Jul 3, 2014
Messages
933
Motherboard
Dell XPS 9360 (KabyLake R)
CPU
Intel i7 8550U
Graphics
Intel UHD 620
Mac
MacBook, MacBook Pro
Mobile Phone
Android
Dell XPS 15 (9530) - Intel HD 4600 on QHD+ built-in display - Now Working

In short:
After days of fiddling around Mavericks is running on the Dell XPS 15, the LCD screen is detected but remains blank. Hopefully anyone can help.

Detailed:

Recently I acquired a Dell XPS 15 (9530) with QHD+ screen.

The specifications are as follows:

  • Intel HM87 Lynxpoint chipset
  • Intel i7-4712HQ with Intel HD 4600 Graphics
  • NVidia GT-750M (Paired to the Intel HD 4600, so not usable with OS X)
  • Intel AC-7620 Wireless (Not compatible with OS X)

Until now I have managed to install Clover UEFI and installed OS X Mavericks 10.9.3.

The following files show the state of my system at the moment:

The main LCD display works fine when AppleIntelFramebufferAzul.kext is not loaded (due to invalid or missing ig-platform-id), however that obviously does not give any QE/CI.

Configuring any ig-platform-id leads to a hanging kernel log on the main LCD or garbled screens due to a disabled connector.

However an external display on either DisplayPort or HDMI works fine with full QE/CI.

I dug into the OS X 10.9.3 AppleIntelFramebufferAzel.kext connectors table to find out if something was happening there.

This led to the following findings:
Code:
[FONT=Helvetica]00 00 06 0C —> ID: 0x0C060000[/FONT]
[FONT=Helvetica]00 03 03 03 00 00 00 04 00 00 00 01 —> 3 pipes, 3 ports, FB memory 64 MB, VRAM 1024 MB[/FONT]
[FONT=Helvetica]00 00 F0 00 00 00 00 40 99 14 00 00[/FONT]
[FONT=Helvetica]99 14 00 00 00 00 00 00 00 00 00 00 —> Backlight 0x1499[/FONT]
[FONT=Helvetica]00 00 08 00 02 00 00 00 30 00 00 00 —> eDP [/FONT]
[FONT=Helvetica]01 05 09 00 04 00 00 00 04 00 00 00 —> DVI[/FONT]
[FONT=Helvetica]02 04 09 00 00 08 00 00 82 00 00 00 —> HDMI[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00 —> Unused[/FONT]
[FONT=Helvetica]04 00 00 00 00 00 07 00 04 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00[/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00[/FONT]
[FONT=Helvetica]00 00 00 00[/FONT]
[FONT=Helvetica]
[/FONT]
[FONT=Helvetica]00 00 16 0C —> ID: 0x0C160000[/FONT]
[FONT=Helvetica]00 03 03 03 00 00 00 04 00 00 00 01 —> 3 pipes, 3 ports, FB memory 64MB, VRAM 1024 MB[/FONT]
[FONT=Helvetica]00 00 F0 00 00 00 00 40 99 14 00 00[/FONT]
[FONT=Helvetica]99 14 00 00 00 00 00 00 00 00 00 00 —> Backlight 0x1499[/FONT]
[FONT=Helvetica]00 00 08 00 02 00 00 00 30 00 00 00 —> [/FONT][FONT=Helvetica]eDP[/FONT]
[FONT=Helvetica]01 05 09 00 04 00 00 00 04 00 00 00 —> DVI[/FONT]
[FONT=Helvetica]02 04 09 00 00 08 00 00 82 00 00 00 —> HDMI[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00 —> Unused[/FONT]
[FONT=Helvetica]04 00 00 00 00 00 07 00 04 00 00 00[/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00[/FONT]
[FONT=Helvetica]00 00 00 00[/FONT]
[FONT=Helvetica]
[/FONT]
[FONT=Helvetica]00 00 26 0C 00 —> ID: 0x0C260000[/FONT]
[FONT=Helvetica]00 03 03 03 00 00 00 04 00 00 00 01  —> 3 pipes, 3 ports, FB memory 64MB, VRAM 1024 MB[/FONT]
[FONT=Helvetica]00 00 F0 00 00 00 00 40 99 14 00 00 [/FONT]
[FONT=Helvetica]99 14 00 00 00 00 00 00 00 00 00 00 —> Backlight 0x1499[/FONT]
[FONT=Helvetica]00 00 08 00 02 00 00 00 30 00 00 00 —> [/FONT][FONT=Helvetica]eDP[/FONT]
[FONT=Helvetica]01 05 09 00 04 00 00 00 04 00 00 00 —> DVI[/FONT]
[FONT=Helvetica]02 04 09 00 00 08 00 00 82 00 00 00 —> HDMI[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00 —> Unused[/FONT]
[FONT=Helvetica]04 00 00 00 00 00 07 00 04 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00[/FONT]
[FONT=Helvetica]
[/FONT]
[FONT=Helvetica]00 00 06 04 —> ID: 0x04060000[/FONT]
[FONT=Helvetica]00 03 03 03 00 00 00 04 00 00 00 01  —> 3 pipes, 3 ports, FB memory 3 64MB, VRAM 1024MB [/FONT]
[FONT=Helvetica]00 00 F0 00 00 00 00 40 99 14 00 00 [/FONT]
[FONT=Helvetica]99 14 00 00 00 00 00 00 00 00 00 00 —> Backlight 0x1499[/FONT]
[FONT=Helvetica]00 00 08 00 02 00 00 00 30 00 00 00 —> [/FONT][FONT=Helvetica]eDP[/FONT]
[FONT=Helvetica]01 05 09 00 04 00 00 00 04 00 00 00 —> DVI[/FONT]
[FONT=Helvetica]02 04 09 00 00 08 00 00 82 00 00 00 —> HDMI[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00 —> Unused[/FONT]
[FONT=Helvetica]04 00 00 00 00 00 07 00 04 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00[/FONT]
[FONT=Helvetica]
[/FONT]
[FONT=Helvetica]00 00 16 04 —> ID: 0x04160000[/FONT]
[FONT=Helvetica]00 03 03 03 00 00 00 04 00 00 00 01  —> 3 pipes, 3 ports, FB memory 64MB, VRAM 1024 MB[/FONT]
[FONT=Helvetica]00 00 F0 00 00 00 00 40 99 14 00 00 [/FONT]
[FONT=Helvetica]99 14 00 00 00 00 00 00 00 00 00 00  —> Backlight 0x1499[/FONT]
[FONT=Helvetica]00 00 08 00 02 00 00 00 30 00 00 00  —> [/FONT][FONT=Helvetica]eDP[/FONT]
[FONT=Helvetica]01 05 09 00 04 00 00 00 04 00 00 00  —> DVI[/FONT]
[FONT=Helvetica]02 04 09 00 00 08 00 00 82 00 00 00  —> HDMI[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00  —> Unused[/FONT]
[FONT=Helvetica]04 00 00 00 00 00 07 00 04 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00[/FONT]
[FONT=Helvetica]
[/FONT]
[FONT=Helvetica]00 00 26 04 —> ID: 0x04260000[/FONT]
[FONT=Helvetica]00 03 03 03 00 00 00 04 00 00 00 01  —> 3 pipes, 3 ports, FB memory 3 64MB, VRAM 1024 MB[/FONT]
[FONT=Helvetica]00 00 F0 00 00 00 00 40 99 14 00 00 [/FONT]
[FONT=Helvetica]99 14 00 00 00 00 00 00 00 00 00 00  —> Backlight 0x1499[/FONT]
[FONT=Helvetica]00 00 08 00 02 00 00 00 30 00 00 00  —> [/FONT][FONT=Helvetica]eDP[/FONT]
[FONT=Helvetica]01 05 09 00 04 00 00 00 04 00 00 00  —> DVI[/FONT]
[FONT=Helvetica]02 04 09 00 00 08 00 00 82 00 00 00  —> HDMI[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00  —> Unused[/FONT]
[FONT=Helvetica]04 00 00 00 00 00 07 00 04 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00[/FONT]
[FONT=Helvetica]
[/FONT]
[FONT=Helvetica]00 00 26 0D —> ID: 0x0D260000[/FONT]
[FONT=Helvetica]00 03 03 03 00 00 00 04 00 00 00 01 —> 3 pipes, 3 ports, FB memory 64MB, VRAM 1024 MB  [/FONT]
[FONT=Helvetica]00 00 F0 00 00 00 00 40 99 14 00 00 [/FONT]
[FONT=Helvetica]99 14 00 00 00 00 00 00 00 00 00 00 —> Backlight 0x1499 [/FONT]
[FONT=Helvetica]00 00 08 00 02 00 00 00 30 00 00 00 —> [/FONT][FONT=Helvetica]eDP[/FONT]
[FONT=Helvetica]01 05 09 00 04 00 00 00 04 00 00 00 —> DVI[/FONT]
[FONT=Helvetica]02 04 09 00 00 08 00 00 82 00 00 00 —> HDMI[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00 —> Unused[/FONT]
[FONT=Helvetica]04 00 00 00 00 00 07 00 04 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00[/FONT]
[FONT=Helvetica]
[/FONT]
[FONT=Helvetica]00 00 16 0A —> ID: 0x0A160000[/FONT]
[FONT=Helvetica]00 03 03 03 00 00 00 04 00 00 00 01  —> 3 pipes, 3 ports, FB memory 3 64MB, VRAM 1024 MB  [/FONT]
[FONT=Helvetica]00 00 F0 00 00 00 00 40 D9 0A 00 00 [/FONT]
[FONT=Helvetica]D9 0A 00 00 00 00 00 00 00 00 00 00 —> Backlight 0x0AD9[/FONT]
[FONT=Helvetica]00 00 08 00 02 00 00 00 30 00 00 00  —> [/FONT][FONT=Helvetica]eDP[/FONT]
[FONT=Helvetica]01 05 09 00 04 00 00 00 04 00 00 00  —> DVI[/FONT]
[FONT=Helvetica]02 04 09 00 00 08 00 00 82 00 00 00  —> HDMI[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00  —> Unused[/FONT]
[FONT=Helvetica]04 00 00 00 00 00 07 00 04 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00[/FONT]
[FONT=Helvetica]
[/FONT]
[FONT=Helvetica]00 00 26 0A —> ID: 0x0A260000[/FONT]
[FONT=Helvetica]00 03 03 03 00 00 00 04 00 00 00 01  —> 3 pipes, 3 ports, FB memory 3 64MB, VRAM 1024 MB  [/FONT]
[FONT=Helvetica]00 00 F0 00 00 00 00 40 D9 0A 00 00 [/FONT]
[FONT=Helvetica]D9 0A 00 00 00 00 00 00 00 00 00 00 —> Backlight 0x0AD9[/FONT]
[FONT=Helvetica]00 00 08 00 02 00 00 00 30 00 00 00 —> [/FONT][FONT=Helvetica]eDP[/FONT]
[FONT=Helvetica]01 05 09 00 04 00 00 00 04 00 00 00 —> DVI[/FONT]
[FONT=Helvetica]02 04 09 00 00 08 00 00 82 00 00 00 —> HDMI[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00 —> Unused[/FONT]
[FONT=Helvetica]04 00 00 00 00 00 07 00 04 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00[/FONT]
[FONT=Helvetica]
[/FONT]
[FONT=Helvetica]05 00 26 0A —> ID: 0x0A260005[/FONT]
[FONT=Helvetica]01 03 03 03 00 00 00 02 00 00 30 01  —> 3 pipes, 3 ports, FB memory 32MB, VRAM 1536 MB   [/FONT]
[FONT=Helvetica]00 00 50 00 00 00 00 60 D9 0A 00 00[/FONT]
[FONT=Helvetica]D9 0A 00 00 00 00 00 00 00 00 00 00 —> Backlight 0x0AD9  [/FONT]
[FONT=Helvetica]00 00 08 00 02 00 00 00 30 00 00 00 —> [/FONT][FONT=Helvetica]eDP[/FONT]
[FONT=Helvetica]01 05 09 00 00 04 00 00 87 00 00 00 —> DP[/FONT]
[FONT=Helvetica]02 04 09 00 00 04 00 00 87 00 00 00 —> DP [/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00 —> Unused [/FONT]
[FONT=Helvetica]0F 00 00 00 01 01 00 00 04 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]0E 00 00 00[/FONT]
[FONT=Helvetica]
[/FONT]
[FONT=Helvetica]06 00 26 0A —> ID 0x0A260006 [/FONT]
[FONT=Helvetica]01 03 03 03 00 00 00 02 00 00 30 01 —> 3 pipes, 3 ports, FB memory 32MB, VRAM 1536 MB [/FONT]
[FONT=Helvetica]00 00 60 00 00 00 00 60 D9 0A 00 00 [/FONT]
[FONT=Helvetica]D9 0A 00 00 00 00 00 00 00 00 00 00 —> Backlight 0x0AD9 [/FONT]
[FONT=Helvetica]00 00 08 00 02 00 00 00 30 00 00 00 —> [/FONT][FONT=Helvetica]eDP[/FONT]
[FONT=Helvetica]01 05 09 00 00 04 00 00 87 00 00 00 —> DP[/FONT]
[FONT=Helvetica]02 04 09 00 00 04 00 00 87 00 00 00 —> DP[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00 —> Unused[/FONT]
[FONT=Helvetica]0F 00 00 00 01 01 00 00 04 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]0E 00 00 00[/FONT]
[FONT=Helvetica]
[/FONT]
[FONT=Helvetica]08 00 2E 0A —> ID 0x0A2E0008[/FONT]
[FONT=Helvetica]01 03 03 03 00 00 00 04 00 00 20 02 —> 3 pipes, 3 ports, FB memory 64MB, VRAM 1536 MB[/FONT]
[FONT=Helvetica]00 00 50 01 00 00 00 60 6C 05 00 00 [/FONT]
[FONT=Helvetica]6C 05 00 00 00 00 00 00 00 00 00 00  —> Backlight 0x056C [/FONT]
[FONT=Helvetica]00 00 08 00 02 00 00 00 30 00 00 00  —> [/FONT][FONT=Helvetica]eDP[/FONT]
[FONT=Helvetica]01 05 09 00 00 04 00 00 07 01 00 00  —> DP[/FONT]
[FONT=Helvetica]02 04 0A 00 00 04 00 00 07 01 00 00  —> DP[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00  —> Unused[/FONT]
[FONT=Helvetica]1E 00 00 00 05 05 09 01 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 10 3D 06 00 00 00 00 00 [/FONT]
[FONT=Helvetica]50 46 06 00 00 00 00 00 32 00 00 00 [/FONT]
[FONT=Helvetica]0E 00 00 00[/FONT]
[FONT=Helvetica]
[/FONT]
[FONT=Helvetica]0C 00 16 0A  —> ID 0x0A16000C[/FONT]
[FONT=Helvetica]01 03 03 03 00 00 00 04 00 00 20 02 —> 3 pipe, 3 ports, FB memory 64MB, VRAM 1536 MB[/FONT]
[FONT=Helvetica]00 00 50 01 00 00 00 60 6C 05 00 00 [/FONT]
[FONT=Helvetica]6C 05 00 00 00 00 00 00 00 00 00 00 —> Backlight 0x056C [/FONT]
[FONT=Helvetica]00 00 08 00 02 00 00 00 30 00 00 00  —> [/FONT][FONT=Helvetica]eDP[/FONT]
[FONT=Helvetica]01 05 09 00 00 04 00 00 07 01 00 00  —> DP[/FONT]
[FONT=Helvetica]02 04 0A 00 00 04 00 00 07 01 00 00  —> DP[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00  —> Unused[/FONT]
[FONT=Helvetica]1E 00 00 00 05 05 09 01 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 10 3D 06 00 00 00 00 00 [/FONT]
[FONT=Helvetica]50 46 06 00 00 00 00 00 32 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00[/FONT]
[FONT=Helvetica]
[/FONT]
[FONT=Helvetica]07 00 26 0D —> ID 0x0D260007[/FONT]
[FONT=Helvetica]01 03 04 03 00 00 00 04 00 00 20 02 —> 3 pipe, 4 ports, FB memory 64MB, VRAM 1536 MB[/FONT]
[FONT=Helvetica]00 00 50 01 00 00 00 60 A1 07 00 00 [/FONT]
[FONT=Helvetica]A1 07 00 00 00 00 00 00 00 00 00 00 —> Backlight 0x071A[/FONT]
[FONT=Helvetica]00 00 08 00 02 00 00 00 30 00 00 00 —> [/FONT][FONT=Helvetica]eDP[/FONT]
[FONT=Helvetica]01 05 0B 00 00 04 00 00 07 01 00 00 —> DP[/FONT]
[FONT=Helvetica]02 04 0B 00 00 04 00 00 07 01 00 00 —> DP[/FONT]
[FONT=Helvetica]03 06 03 00 00 08 00 00 06 00 00 00 —> HDMI[/FONT]
[FONT=Helvetica]1E 03 00 00 05 05 09 00 04 00 00 00[/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 32 00 00 00 [/FONT]
[FONT=Helvetica]0E 00 00 00[/FONT]
[FONT=Helvetica]
[/FONT]
[FONT=Helvetica]03 00 22 0D —> ID 0x0D2200003[/FONT]
[FONT=Helvetica]00 03 03 03 00 00 00 02 00 00 30 01 —> 3 pipe, 4 ports, FB memory 32MB, 1536 MB[/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 60 99 14 00 00 [/FONT]
[FONT=Helvetica]99 14 00 00 00 00 00 00 00 00 00 00 —> Backlight 0x1499 [/FONT]
[FONT=Helvetica]01 05 09 00 00 04 00 00 87 00 00 00 —> DP[/FONT]
[FONT=Helvetica]02 04 0A 00 00 04 00 00 87 00 00 00 —> DP[/FONT]
[FONT=Helvetica]03 06 08 00 00 04 00 00 11 00 00 00 —> DP[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00 —> Unused[/FONT]
[FONT=Helvetica]02 00 00 00 01 01 00 00 04 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]0E 00 00 00[/FONT]
[FONT=Helvetica]
[/FONT]
[FONT=Helvetica]0A 00 2E 0A —> ID 0x0A2E000A[/FONT]
[FONT=Helvetica]00 03 03 03 00 00 00 02 00 00 00 01 —> 3 pipe, 3 ports, FB memory 32 MB, VRAM 1536 MB[/FONT]
[FONT=Helvetica]00 00 90 00 00 00 00 60 99 14 00 00 [/FONT]
[FONT=Helvetica]99 14 00 00 00 00 00 00 00 00 00 00 —> Backlight 0x1499[/FONT]
[FONT=Helvetica]00 00 08 00 02 00 00 00 11 00 00 00 —> [/FONT][FONT=Helvetica]eDP[/FONT]
[FONT=Helvetica]01 05 09 00 00 04 00 00 87 00 00 00 —> DP[/FONT]
[FONT=Helvetica]02 04 0A 00 00 04 00 00 87 00 00 00 —> DP[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00 —> Unused[/FONT]
[FONT=Helvetica]D6 00 00 00 05 05 00 00 04 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]0E 00 00 00[/FONT]
[FONT=Helvetica]
[/FONT]
[FONT=Helvetica]0A 00 26 0A —> ID 0x0A26000A[/FONT]
[FONT=Helvetica]00 03 03 03 00 00 00 02 00 00 00 01 —> 3 pipe, 3 ports, FB memory 32, VRAM 1536 MB[/FONT]
[FONT=Helvetica]00 00 90 00 00 00 00 60 99 14 00 00 [/FONT]
[FONT=Helvetica]99 14 00 00 00 00 00 00 00 00 00 00 —> Backlight 0x1499[/FONT]
[FONT=Helvetica]00 00 08 00 02 00 00 00 11 00 00 00  —> [/FONT][FONT=Helvetica]eDP[/FONT]
[FONT=Helvetica]01 05 09 00 00 04 00 00 87 00 00 00  —> DP[/FONT]
[FONT=Helvetica]02 04 0A 00 00 04 00 00 87 00 00 00  —> DP[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00  —> Unused[/FONT]
[FONT=Helvetica]D6 00 00 00 05 05 00 00 04 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]0E 00 00 00[/FONT]
[FONT=Helvetica]
[/FONT]
[FONT=Helvetica]04 00 12 04 —> ID 0x04120004[/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 02 00 00 00 00 —> 3 pipe, 0 ports, FB memory 32MB, VRAM 512 MB[/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 10 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 —> Backlight 0[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00 —> Unused[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00 —> Unused[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00 —> Unused[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00 —> Unused[/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 04 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00[/FONT]
[FONT=Helvetica]
[/FONT]
[FONT=Helvetica]0B 00 12 04 —> ID 0x0412000B[/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 02 00 00 00 00 —> 3 pipe, 0 ports, FB memory 32MB, VRAM 512 MB[/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 10 00 00 00 00 —> Backlight 0[/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00 —> Unused[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00 —> Unused[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00 —> Unused[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00 —> Unused[/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 04 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00[/FONT]
[FONT=Helvetica]
[/FONT]
[FONT=Helvetica]09 00 26 0D —> ID 0x0D260009[/FONT]
[FONT=Helvetica]01 03 01 01 00 00 00 04 00 00 20 02 —> 3 pipe, 1 ports, FB memory 64 MB, VRAM 1536 MB[/FONT]
[FONT=Helvetica]00 00 50 01 00 00 00 60 A1 07 00 00 [/FONT]
[FONT=Helvetica]A1 07 00 00 00 00 00 00 00 00 00 00 —> Backlight 0x07A1[/FONT]
[FONT=Helvetica]00 00 08 00 02 00 00 00 30 00 00 00 —> [/FONT][FONT=Helvetica]eDP[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00 —> Unused[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00 —> Unused[/FONT]
[FONT=Helvetica]FF 00 00 00 01 00 00 00 40 00 00 00 —> Unused[/FONT]
[FONT=Helvetica]1E 00 00 00 05 05 09 00 04 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 00 00 00 00 [/FONT]
[FONT=Helvetica]00 00 00 00 00 00 00 00 32 00 00 00 [/FONT]
[FONT=Helvetica]0E 00 00 00[/FONT]
There are some new identifiers which are not present in any documentation I found online sofar.
On the Dell XPS 15 9530 I get best results with either 0xA260005 or 0xA260006 (Former being default MacBook Air ig-platform-id).

The much suggested 0xD220003 does not have an eDP connection defined in the first frame buffer (0) and is thus not much use on a laptop.

During this exercise I found out the following port configuration for the Dell XPS 15 9530:
  • port 0: eDP
  • port 1: DisplayPort (Ext. Monitor)
  • port 5: DisplayPort (Ext. Monitor)
  • port 6: HDMI (Ext. Monitor)

However, even though the LCD display is visible in ioreg, OS X is not using it. Its hanging on the kernel boot up sequence image (While the secondary monitor is working fine).

So I dumped the EDID of the LCD screen in windows, which can be downloaded as text or binary edid.
This I inserted in the DSDT to have OS X pick it up (Thanks to RehabMan for providing the template in another post):
Code:
            Method (_DSM, 4, NotSerialized)
            {
                If (LEqual (Arg2, Zero)) { Return (Buffer() { 0x03 } ) }
                Return (Package()
                {
                    "AAPL,HasPanel" , Buffer() { 0x01, 0x00, 0x00, 0x00 },
                    "AAPL,backlight-control", Buffer() { 0x01, 0x00, 0x00, 0x00 },
                    // Ensure internal LCD is enabled (Does not seem to have any effect
                    "AAPL,os-info", Buffer () { 0x30, 0x49, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, 
                    "AAPL00,backlight-control" , Buffer() { 0x01, 0x00, 0x00, 0x00 },
                    "AAPL00,boot-display", Buffer() { 0x01, 0x00, 0x00, 0x00 },
                    "built-in", Buffer() { 0x01 },
                    // If not provided, after overriding display EDID OS-X shows Intel HD 5000?
                    "model", Buffer() { "Intel HD 4600" },
                    
                    //IMPORTANT: edit for actual snb-platform-id
                    //"AAPL,snb-platform-id", Buffer() { 0x00, 0x00, 0x01, 0x00 },
                    //IMPORTANT: edit for actual ig-platform-id
                    "AAPL,ig-platform-id", Buffer() { 0x05, 0x00, 0x26, 0x0A },
                    //IMPORTANT: remove this line if not dual-link
                    "AAPL00,DualLink", Buffer() { 0x01, 0x00, 0x00, 0x00 },
                    //for HDMI-audio
                    "hda-gfx", Buffer() { "onboard-1" },
                    //EDID section: Fill in with your actual 128 bytes of EDID data
                    //Note: Clover uses override-no-connect, but I've also seen
                    //  override-no-edid.  Not sure what the difference is.
                    //"AAPL00,override-no-connect", Buffer (0x80)
                    "AAPL00,override-no-edid", Buffer (0x80)
                    {
                        0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x4D, 0x10, 0xF8, 0x13,
                        0x00, 0x00, 0x00, 0x00, 0x22, 0x17, 0x01, 0x04, 0xA5, 0x23, 0x13, 0x78,
                        0x0E, 0xDE, 0x50, 0xA3, 0x54, 0x4C, 0x99, 0x26, 0x0F, 0x50, 0x54, 0x00,
                        0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01,
                        0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0xCD, 0x91, 0x80, 0xA0, 0xC0, 0x08,
                        0x34, 0x70, 0x30, 0x20, 0x35, 0x00, 0x5A, 0xC2, 0x10, 0x00, 0x00, 0x18,
                        0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0x00, 0x36,
                        0x52, 0x47, 0x57, 0x30, 0x80, 0x4C, 0x51, 0x31, 0x35, 0x36, 0x5A, 0x31,
                        0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x03, 0x28, 0x00, 0x12, 0x00,
                        0x00, 0x0B, 0x01, 0x0A, 0x20, 0x20, 0x00, 0x1B    
                    },
                })
            }
This still did not enable the display, so I used FixEDID to create a MacBook Air built-in display override.
Now on boot-up OS X initialises both monitors and tries to use it as a primary monitor.
However the display remains blank! I can only switch the monitor by closing the laptop lid, which causes the external monitor to become the primary monitor.

Display-Properties.pngDisplay Details.png

I feel the solution either lies in DSDT patching, a modified EDID or AppleIntelFrameBufferAzul connector patching, however I am out of ideas for now on how to resolve the issue.

I am hoping someone has ran into this issue before, or can suggest a possible workaround for this (last?) hurdle.
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
191,123
Motherboard
Intel DH67BL
CPU
Core i7-2600K
Graphics
Intel HD 3000
Mac
MacBook Air
Mobile Phone
iOS
You're on the right track here...

But so far the only QHD+ laptops working are Macs and PC laptops with HD5100/HD5200 Iris graphics. No one has succeeded with HD4600/HD4400.

Maybe find out what the IGPU memory window config is (64MB?, 96MB?) then patch the framebuffer to match.
 
Joined
Jul 3, 2014
Messages
933
Motherboard
Dell XPS 9360 (KabyLake R)
CPU
Intel i7 8550U
Graphics
Intel UHD 620
Mac
MacBook, MacBook Pro
Mobile Phone
Android
After reading some of Rehabman's posts I have now updated to MacBook11,2 (Retina) SMBIOS and updated the platform ID to 0x0A2E0008 which is the default on the MacBook11,2.

This shows the graphics card as Intel Graphics 5200, but all is still working fine (Same driver AppleIntelHD5000Graphics.kext is still loading with QE/CI).

Hopefully emulating a retina supporting device will lead to a workable solution.
Additionally I disabled the Nvidia card through DSDT as explained by RehabMan over in this thread:
http://www.tonymacx86.com/mavericks-laptop-support/122936-disable-nvidia-card-dsdt.html

Now I have updated to 10.9.4 in order to ensure the newest version of Mavericks is installed.
Same DSDT and Clover config are still applied and work fine with external display QE/CI.

I have tested with some monitor configurations to get the monitor to be detected at its native resolution of 3200x1800. Some clues are given by user ramala on both his github and on OSX forums.

On github he posted a monitor override file enabling HiDpi resolutions:
https://github.com/Ramalama2/UX301_DSDT/tree/master/3. Patched DSDT/UX301LA.More/HiDPI

Also here there are more instructions how to add HiDPI scaled resolutions to the override plist:
http://www.insanelymac.com/forum/topic/290097-guide-add-your-custom-retina-hidpi-resolution-for-your-desktop-display/?p=2011878

Ok, not need anymore, i found out how to get HiDPI on Retina Macbook Smbios:

You need to use
00000B40 00000654 00000001 00200000
instead of
00000B40 00000654 00000001
in the description. (just add 00200000 at the end)
In the ioreg for the internal display it shows connector-type 02 00 00 00 (LVDS), port 0x0 and av-signal-type 00 00 00 00.

I have compared this against a MacbookPro11,2 ioreg dump and it shows the same information:
https://github.com/Ramalama2/UX301_DSDT/blob/master/1. APPLE_Files/2. IORegs/MacBookPro11,2.ioreg?raw=true

In order to determine the port numbers I have made a dump of the video bios from linux:

Code:
VBT vers: 1.0
BDB sig: BIOS_DATA_BLOCK 
BDB vers: 170
Available sections: 1 2 3 4 6 7 8 9 10 11 12 13 14 15 17 18 20 22 23 24 25 26 27 28 29 30 31 32 40 41 42 43 44 46 252 253 254 
General features block:
    Panel fitting: text & graphics
    Flexaim: yes
    Message: no
    Clear screen: 0
    DVO color flip required: no
    External VBT: yes
    Enable SSC: no
    LFP on override: no
    Disable SSC on clone: no
    Disable smooth vision: no
    Single DVI for CRT/DVI: no
    Legacy monitor detect: yes
    Integrated CRT: no
    Integrated TV: no
General definitions block:
    CRT DDC GMBUS addr: 0x00
    Use ACPI DPMS CRT power states: no
    Skip CRT detect at boot: no
    Use DPMS on AIM devices: yes
    Boot display type: 0x0000
    TV data block present: yes
    EFP device info:
        Device type: 0x78c6 (eDP)
        Port: 0x0a (unknown)
        DDC pin: 0x03
        Dock port: 0x00 (N/A)
        HDMI compatible? No
        Info: HDMI certified
        Aux channel: 0x40
        Dongle detect: 0x00
    EFP device info:
        Device type: 0x60d2 (DVI-D)
        Port: 0x01 (HDMI-B)
        DDC pin: 0x05
        Dock port: 0x00 (N/A)
        HDMI compatible? Yes
        Info: DisplayPort
        Aux channel: 0x00
        Dongle detect: 0x01
    EFP device info:
        Device type: 0x60d6 (DisplayPort/HDMI/DVI)
        Port: 0x08 (DP-C)
        DDC pin: 0x04
        Dock port: 0x00 (N/A)
        HDMI compatible? Yes
        Info: DVI
        Aux channel: 0x20
        Dongle detect: 0x01
Child devices block:
    Child device 6
        Type: 0x4a00 (unknown)
        DVO port: 0x03
        I2C pin: 0x55
        Slave addr: 0x00
        DDC pin: 0x00
        DVO config: 0x0d
        DVO wiring: 0x0e
LVDS options block:
    Panel type: 2
    LVDS EDID available: yes
    Pixel dither: yes
    PFIT auto ratio: yes
    PFIT enhanced graphics mode: no
    PFIT enhanced text mode: no
    PFIT mode: 3
LVDS panel data block (preferred block marked with '*'):
  Number of entries: 19
     panel type 00: 640x480 clock 25180000
        info:
          LVDS: 0x00000300
          PP_ON_DELAYS: 0x025807d0
          PP_OFF_DELAYS: 0x01f407d0
          PP_DIVISOR: 0x00270f05
          PFIT: 0xe0209080
        timings: 640 648 744 784 480 482 484 509 25180.00 (good)
     panel type 01: 800x600 clock 40000000
        info:
          LVDS: 0x00000300
          PP_ON_DELAYS: 0x025807d0
          PP_OFF_DELAYS: 0x01f407d0
          PP_DIVISOR: 0x00270f05
          PFIT: 0x58310020
        timings: 800 840 968 1056 600 601 605 628 40000.00 (good)
*    panel type 02: 3200x1800 clock 373250000
        info:
          LVDS: 0x0030033c
          PP_ON_DELAYS: 0x025807d0
          PP_OFF_DELAYS: 0x01f407d0
          PP_DIVISOR: 0x00270f05
          PFIT: 0x08c0a080
        timings: 3200 3248 3280 3360 1800 1803 1808 1852 373250.00 (good)
     panel type 03: 1280x1024 clock 108000000
        info:
          LVDS: 0x0000033c
          PP_ON_DELAYS: 0x025807d0
          PP_OFF_DELAYS: 0x01f407d0
          PP_DIVISOR: 0x00270f05
          PFIT: 0x00519800
        timings: 1280 1328 1440 1688 1024 1025 1028 1072 108000.00 (good)
     panel type 04: 1400x1050 clock 108000000
        info:
          LVDS: 0x0000033c
          PP_ON_DELAYS: 0x025807d0
          PP_OFF_DELAYS: 0x01f407d0
          PP_DIVISOR: 0x00270f05
          PFIT: 0x1a512078
        timings: 1400 1416 1528 1688 1050 1051 1054 1066 108000.00 (good)
     panel type 05: 1400x1050 clock 122000000
        info:
          LVDS: 0x0000033c
          PP_ON_DELAYS: 0x025807d0
          PP_OFF_DELAYS: 0x01f407d0
          PP_DIVISOR: 0x00270f05
          PFIT: 0x1a51e078
        timings: 1400 1488 1640 1880 1050 1051 1054 1088 122000.00 (good)
     panel type 06: 1600x1200 clock 162000000
        info:
          LVDS: 0x0000033c
          PP_ON_DELAYS: 0x025807d0
          PP_OFF_DELAYS: 0x01f407d0
          PP_DIVISOR: 0x00270f05
          PFIT: 0xb0623040
        timings: 1600 1664 1856 2160 1200 1201 1204 1250 162000.00 (good)
     panel type 07: 1366x768 clock 85500000
        info:
          LVDS: 0x00000300
          PP_ON_DELAYS: 0x025807d0
          PP_OFF_DELAYS: 0x01f407d0
          PP_DIVISOR: 0x00270f05
          PFIT: 0x0051aa56
        timings: 1366 1436 1580 1792 768 769 773 798 85500.00 (good)
     panel type 08: 1680x1050 clock 119000000
        info:
          LVDS: 0x0000033c
          PP_ON_DELAYS: 0x025807d0
          PP_OFF_DELAYS: 0x01f407d0
          PP_DIVISOR: 0x00270f05
          PFIT: 0x1a60a090
        timings: 1680 1728 1760 1840 1050 1053 1059 1080 119000.00 (good)
     panel type 09: 1920x1200 clock 154000000
        info:
          LVDS: 0x0000033c
          PP_ON_DELAYS: 0x025807d0
          PP_OFF_DELAYS: 0x01f407d0
          PP_DIVISOR: 0x00270f05
          PFIT: 0xb070a080
        timings: 1920 1968 2000 2080 1200 1202 1212 1235 154000.00 (good)
     panel type 10: 1440x900 clock 106500000
        info:
          LVDS: 0x00000300
          PP_ON_DELAYS: 0x025807d0
          PP_OFF_DELAYS: 0x01f407d0
          PP_DIVISOR: 0x00270f05
          PFIT: 0x8451d0a0
        timings: 1440 1520 1673 1904 900 901 908 934 106500.00 (good)
     panel type 11: 1600x900 clock 108000000
        info:
          LVDS: 0x00000300
          PP_ON_DELAYS: 0x025807d0
          PP_OFF_DELAYS: 0x01f407d0
          PP_DIVISOR: 0x00270f05
          PFIT: 0x8460c840
        timings: 1600 1624 1705 1800 900 900 904 1000 108000.00 (good)
     panel type 12: 1024x768 clock 65000000
        info:
          LVDS: 0x00000300
          PP_ON_DELAYS: 0x025807d0
          PP_OFF_DELAYS: 0x01f407d0
          PP_DIVISOR: 0x00270f05
          PFIT: 0x00414000
        timings: 1024 1048 1184 1344 768 771 777 806 65000.00 (good)
     panel type 13: 1280x800 clock 68900000
        info:
          LVDS: 0x00000300
          PP_ON_DELAYS: 0x025807d0
          PP_OFF_DELAYS: 0x01f407d0
          PP_DIVISOR: 0x00270f05
          PFIT: 0x2050a000
        timings: 1280 1292 1340 1440 800 804 807 823 68900.00 (good)
     panel type 14: 1920x1080 clock 148500000
        info:
          LVDS: 0x00000300
          PP_ON_DELAYS: 0x025807d0
          PP_OFF_DELAYS: 0x01f407d0
          PP_DIVISOR: 0x00270f05
          PFIT: 0x38711880
        timings: 1920 2008 2053 2200 1080 1083 1089 1125 148500.00 (good)
     panel type 15: 2048x1536 clock 164250000
        info:
          LVDS: 0x0000033c
          PP_ON_DELAYS: 0x025807d0
          PP_OFF_DELAYS: 0x01f407d0
          PP_DIVISOR: 0x00270f05
          PFIT: 0x00806000
        timings: 2048 2064 2080 2144 1536 1537 1538 1555 164250.00 (good)
     panel type 16: 17996x24400 clock 195570000
        info:
          LVDS: 0x6d614e6c
          PP_ON_DELAYS: 0x6e61505f
          PP_OFF_DELAYS: 0x464c656d
          PP_DIVISOR: 0x4e6c656e
          PFIT: 0x505f5046
        timings: 1350 1707 2327 5270 1616 1620 1650 5297 195570.00 (good)
     panel type 17: 20550x20575 clock 179960000
        info:
          LVDS: 0x656d614e
          PP_ON_DELAYS: 0x656e6150
          PP_OFF_DELAYS: 0x50464c65
          PP_DIVISOR: 0x614e6c65
          PFIT: 0x61505f50
        timings: 1360 1724 2314 1455 1633 1687 1704 3023 179960.00 (BAD!)
     panel type 18: 24400x24912 clock 205500000
        info:
          LVDS: 0x4c656d61
          PP_ON_DELAYS: 0x6c656e61
          PP_OFF_DELAYS: 0x5f50464c
          PP_DIVISOR: 0x6d614e6c
          PFIT: 0x6e61505f
        timings: 1631 1965 2574 1967 1646 1668 1697 4819 205500.00 (BAD!)
LVDS timing pointer data:
  Number of entries: 3
    panel type 02: 3200x1800
Backlight info block (len 113):
    Inverter type: 2
         polarity: 0
        GPIO pins: 1
      GMBUS speed: 1
         PWM freq: 200
    Minimum brightness: 13
    I2C slave addr: 0x58
    I2C command: 0xaa
SDVO LVDS options block:
    backlight: 0
    h40 type: 1
    type: 3
    ssc_clk_freq: 7
    als_low_trip: 0
    als_high_trip: 0
    misc[0]: 30
    misc[1]: 84
    misc[2]: e
    misc[3]: 0
SDVO panel dtds:
0:
    hdisplay: 1024
    hsync [1048, 1184] -sync
    htotal: 1344
    vdisplay: 768
    vsync [771, 777] -sync
    vtotal: 806
    clock: 65000
1:
    hdisplay: 1280
    hsync [1328, 1440] -sync
    htotal: 1688
    vdisplay: 1024
    vsync [1025, 1028] -sync
    vtotal: 1072
    clock: 108000
2:
    hdisplay: 1400
    hsync [1488, 1640] -sync
    htotal: 1880
    vdisplay: 1050
    vsync [1051, 1054] -sync
    vtotal: 1088
    clock: 122000
3:
    hdisplay: 1600
    hsync [1664, 1856] -sync
    htotal: 2160
    vdisplay: 1200
    vsync [1201, 1204] -sync
    vtotal: 1250
    clock: 162000
Driver feature Data Block:
    Boot Device Algorithm: os default
    Block display switching when DVD active: yes
    Allow display switching when in Full Screen DOS: no
    Hot Plug DVO: yes
    Dual View Zoom: no
    Driver INT 15h hook: no
    Enable Sprite in Clone Mode: yes
    Use 00000110h ID for Primary LFP: no
    Boot Mode X: 1024
    Boot Mode Y: 768
    Boot Mode Bpp: 8
    Boot Mode Refresh: 60
    Enable LFP as primary: no
    Selective Mode Pruning: no
    Dual-Frequency Graphics Technology: yes
    Default Render Clock Frequency: high
    NT 4.0 Dual Display Clone Support: no
    Default Power Scheme user interface: CUI
    Sprite Display Assignment when Overlay is Active in Clone Mode: secondary
    Display Maintain Aspect Scaling via CUI: yes
    Preserve Aspect Ratio: no
    Enable SDVO device power down: no
    CRT hotplug: no
    LVDS config: Embedded DisplayPort
    Define Display statically: no
    Legacy CRT max X: 1024
    Legacy CRT max Y: 768
    Legacy CRT max refresh: 85
eDP block: type 2
    Power Sequence: T3 2000 T7 200 T9 2000 T10 500 T12 5000
    Panel color depth: 24bpp
    eDP sDRRs MSA timing delay: 0
    Link params:
        rate: 1.62G
        lanes: x1 mode
        pre-emphasis: none
        vswing: 0.4V
It would seem the eDP display is available on port 0x0a. Has anyone edited AppleIntelFramebufferAzul.kext before output display on port 0x0a?
Otherwise I will go and test to see if I can get a framebuffer edit to output on that port.

Also if someone can run Ubuntu live on a MacBookPro11,X and create the same dump it would be invaluable.
The intel gpu tools are installed on the Live DVD by default, the commands are:
Code:
intel_bios_dumper vbios.bin
intel_bios_reader vbios.bin > intel_video_bios.log
 
Joined
Jul 3, 2014
Messages
933
Motherboard
Dell XPS 9360 (KabyLake R)
CPU
Intel i7 8550U
Graphics
Intel UHD 620
Mac
MacBook, MacBook Pro
Mobile Phone
Android
I managed to find a video bios dump of a MacBook11,1 online which allows to compare the video port configuration between the Dell XPS 9530 and the MacBook (The same technique could apply to any laptop).

This is the information it comes up with, filtered for relevant differences only:

MacBook11,1 Dell XPS 9530
CRT DDC GMBUS addr: 0x02 0x00
EFP device info:
Device type: 0x78c6 (eDP) 0x78c6 (eDP)
Port: 0x0a (unknown) 0x0a (unknown)
DDC pin: 0x03 0x03
Dock port: 0x00 (N/A) 0x00 (N/A)
HDMI compatible? No No
Info: N/A HDMI certified
Aux channel: 0x40 0x40
Dongle detect: 0x00 0x00
EFP device info:
Device type: 0x60d6 (DisplayPort/HDMI/DVI) 0x60d2 (DVI-D)
Port: 0x07 (DP-B) 0x01 (HDMI-B)
DDC pin: 0x05 0x05
Dock port: 0x00 (N/A) 0x00 (N/A)
HDMI compatible? No Yes
Info: N/A DisplayPort
Aux channel: 0x10 0x00
Dongle detect: 0x01 0x01
EFP device info:
Device type: 0x60d6 (DisplayPort/HDMI/DVI) 0x60d6 (DisplayPort/HDMI/DVI)
Port: 0x08 (DP-C) 0x08 (DP-C)
DDC pin: 0x04 0x04
Dock port: 0x00 (N/A) 0x00 (N/A)
HDMI compatible? No Yes
Info: N/A DVI
Aux channel: 0x20 0x20
Dongle detect: 0x01 0x01
DVO port: 0x00 0x03
panel type 02: 1024x768 3200x1800
Minimum brightness: 0 13
LVDS Config: Embedded DisplayPort Embedded DisplayPort
Panel color depth: 18bpp 24bpp


The original output for both is attached:
View attachment MBP11.1_vbios.log View attachment 9530A05-vbios.log

From the above table it looks like the internal display for both laptops is eDP connected on port 0x0a.
So that should theoretically make it possible to get OS X powering this display.

Maybe it needs some kext framebuffer editing regarding the other ports being mismatched (even though both external HDMI and DisplayPort connectors are working), though HDMI seems to have to re-negotiate the signal)
 
Joined
Jul 3, 2014
Messages
933
Motherboard
Dell XPS 9360 (KabyLake R)
CPU
Intel i7 8550U
Graphics
Intel UHD 620
Mac
MacBook, MacBook Pro
Mobile Phone
Android
Turns out that with an Apple Retina display EDID for the monitor the display shows up in OS X and I can modify the brightness with the slider, but the display remains blank.

After that I started gradually modifying the EDID to reflect the actual monitor specifications.
It bugged out (no longer shows as a valid display, but still shows in IO registry) as soon as I configure the correct pixel clock rate.

According to the Intel specifications, the Intel HD 4600 should be able to push a resolution of:
3840x2160 @ 60 Hz over eDP

Source: http://www.hardwareluxx.com/index.php/reviews/hardware/cpu/26405-haswell-test-intel-core-i7-4770k-and-i5-4670k.html?start=2

Some research shows that the pixel clock rate is apparently limited by the IOKit kext in OS X.
Even though the limit is expanded in 10.9.3 from 165 Mhz to 330 Mhz, thats still below the pixel clock rate my monitor has in its EDID of 373.25 Mhz.

I can confirm 241.50 Mhz still causes the display to be detected, but 373.25 Mhz causes Mac OS X not to show the display as valid anymore. So the cut-off point is somewhere between those ranges.

There is a OS X maximum pixel clock "unlocker" available though: https://code.google.com/r/linzhu0127-port/source/browse/macPixelClockPatcher.command (Referenced from: http://forums.macrumors.com/showthread.php?t=1651886)

I plan to try this out this evening and see if it makes the display show up with its correct EDID and hopefully actually display something.

It would explain though why QHD+ internal displays are problematic in Mac.
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
191,123
Motherboard
Intel DH67BL
CPU
Core i7-2600K
Graphics
Intel HD 3000
Mac
MacBook Air
Mobile Phone
iOS
Turns out that with an Apple Retina display EDID for the monitor the display shows up in OS X and I can modify the brightness with the slider, but the display remains blank.

After that I started gradually modifying the EDID to reflect the actual monitor specifications.
It bugged out (no longer shows as a valid display, but still shows in IO registry) as soon as I configure the correct pixel clock rate.

According to the Intel specifications, the Intel HD 4600 should be able to push a resolution of:
3840x2160 @ 60 Hz over eDP

Source: http://www.hardwareluxx.com/index.php/reviews/hardware/cpu/26405-haswell-test-intel-core-i7-4770k-and-i5-4670k.html?start=2

Some research shows that the pixel clock rate is apparently limited by the IOKit kext in OS X.
Even though the limit is expanded in 10.9.3 from 165 Mhz to 330 Mhz, thats still below the pixel clock rate my monitor has in its EDID of 373.25 Mhz.

I can confirm 241.50 Mhz still causes the display to be detected, but 373.25 Mhz causes Mac OS X not to show the display as valid anymore. So the cut-off point is somewhere between those ranges.

There is a OS X maximum pixel clock "unlocker" available though: https://code.google.com/r/linzhu0127-port/source/browse/macPixelClockPatcher.command (Referenced from: http://forums.macrumors.com/showthread.php?t=1651886)

I plan to try this out this evening and see if it makes the display show up with its correct EDID and hopefully actually display something.
Looks like you're getting somewhere...

It would explain though why QHD+ internal displays are problematic in Mac. If this does not work, then fingers crossed I can use the Yosemite beta seed program to test if its resolved in OS X 10.10
Please read the rules: http://www.tonymacx86.com/faq.php

"Prerelease Software or Developer Builds are covered by NDA and therefore there cannot be any discussion of features included or removed within said software. The NDA also prohibits the distribution of any component contained within these releases. There will be no discussion of installing, help with installing or documenting the use of this type of software. Repeated violations of this rule will result in a permanent ban."
 
Joined
Jul 3, 2014
Messages
933
Motherboard
Dell XPS 9360 (KabyLake R)
CPU
Intel i7 8550U
Graphics
Intel UHD 620
Mac
MacBook, MacBook Pro
Mobile Phone
Android
So there is good news and bad news.

The good news is that the maximum pixel clock unlocker works, the display is now detected as valid by OS X.

However even though an image is coming on the display now in 3200x1800, its flashing enough to mentally brainwash someone.

Subsequently I tried all the different framebuffer configurations to see which ones actually drive the display only the following two seem to work:

  • 0x0A2E0008
  • 0x0A16000C

Additionally I tried editing framebuffer 0 of 0x0A2E0008 to see if modifying the connector type made any difference. I tried LVDS (02 00 00 00), DP (00 04 00 00), HDMI (00 08 00 00) & Unknown/Thunderbold (00 0C 00 00).

Interesting enough even though the changes were reflecting in IORegistryExplorer, it made no other change whatsoever, the display was still getting desktop with flashes.
Note that an external monitor connected at the same time is working fine.

I will try some custom EDID instructions to see if that can take care of the flashing issue.

Rehabman, you have any experience in flashing/glitching displays and how to resolve that?
 
Joined
Jul 18, 2013
Messages
162
Motherboard
HP Pro
CPU
i5
Graphics
Nvidia
Mac
Classic Mac
Mobile Phone
So there is good news and bad news.

The good news is that the maximum pixel clock unlocker works, the display is now detected as valid by OS X.

However even though an image is coming on the display now in 3200x1800, its flashing enough to mentally brainwash someone.

Subsequently I tried all the different framebuffer configurations to see which ones actually drive the display only the following two seem to work:

  • 0x0A2E0008
  • 0x0A16000C

Additionally I tried editing framebuffer 0 of 0x0A2E0008 to see if modifying the connector type made any difference. I tried LVDS (02 00 00 00), DP (00 04 00 00), HDMI (00 08 00 00) & Unknown/Thunderbold (00 0C 00 00).

Interesting enough even though the changes were reflecting in IORegistryExplorer, it made no other change whatsoever, the display was still getting desktop with flashes.
Note that an external monitor connected at the same time is working fine.

I will try some custom EDID instructions to see if that can take care of the flashing issue.

Rehabman, you have any experience in flashing/glitching displays and how to resolve that?
Take note that this experience is only with AMD graphics, and I don't know if this is the case with Intel at all or not, but have you tried sleeping and waking?
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
191,123
Motherboard
Intel DH67BL
CPU
Core i7-2600K
Graphics
Intel HD 3000
Mac
MacBook Air
Mobile Phone
iOS
So there is good news and bad news.

The good news is that the maximum pixel clock unlocker works, the display is now detected as valid by OS X.

However even though an image is coming on the display now in 3200x1800, its flashing enough to mentally brainwash someone.

Subsequently I tried all the different framebuffer configurations to see which ones actually drive the display only the following two seem to work:

  • 0x0A2E0008
  • 0x0A16000C

Additionally I tried editing framebuffer 0 of 0x0A2E0008 to see if modifying the connector type made any difference. I tried LVDS (02 00 00 00), DP (00 04 00 00), HDMI (00 08 00 00) & Unknown/Thunderbold (00 0C 00 00).

Interesting enough even though the changes were reflecting in IORegistryExplorer, it made no other change whatsoever, the display was still getting desktop with flashes.
Note that an external monitor connected at the same time is working fine.

I will try some custom EDID instructions to see if that can take care of the flashing issue.

Rehabman, you have any experience in flashing/glitching displays and how to resolve that?
Not sure... you might post ioreg just to have a look... And you might try injecting EDID... Do you think it has entered a low refresh rate? Is it that kind of flash? (eg. 30 Hz?)

Also, you might try implementing the Haswell brightness fix as it does some things to the IGPU backlight controls which might be helpful.
 
Joined
Jul 3, 2014
Messages
933
Motherboard
Dell XPS 9360 (KabyLake R)
CPU
Intel i7 8550U
Graphics
Intel UHD 620
Mac
MacBook, MacBook Pro
Mobile Phone
Android
Rehabman,

Based on your advice I will try the following steps:


  1. Remove any previously patched DSDT / SSDT from Clover
  2. Remove all kext and kext patches
  3. Use default clover inject intel & ig-platform-id
  4. See if EDID is properly coming in ioreg, inject EDID if required (Since its UEFI boot)
  5. Repatch DSDT / SSDT with ig-platform-id, GFX0 -> IGPU rename and Haswell brightness fix

In between each step I will verify what effect the change has.
Also I will try and find out how to see what refresh rate my display is at, because I did not see that information in the GUI.

I will attach IOreg information this evening when I get home.

Additionally, I think I can try going between MacBookPro11,2 and MacBookAir6,2 to see if there is a difference.
Currently my display options show as a retina display, so I am unable to select any exact resolution as is the case on a non-retina display.

duraaraa, I will try the sleep & wake on the existing build right away and see if that restores it.
Experience is that with some of the other framebuffers, my external display flash goes away if I unplug and re-plug the display. So maybe the same could apply here.
 
Top