Contribute
Register

Dell Optiplex 9020 SFF Catalina wake up screen flickering

Status
Not open for further replies.
Joined
Mar 23, 2016
Messages
33
Motherboard
Supermicro X11SPL-F
CPU
Xeon 5218
Graphics
RX 580
Mac
  1. MacBook Pro
Mobile Phone
  1. iOS
Hi All,

My new hackintosh build's screen got flickering on eGPU right after waking up from sleep.
Here are my machine's details:
1. Dell Optiplex 9020 SFF
2. i7-4790S
3. 32GB RAM
4. AMD Radeon WX 4100
5. Archer T9E WiFi adapter

The eGPU works perfectly on a Optiplex 7010 SSF build.
It is very strange that the flickering disappears if I plug another monitor into iGPU's displayport.
Does anyone know how to fix this issue?
Any hint for debugging this issue would also be appreciated.

Thank you.
 

Attachments

  • IMG_5133.JPG
    IMG_5133.JPG
    2.3 MB · Views: 90
  • EFI.zip
    2.8 MB · Views: 84
Hope you can accept a bit of guessing - The screen looks similar to screens where the gpu memory has been corrupted and I wonder about the cards config but given that it worked with similar settings(?) on the 7010 then that seems less likely, Id be playing with BIOS settings first, enabling/disabling uefi option roms and trying the available GPU settings /auto/Intel/AMD. Another possibility is cabling issues. Not sure if your card/monitors/cables allow it but swapping which monitor goes to which port may make a difference as do which System definitions used 14,3 or 15,1 seem likely.

Edit - just had a look at your config, Ive not used OpenCore but this seems like it should not be there

<key>PciRoot(0x0)/Pci(0x2,0x0)</key>
<dict>
<key>AAPL,ig-platform-id</key>
<data>
AwAiDQ==
</data>
<key>device-id</key>
<data>
EgQAAA==
</data>
</dict>

Unless this refers to your particular processor (i dont think it does) it is likely to interfere.

The little Ive read on OC makes me think that several of the other settings are not needed (USB/Sata renames) but Im very ignorant of all things OC and you should check before giving the opinion any value.

And - Id take the KVM switches out of the equation - any adaptors cause issues on a standard 7020 build and kvm might do similar and complicate the troubleshooting.
 
Last edited:
Hope you can accept a bit of guessing - The screen looks similar to screens where the gpu memory has been corrupted and I wonder about the cards config but given that it worked with similar settings(?) on the 7010 then that seems less likely, Id be playing with BIOS settings first, enabling/disabling uefi option roms and trying the available GPU settings /auto/Intel/AMD. Another possibility is cabling issues. Not sure if your card/monitors/cables allow it but swapping which monitor goes to which port may make a difference as do which System definitions used 14,3 or 15,1 seem likely.

Edit - just had a look at your config, Ive not used OpenCore but this seems like it should not be there

<key>PciRoot(0x0)/Pci(0x2,0x0)</key>
<dict>
<key>AAPL,ig-platform-id</key>
<data>
AwAiDQ==
</data>
<key>device-id</key>
<data>
EgQAAA==
</data>
</dict>

Unless this refers to your particular processor (i dont think it does) it is likely to interfere.

The little Ive read on OC makes me think that several of the other settings are not needed (USB/Sata renames) but Im very ignorant of all things OC and you should check before giving the opinion any value.

And - Id take the KVM switches out of the equation - any adaptors cause issues on a standard 7020 build and kvm might do similar and complicate the troubleshooting.

Thank you for your hints.
I set ig-platform-id=0300220D and device-id=12040000 by following Opencore's official guide:
And these two settings do let me use both eGPU and iGPU simultaneously.

As you mentioned about BIOS settings, I rebooted the machine with Legacy Option ROM disabled then the machine
stopped responding after waking up. However, with Legacy Option ROM enabled, I still can connect to the desktop remotely.

By the way the issue persists either with updated or original GOP of my WX 4100 graphics card.
 
"I set ig-platform-id=0300220D and device-id=12040000 by following Opencore's official guide:" sorry Ive misunderstood your setup. Have alook and maybe post here https://www.tonymacx86.com/threads/...k-27-ips-monitor.277811/page-184#post-2148869

noticed this line in post 1 of that thread - 'AMD Radeon Pro WX 4100 is also supported in macOS Mojave.'
Id ask and trs96 is likely to know how it fares in Catalina

The wake issue is almost certainly to do with the HD4600 - the settings for this GPU may not be right within OSX but in any case the settings in use for hackintoshing are for a chip similar to the 4600 as the proper 4600 settings tried by some of the most knowledgeable peeps on here dont work. Suspect not setting up in headless mode while you are troubleshooting is a good idea. (See trs96's post for both headless ad non headless mode settings).
 
Last edited:
"I set ig-platform-id=0300220D and device-id=12040000 by following Opencore's official guide:" sorry Ive misunderstood your setup. Have alook and maybe post here https://www.tonymacx86.com/threads/...k-27-ips-monitor.277811/page-184#post-2148869

noticed this line in post 1 of that thread - 'AMD Radeon Pro WX 4100 is also supported in macOS Mojave.'
Id ask and trs96 is likely to know how it fares in Catalina

The wake issue is almost certainly to do with the HD4600 - the settings for this GPU may not be right within OSX but in any case the settings in use for hackintoshing are for a chip similar to the 4600 as the proper 4600 settings tried by some of the most knowledgeable peeps on here dont work. Suspect not setting up in headless mode while you are troubleshooting is a good idea. (See trs96's post for both headless ad non headless mode settings).

Per trs96's instructions, I tried both headless and non-headless modes.
In headless mode, the machine simply crashed when waking up.
In non-headless mode, the screen connected to eGPU was flickering while the screen connected to iGPU was working.
However, the iGPU screen was flashing repeatedly every 5 seconds.

By the way, I noticed that Optiplex 7010 and 9020 don't seem to fully enabled iGPU when you enable Multi-Display and select eGPU as primary display. Though the BIOS says iGPU is enabled when you select eGPU as primary, Windows 10 still can't load the driver for it:
"This device is not working properly because Windows cannot load the drivers required for this device. (Code 31)"
 
Last edited:
By the way, I noticed that Optiplex 7010 and 9020 don't seem to fully enabled iGPU when you enable Multi-Display and select eGPU as primary display. Though the BIOS says iGPU is enabled when you select eGPU as primary, Windows 10 still can't load the driver for it:
"This device is not working properly because Windows cannot load the drivers required for this device. (Code 31)"
The GPU setting does make a difference as to what things are enabled - 'Auto' is not the same as selecting what auto seems to select as primary. Sorry cant remember the details but I think you are right and the iGPU gets disabled, I noticed a difference building without an external GPU but Ive never seen the error message in Windows that you describe.

If you are using dual monitors, which monitor goes in which port is significant and it seems that DP to DP cables are easier to get working than DP to HDMI on the iGPU.

Id check whether anybody else has got the particular 4100 you have, to sleep properly. There are small but significant differences between the models with different chips and even between manufacturers with the same chip and Id ask (probably on trs's post) whether anyone has got sleep working a. with your card and b. with your card in this machine.

You might try building it without the eGPU and once thats right, add the 4100 and make that work. Starting off with simplest config is a useful method to find out settings when you are not certain what is interfering and I used it early on in trs's build to discover the significant BIOS settings (some of which needed changing when an eGPU was added). This is for building a vanilla machine - https://www.tonymacx86.com/threads/...the-experienced-4k-ready.279108/#post-1970782 and includes a possibly outdated section on the differences between with and without a eGPU.

There are other things that might help here but they relate to hidden BIOS settings - the DVMT allocation should be at least 64MB for OSX and may be set to 32 and CFG lock is unalterable thru the BIOS menus but can be disabled. See - https://www.tonymacx86.com/threads/...the-experienced-4k-ready.279108/#post-1970782 which is about getting 4k monitors to work on the iGPU but includes those changes mentioned.
 
Last edited:
The GPU setting does make a difference as to what things are enabled - 'Auto' is not the same as selecting what auto seems to select as primary. Sorry cant remember the details but I think you are right and the iGPU gets disabled, I noticed a difference building without an external GPU but Ive never seen the error message in Windows that you describe.

If you are using dual monitors, which monitor goes in which port is significant and it seems that DP to DP cables are easier to get working than DP to HDMI on the iGPU.

Id check whether anybody else has got the particular 4100 you have, to sleep properly. There are small but significant differences between the models with different chips and even between manufacturers with the same chip and Id ask (probably on trs's post) whether anyone has got sleep working a. with your card and b. with your card in this machine.

You might try building it without the eGPU and once thats right, add the 4100 and make that work. Starting off with simplest config is a useful method to find out settings when you are not certain what is interfering and I used it early on in trs's build to discover the significant BIOS settings (some of which needed changing when an eGPU was added). This is for building a vanilla machine - https://www.tonymacx86.com/threads/...the-experienced-4k-ready.279108/#post-1970782 and includes a possibly outdated section on the differences between with and without a eGPU.

There are other things that might help here but they relate to hidden BIOS settings - the DVMT allocation should be at least 64MB for OSX and may be set to 32 and CFG lock is unalterable thru the BIOS menus but can be disabled. See - https://www.tonymacx86.com/threads/...the-experienced-4k-ready.279108/#post-1970782 which is about getting 4k monitors to work on the iGPU but includes those changes mentioned.

I happened to have another WX4100 with different board ID. Tried it out but the issue is still there.
I will remove the eGPU to see if machine works ok without eGPU.
By the way, I also changed the following BIOS variables. But it didn't make any differences.

Internal Graphics (offset 0x278): 0x02 (auto) -> 0x01 (enabled)
DVMT Pre-Allocated (offset 0x263): 0x01 (32MB) -> 0x03 (96 MB)
 
The DVMT change should help but -
Where did you get this one from? Ive not seen it discussed -
- Internal Graphics (offset 0x278): 0x02 (auto) -> 0x01 (enabled)
(or it just duplicating the changes possible in the bios menu?)

The cfg lock is likely to be significant to OSX - although OC seems to deal with it, if you are making changes then that's a good one to have set in firmware
 
Last edited:
The DVMT change should help but -
Where did you get this one from? Ive not seen it discussed -
- Internal Graphics (offset 0x278): 0x02 (auto) -> 0x01 (enabled)
(or it just duplicating the changes possible in the bios menu?)

The cfg lock is likely to be significant to OSX - although OC seems to deal with it, if you are making changes then that's a good one to have set in firmware

"Internal Graphics" is an hidden option according to IFR extracted by ifrexactor.
I was guessing that this issue might have something to do with a not fully activated iGPU.
So I tried to make Internal Graphics always enabled.

By the way, sleep/wake up work normally if eGPU is removed.
"Legacy Option ROM" must be enabled or the connected screen will be flashing after booting into the system.
However, when "Legacy Option ROM" is enabled, you cannot see POST screen.
I am feeling so desperate....
 
frustration - pretty normal here.
My thinking is that if anybody has had this working they most likely havnt made that bios firmware change so Im not sure about your Internal graphics change being for the good - just don't know enough about it.

The HD4600 settings are an issue with a cause that nobody seems to be certain of and the workaround (use hd5200 settings) seems not to be perfect.

Have you found anybody who has it; a. working, b. with this version of OSX or c.with the 7020?
It may not be possible with this particular setup - I'd ask in the main 7020 thread and hope trs96 replies, there are so many quirks here and he has followed a lot of problems.

POST screen - I think I always saw that - try the other dp port (the one that gets you sound from your monitor is the right one). Re the bios settings in post 3 of the 7020 vanilla guide, im not sure if the details mentioned in the vanilla thread about with GPU are rightly reported but the ones shown for without gpu work perfectly.

Sysdefs? without eGPU i know 14,3 works, with eGPU much less certain and anything between 14,1 to 15,3 might work.

And check you have turned off hibernation in OSX.
 
Last edited:
Status
Not open for further replies.
Back
Top