Jump to content

Dell E6540: graphics glitches (HD4600)


Hai Karate

Recommended Posts

I've been through the OpenCore setup process on my E6540 (i7-4800MQ, 16GB, HD8790M, etc...) and gotten Catalina and Big Sur to install and work perfectly EXCEPT for video glitches that render the machine unusable. Usually the screen will momentarily blank or glitch at random intervals, but if you try running a Chromium-based browser like Chrome or Edge on it it will go absolutely bonkers. I have looked around and not found a way to fix that particular issue, which is a shame as it works perfectly otherwise. I switched to a Clover-based boot folder that results in a system that appears to function just as well but has 100% working video. The downside of that setup is that it takes a bit longer to boot.

 

I would be very interested to find out if there is a configuration for OpenCore that fixes that video issue.

Link to comment
Share on other sites

  • Administrators

@Hai Karate, sounds like you've no graphics acceleration at all so it'll be due to a config/setup problem. As Jake said, attach a zipped copy of your OpenCore EFI folder + zipped saved output of IORegistryExplorer. That'll allow us to check what you've got in place and what's possibly incorrect.

Link to comment
Share on other sites

  • Administrators

Conflicting settings...

 

IOReg shows you've injected Azul platform id 0x0a260005, which ain't really the expected value:

IOReg_Azul_FB.jpg

(I'm also a little baffled by the 32bit ref in IORegistryExplorer status bar)

 

This Azul platform injection is confirmed in your OC config in which you've also enabled your patched DSDT. In this patched DSDT, there is an XDSM method under the IGPU device in which HD4600 properties are injected, including the expected Azul platform id 0x0a260006!

OC_Dev_Prop.jpg

 

OC_ACPI_tables.jpg

 

DSDT_IGPU_XDSM.jpg
 

So choose the correct values and avoid mixing/duplicating things... If you inject properties through DSDT, don't redo it (and redo it with different values) in your OC config; and vice versa.

Link to comment
Share on other sites

Most of my EFI folder is taken from the Takiller post linked below with some changes to support my Intel WiFi and the Alps trackpad and built-in keyboard. My OC config was originally injecting 0x0a260006 as it does in the original Takiller one but I read somewhere that 0x0a260005 was a valid value for some models with HD4600 and changed it to that in an attempt to fix the graphics corruption. It definitely didn't work with either value. My mistake to leave that changed value in there when I uploaded the folder.

 

However, you have hit on the correct solution as deleting that redundant addition from the DeviceProperties section of the OC config altogether seems to have fixed the corruption. Thanks for your help!

 

OK, forget that last line. Deleting the DeviceProperties addition results in the acceleration being turned off. About This Mac has a blank line where the GPU should be listed. I've removed the patched DSDT and re-enabled the DeviceProperties addition (now using 0x0a260006) and the acceleration has been re-enabled but the glitches have returned. Clover sets a number of properties relating to the framebuffer that OC does not, so I'm going to see if there's something I can duplicate to get it working.

 

 

Link to comment
Share on other sites

  • Administrators

Graphics glitches affecting HD4600 usually are fixed by patching the Cursor Memory Size. By default, it is set to 6MB in platform id 0x0a260006 and needs to be changed to 9MB:

framebuffer-cursormem        00009000        DATA

See here as linked in the WEG manual.

 

If you've not already done so, remember to disable your dGPU since it's not supported and will use battery power if left enabled/powered on...

Link to comment
Share on other sites

×
×
  • Create New...