Contribute
Register

Lenovo M93p HD4600: no graphic display and can't inject EDID

Status
Not open for further replies.
Joined
Jul 24, 2014
Messages
21
Motherboard
Gigabyge GA-Z97-H3D
CPU
i5-4570
Graphics
HD4 000
Mac
  1. MacBook Pro
  2. Mac mini
Classic Mac
  1. Lisa
  2. SE
  3. XL
Mobile Phone
  1. iOS
Hello all,

I have a Lenovo M93p with an Intel Q87 chipset and an i5-4460 processor. I did a fresh install of High Sierra 10.13.6 (Unibeast) and post install with Multibeast, everything works… except the screen.

Unless I prevent the AppleIntelFrameBufferAzul.kext and AppleIntelHD5000Graphics.kext to load (by putting a wrong ig-platform-id), boot goes through a series of 4 "busy timeout (60s) GFX0" and takes 5 minutes before completing with no graphic display (the boot display remains in verbose log mode). I then can access the system via screen sharing.

Looking at the clover log with bdmesg and comparing with another Hackintosh also with a Haswell processor (by a Gigabyte motherboard), I noticed that the system does not detect the EDID from the display.

I then tried to inject a Custom EDID with Clover (using XCode):
<key>Graphics</key>
<dict>
<key>Inject</key>
<dict>
<key>ATI</key>
<false/>
<key>Intel</key>
<true/>
<key>NVidia</key>
<false/>
</dict>
<key>EDID</key>
<dict>
<key>Inject</key>
<true/>
<key>Custom</key>
<data>AP///////wAQrJZATDA0Ny8YAQOALBh46o3VoldSoScOUFSlSwBxT4GAqcABAQEBAQEBAQEBLyZAoGCEGjAwIDUAsuwQAAAaAAAA/wA4SFJQQzRCSTc0MEwKAAAA/ABERUxMIFAyMDE0SAogAAAA/QA4TB5TEQAKICAgICAgAHo=</data>
</dict>
</dict>

In the Clover log I can read "Custom EDID is ok" yet it doesn't load.

Obviously, I would rather fix the root problem of the screen's EDID not being loaded by Clover (BTW, it is loaded properly when I connect the screen to my MacBook Pro). If not, I would like to understand why the custom EDID does not load and fix that.

Thank you all in advance for your help and advice, and of course I attach the problem reporting files ;-)

MacVideoPro
 

Attachments

  • debug_22602.zip
    1.4 MB · Views: 120
everything works… except the screen.
Desktop HD4600 requirements:
- config.plist/Graphics/Inject/Intel=true
- config.plist/Graphics/ig-platform-id=0x0d220003
- config.plist/Devices/FakeID/IntelGFX=0x0
- BIOS DVMT-prealloc 64mb
- digital connection to your monitor (VGA not supported)
- VT-d disabled or use dart=0
Unless I prevent the AppleIntelFrameBufferAzul.kext and AppleIntelHD5000Graphics.kext to load (by putting a wrong ig-platform-id), boot goes through a series of 4 "busy timeout (60s) GFX0" and takes 5 minutes before completing with no graphic display (the boot display remains in verbose log mode). I then can access the system via screen sharing.
Try to boot with an invalid ig-platform-id (0x12345678).
At Clover Boot Screen select Options > Graphics Injector > FakeID and enter 0x12345678
When you reach the desktop, install the kexts Lilu.kext and WhateverGreen.kext to /Library/Extensions using KextBeast.
 
Hello BreBo,

Thank you for your time and advice. So:
ALREADY - config.plist/Graphics/Inject/Intel=true
DONE - config.plist/Graphics/ig-platform-id=0x0d220003
DONE - config.plist/Devices/FakeID/IntelGFX=0x0
NO OPTION IN BIOS - BIOS DVMT-prealloc 64mb
DisplayPort - digital connection to your monitor (VGA not supported)
DONE - VT-d disabled or use dart=0
DONE - install the kexts Lilu.kext and WhateverGreen.kext

... no change. I am attaching the new Clover bootlog

I am not sure that setting ig-platform-id was necessary as the previous Clover boot log shows that Intel GFX auto-detection worked nicely and both "Found ig-platform-id = 0x0D220003" and "Found FakeID Intel GFX = 0x04128086".

Also the "Intel Framebuffer patching using WhateverGreen" page explicitly directs to not using FakeID, ig-platform-ID, etc.
(previously I got slammed on that site because I had set "Graphics/Inject/Intel=true).

I don't mean to prove anyone wrong, I am just trying to get my screen to work and I am confused by conflicting advice ;-)
 

Attachments

  • CloverBootLog.txt
    24.8 KB · Views: 200
Hello all,

I have a Lenovo M93p with an Intel Q87 chipset and an i5-4460 processor. I did a fresh install of High Sierra 10.13.6 (Unibeast) and post install with Multibeast, everything works… except the screen.

Unless I prevent the AppleIntelFrameBufferAzul.kext and AppleIntelHD5000Graphics.kext to load (by putting a wrong ig-platform-id), boot goes through a series of 4 "busy timeout (60s) GFX0" and takes 5 minutes before completing with no graphic display (the boot display remains in verbose log mode). I then can access the system via screen sharing.

Looking at the clover log with bdmesg and comparing with another Hackintosh also with a Haswell processor (by a Gigabyte motherboard), I noticed that the system does not detect the EDID from the display.

I then tried to inject a Custom EDID with Clover (using XCode):
<key>Graphics</key>
<dict>
<key>Inject</key>
<dict>
<key>ATI</key>
<false/>
<key>Intel</key>
<true/>
<key>NVidia</key>
<false/>
</dict>
<key>EDID</key>
<dict>
<key>Inject</key>
<true/>
<key>Custom</key>
<data>AP///////wAQrJZATDA0Ny8YAQOALBh46o3VoldSoScOUFSlSwBxT4GAqcABAQEBAQEBAQEBLyZAoGCEGjAwIDUAsuwQAAAaAAAA/wA4SFJQQzRCSTc0MEwKAAAA/ABERUxMIFAyMDE0SAogAAAA/QA4TB5TEQAKICAgICAgAHo=</data>
</dict>
</dict>

In the Clover log I can read "Custom EDID is ok" yet it doesn't load.

Obviously, I would rather fix the root problem of the screen's EDID not being loaded by Clover (BTW, it is loaded properly when I connect the screen to my MacBook Pro). If not, I would like to understand why the custom EDID does not load and fix that.

Thank you all in advance for your help and advice, and of course I attach the problem reporting files ;-)

MacVideoPro

Your issue is not with EDID.

Your ioreg and misc/preboot.log shows no Intel MEI device on the PCIe bus.
It is required by macOS/OS X.

Note: Correct way to use custom EDID with external displays is to use a display override file.
 
Hello RehabMan,

I truly appreciate your taking the time to look into my issue.

I have to admit that injecting an EDID was a bit of a desperate attempt as I was running out of ideas…

Now that you pointed out the missing MEI, this all makes sense: no MEI = no Azul acceleration = no display and disabling acceleration = no MEI required = display active (but slow)

The Lenovo M93p supports MEI (under Intel's marketing name vPro)… Well, my i5-4460 does not feature vPro. So I am inclined to think that the system in its current configuration does not have Intel's MEI.

[later addition] I had already flashed the latest BIOS for my system and now have investigated further with FwUpdLcl.efi (See this thread) which confirmed that the system has no MEI on this processor/system. At some point I may swap with another processor which has vPro to confirm that this is really processor related.

To the extent that graphics are accelerated under Windows 10 and Linux, I can assume that acceleration does not depend on MEI and try to disable the MEI check in the graphic acceleration kext.

I would prefer to disable AppleMEClientController in AppleIntelFrameBufferAzul.kext's Info.plist > IOKitPersonalities > FBClientController but there is no obvious flag to do so…

If this doesn't work work, based on your contribution in this other thread, I will load code in the kext 10.11.5 kext and try to find similar code (not the exact HEX, but the code sequence) in the High Sierra's AppleIntelFramebufferAzul.kext.

With this different options, I hope that by the end of the week-end I will have a working display with accelerated graphics… and I will report here in my progress.

Thank you again for pointing out the MEI problem.
 
Last edited:
Status
Not open for further replies.
Back
Top