As it turns out, according to the system information in my BIOS settings, DVMT is actually set to 64MB by default. I tried various values for stolen/cursormem, including disabling framebuffer patching altogether, and they all produced the same result, a crash after `gIOScreenLockState` (except for very low values <16MB-ish which just panicked).
You might try without WhateverGreen.kext. There are few reports of WhateverGreen causing problems with CFL, and to some extent with 64mb DVMT-prealloc, you don't need it (maybe even WhateverGreen is patching things that don't need patching with CFL).
Also, I've been looking at WhateverGreen code... trying to implement a new feature, and here's a few things I found out:
- the -igfxdump attempts to dump the entire framebuffer kext from memory (after init), not just the platform table
- if you use an invalid ig-platform-id, although the framebuffer will load, the -igfxdump has no effect
- no patching of the platform table is performed with an invalid ig-platform-id
- it makes it a bit of a challenge to get a list of ig-platform-id values if you can't boot the system with a valid ig-platform-id
- even with a valid ig-platform-id (such as the system I'm writing this message on, my u430), -igfxdump creates just a zero byte file in the root (useless)
- clearly, -igfxdump is bugged
- WhateverGreen has very limited support for patching when spoofing is in play (only CFL as KBL)
- if you spoof anything else (eg. CFL as KBL, KBL as SKL), WhateverGreen-based patching properties have no effect
- it does not hook all the graphics kexts/all framebuffers... it hooks only certain kexts based on CPU architecture
I have a version locally here that can dump the platform data to ioreg. It dumps both before and after patching, and can dump when an invalid ig-platform-id is used, so it is relatively useful for getting platform id dumps. By using a (valid) fake device-id and invalid ig-platform-id, you can get platform list dumps for any framebuffer, no matter the hardware you have.
I will be submitting a pull request on github for that one for sure.