Contribute
Register

[Guide] Intel Framebuffer patching using WhateverGreen

The way I'm thinking of implementing this in Intel FB-Patcher is if you have modified 3 or more connector fields then it will switch to this method of patching.

Instead of automatic selection of patching method, perhaps a checkbox is more appropriate.
People can then choose semantic vs. binary themselves.

BTW, I think most using -alldata patching will be constructing the data without the help of FB-Patcher.
 
@headkaze
Can you tell me more about this KextToPatch is broken in Mojave ? (only for FB ?)

KextsToPatch is not broken.

It is just that the patches we would typically use for SKL/KBL/CFL kexts do not work as the ig-platform table is initialized at startup instead of as static data in the kext.
Sandy/Ivy/Haswell works as before with KextsToPatch, but the WhateverGreen has several advantages that makes it worth switching to.
Not sure about the Broadwell kext (with regards to dynamic vs. static ig-platform table), as I haven't looked at it yet.
 
Maybe you could just add an option to "Patch Options" to select this method manually, that would be just as easy. (IMHO)

Okay I have added it as an option "Use AllData Method".

Not sure about the Broadwell kext (with regards to dynamic vs. static ig-platform table), as I haven't looked at it yet.

Anything below SKL can still use KextsToPatch. I've added this info to the first post.
 
Last edited:
Hi Guys,


Any idea, what is going wrong, or what I could be doing wrong?
The used patches are the same, only the methods differ. (see below)

grtz,
Sander.


View attachment 350458

Shouldn't that Properties be a Dictionary instead of an Array? In the OP (and Clover wiki) it is using "Properties" instead of "AddProperties." No idea if that matters, just commenting!
 
Shouldn't that Properties be a Dictionary instead of an Array? In the OP (and Clover wiki) it is using "Properties" instead of "AddProperties." No idea if that matters, just commenting!

Devices/AddProperties is an array, as is Devices/Arbitrary.

Devices/Properties can be string, data, or dictionary, depending on how you want to specify the property list.
Devices/Properties as dictionary is easier than using string/data (as you don't have to use gfxutil to generate the data).
Devices/Properties as dictionary is a relatively new feature in Clover.

All of the above methods, as well as ACPI _DSM are valid ways to inject properties.
 
Updated the first post to include info about AllData patching and added the option to Intel FB-Patcher
 
Hi,
i tried to follow this guide but can't get it to work on mojave with intel i5-6500 and Asrock H110M-DGS...
the motherboard has 1 DVIDL Port, it worked in High Sierra with IntelGraphicsFixup.
 

Attachments

  • config.plist
    8.8 KB · Views: 163
Hi,
i tried to follow this guide but can't get it to work on mojave with intel i5-6500 and Asrock H110M-DGS...
the motherboard has 1 DVIDL Port, it worked in High Sierra with IntelGraphicsFixup.

Connector patches are zero-based. So to patch the first connector use "con0".

I also recommend people try Intel FB-Patcher (with Framebuffer->macOS 10.13.6 (17G2112) menu option). It has a GUI that makes patching easier.
 
Hi,
i tried to follow this guide but can't get it to work on mojave with intel i5-6500 and Asrock H110M-DGS...
the motherboard has 1 DVIDL Port, it worked in High Sierra with IntelGraphicsFixup.

Values for the properties must be specified as type <data>. You're trying to use <integer> (shown as Number in Xcode), which is not supported.

See examples in post #1.
 
You're trying to use <integer> (shown as Number in Xcode), which is not supported.

Technically integer's are supported (they will convert to 4 byte data internally) but data is the recommended way. I think he's trying to patch the wrong connector.
 
Back
Top