Jump to content

Need help adding mobile IGPU TO OpenCore config.plist


2 posts in this topic

Recommended Posts

So I'm following the guide here https://1revenger1.gitbook.io/laptop-guide/prepare-install-macos/display-configuration

I have a laptop with an Intel Core i3-4005U with Intel HD 4400 graphics. Using ProperTree to add-on framebuffer-fbmem (34000 for 34MB) and framebuffer-stolenmem (64000 for 64MB) and using the data type it keeps saying in both cases that hex data needs to be an even number of characters and asks if I would like to continue editing? How do I get around this?
Am I following the instructions correctly?

Also under special notes he States under bullet point 2, he States a device-id that's different 

Can someone explain this?

Annotation 2020-03-23 180551.png

Edited by WindowsMac
Attached picture of config.plist in ProperTree

Simple. Neither 34000, nor 64000 are hexadecimal numbers for the purpose you meant... Furthermore, they're incorrect values!

 

Basic computing teaching (I mean really most basic):

  • decimal uses 10 numerals in the range {0 1 2 3 4 5 6 7 8 9}
  • hexadecimal uses 16 numerals in the range {0 1 2 3 4 5 6 7 8 9 A B C D E F}
  • 1 bit has 2 possible values in the range {0 1}
  • 1 byte is 8 bits
  • 1 byte therefore has 2 power 8, i.e. 256 possible values in the range {0...255} in decimal or {00...FF} in hex
  • 1kB is 1024 bytes
  • 1MB is 1024 * 1024 bytes, i.e. 1 048 576 bytes

So:

  • 34MB is 34 * 1024 * 1024 bytes, i.e. 35 651 584 bytes
  • 64MB is 64 * 1024 * 1024 bytes, i.e. 67 108 864 bytes
  • 35651584 in decimal converts to 0x02200000 in hex (4 bytes, each of 2 x characters, it's even)
  • 67108864 in decimal converts to 0x04000000 in hex (4 bytes, each of 2 x characters, it's even)

 

With regards to device id, it's quite simple too. Apple has no official support for Haswell mobile iGPUs HD4200 / HD4400 / HD4600 (they did not use them), only for Haswell desktop iGPU HD4600. As such, desktop HD4600 id 0x0412 has to be faked with mobile HD4x00 iGPUs for OS X/macOS to support them. Also note that the ig-layout-id required for mobile HD4400 iGPU usually is 0x0a260006.

 

Now bear in mind 2 x important things:

  1. hex values are specified in reversed (byte) order in that config file. For instance, ig-layout-id 0x0a16000c is specified "0C00160A" and device id 0x0412 is specified "12040000".
  2. Haswell graphics do not usually require to specify framebuffer memory size and stolen memory; that requirement starts with subsequent Broadwell graphics.

 

Edited by Hervé
×
×
  • Create New...