AppleIntelSKLGraphicsFramebuffer.kext

Here is the first data from the AppleIntelSKLGraphicsFramebuffer.kext binary that I like to share with you:

06 00 1B 19 00 00 00 00 91 09 08 00 00 00 00 00
01 01 01 01 00 00 60 02 00 00 00 00 00 00 00 60
6C 05 00 00 6C 05 00 00 00 00 00 00 00 00 00 00
00 00 08 00 02 00 00 00 98 04 00 00 FF 00 00 00
01 00 00 00 20 00 00 00 FF 00 00 00 01 00 00 00
20 00 00 00 FF 00 00 00 01 00 00 00 20 00 00 00
02 13 13 00 00 00 06 00 03 00 00 00 04 00 00 00
80 DF 17 10 00 00 00 00 78 05 00 00 D2 05 00 00
40 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00
10 23 1B 00 00 00 00 00 60 24 1B 00 00 00 00 00
60 24 1B 00 00 00 00 00 01 00 00 00 08 00 00 00
00 00 00 00 00 00 00 00

The above example will activate/support only one display, and some of the data is well known by now so I am going to skip stuff like the black value, which is (still) the platformID.

Unused/disabled frame buffer data (see orange values) have also changed.

New are the red values, all represent a different kinds of version information.

New is the blue value, representing the number of Slices (Slice Count).

New is the green value, representing the number of Execution Unit (EU Count).

The purple data is used for the TCON configuration and this is what I found in the log file of my MacBookPro13,3:

kernel: (AppleIntelSKLGraphicsFramebuffer) IG: TCON:
kernel: (AppleIntelSKLGraphicsFramebuffer) Aux not ready at HW
kernel: (AppleIntelSKLGraphicsFramebuffer) IG: TCON:
kernel: (AppleIntelSKLGraphicsFramebuffer) BAN_DPCD_0x0_EXPECTED failed, got deadbeef

See also:

AppleIntelFramebufferAzul.kext (Part I)
AppleIntelFramebufferAzul.kext (Part II)
AppleIntelFramebufferAzul.kext (Part III)

3 thoughts on “AppleIntelSKLGraphicsFramebuffer.kext

    • That depends on the BIOS. Notebooks are usually a bit more complicated, but the NDA agreement is keeping people from publishing data that is required to solve this puzzle, once and for all.

      • Hi Pike, I saw this issue affect not only skylake laptop but also on desktop skylake. Is that because of the AppleEFINVRAM.kext?

        Thanks,
        syscl

Leave a comment