Contribute
Register

[Guide] Intel Framebuffer patching using WhateverGreen

But on the latest 10.13.6 High Sierra version for MacBooks 17G2112. Does it work on the 17G65 version too?
I just read your Asus configuration where you say you changed to 0x3E9B0007 frame buffer from release 4,4
My experience is I needed to spoof kaby lake with 59120000 on 17G65 version.
Thanks for your help.

Yes, you should be on 17G2112 or newer to use 3E9B0007.
 
@pastrychef
@headkaze

I've installed on a spare drive MacOS High Sierra 17G2112
Now I can use AAPL,ig-platform-id 3E9B0007 and on B360 motherboard I don't need the kext-to-patch frame buffers that were needed on High Sierra 17G65 to fix the black screen issue.
BUT
I have no acceleration. Video card has 7MB.
I also have no HDMI Audio.
 
Last edited:
@pastrychef
@headkaze

I've installed on a spare drive MacOS High Sierra 17G2112
Now I can use AAPL,ig-platform-id 3E9B0007 and on B360 motherboard I don't need the kext-to-patch frame buffers that were needed on High Sierra 17G65 to fix the black screen issue.
BUT
I have no acceleration. Video card has 7MB.
I also have no HDMI Audio.

You might want to check out Intel FB-Patcher. It can also help you patch for audio.
 
@pastrychef
@headkaze

I've installed on a spare drive MacOS High Sierra 17G2112
Now I can use AAPL,ig-platform-id 3E9B0007 and on B360 motherboard I don't need the kext-to-patch frame buffers that were needed on High Sierra 17G65 to fix the black screen issue.
BUT
I have no acceleration. Video card has 7MB.
I also have no HDMI Audio.

Remember to use gfxutil to find your device path. This is true for both IGPU and for audio.
 
@pastrychef
@headkaze
Thanks for you reply.

They're the same I use on 10.13.6 17G65.
On 17G65 with 59120000 everything works fine.

I use these settings on 17G2112 and I loose acceleration and HDMI audio.
It might have to do with the B360 H370 board gen.
But on 17G2112 I don't have to use the kext-to-patch entries to bypass the black screen (this is a documented issue for B360, H370 boards).
Did you test the 17G2112 version on B360 or H370? Z370 is something else.

Graphics
DevicePath = PciRoot(0x0)/Pci(0x2,0x0)
AAPL,ig-platform-id 07009B3E

Audio
DevicePath = PciRoot(0x0)/Pci(0x1f,0x3)
layout-id 01000000
 
Last edited:
Did you test the 17G2112 version on B360 or H370? Z370 is something else.

You can see what hardware we have in our profiles. I think you're going to need to do a bit more experimenting. ie. Find out if you need DVMT pre-alloc 32 MB, DP -> HDMI, Spoof SKL Audio or FB Port Limit patches. You can try to do more reading/searching/research or just try them and see if they help.
 
Just updated my i5-8600k + RX580 to 10.13.6 and updated my Whatevergreen+Lilu kexts and have verified HEVC support while rending 4k video through final cut pro. Verified AirPlay and iTunes works no issues. Used iStats Menus to verify the intel integrated UHD 630 was working with the Asus RX 580 8gb

I tried to verify with MacX Converter and it shows that there is no support for hardware encoding. Is this just cosmetic? I followed post #1 and have full RX580 acceleration and integrated graphics with no problem.
 

Attachments

  • Screen Shot 2018-09-05 at 7.55.32 PM.png
    Screen Shot 2018-09-05 at 7.55.32 PM.png
    377.6 KB · Views: 331
We definitely need a way to patch framebuffer connector data in bulk.

For example, I have used these two patches to reorganize the 0x193b0005 (remove LVDS@0, change 0105 to HDMI):

Find: <01030404 00002002>
Replace: <01030303 00002002>

Find: <00000800 02000000 98000000 01050900 00040000 c7010000 02040a00 00040000 c7010000 03060a00 00040000 c7010000>
Replace: <01050900 00080000 c7010000 02040a00 00040000 c7010000 03060a00 00040000 c7010000 00000800 02000000 98000000>

I'd rather transition to a patching method that is NOT conditional on existing data in the kext ig-platform table. Doing the same without using find/replace, requires 27 property injections (3x for header data, and 6x per each of the 4 connectors). Yuck!

I'll look into the necessary changes for WhateverGreen, and submit a PR when ready.

Side note: It was a bit of a surprise to have all connectors patched by default to HDMI. This computer has 2x DP, and 1x HDMI. Took me a bit of head scratching to figure why all connectors had changed to HDMI without my doing any patching to the framebuffer! Eventually figured I needed -igfxnohdmi to turn off this default/undesired behavior of WhateverGreen.
 
Back
Top