- Joined
- Mar 23, 2016
- Messages
- 33
- Motherboard
- Supermicro X11SPL-F
- CPU
- Xeon 5218
- Graphics
- RX 580
- Mac
- Mobile Phone
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.
It turns out this issue does have something to do with a not fully activated iGPU.
Here I finally figured out a recipe that make my hackintosh sleep/wake up normally.
1. Apply Wake up/Shutdown patches with MaciASL to the DSDT.aml
2. Apply the following patch to DSDT.aml. Someone might do SSDT-GPRW + GPRW->XPRW renaming.
But I personally prefer this way since Open core's renaming sometimes does not work as expected.
Code:
Method (GPRW, 2, NotSerialized)
{
If (_OSI ("Darwin"))
{
If (LEqual (0x09, Arg0))
{
Store (0x03, Arg1)
}
If (LEqual (0x0D, Arg0))
{
Store (0x03, Arg1)
}
If (LEqual (0x09, Arg0))
{
Store (0x03, Arg1)
}
}
Return (XPRW (Arg0, Arg1))
}
Method (XPRW, 2, NotSerialized)
{
Store (Arg0, Index (PRWP, Zero))
Store (ShiftLeft (SS1, One), Local0)
Or (Local0, ShiftLeft (SS2, 0x02), Local0)
Or (Local0, ShiftLeft (SS3, 0x03), Local0)
Or (Local0, ShiftLeft (SS4, 0x04), Local0)
If (And (ShiftLeft (One, Arg1), Local0))
{
Store (Arg1, Index (PRWP, One))
}
Else
{
ShiftRight (Local0, One, Local0)
FindSetLeftBit (Local0, Index (PRWP, One))
}
Return (PRWP) /* \PRWP */
}
4. Enable 'Legacy Option ROM' in BIOS
5. Set Primary display to 'Auto' in BIOS
6. Enable Multi-Display in BIOS
7. Insert a dummy Displayport plug (Headless Ghost Display Emulator) one of iGPU's Displayport.
This make sure the iGPU is fully activated.
8. Shutdown and turn on the machine then wait for the system to boot.
In my case, I intentionally make iGPU's Displayport NOT working to avoid having a unusable display.
The drawback of this recipe is that I can't see POST screen. If the computer is stuck at any error, you might
wait for minutes and still not knowing what's going on. I really don't like it but this is the only option I can have right now.
In summary, I believe this is a crappy bug of Dell Optiplex series. This issue can easily be seen in Windows as well.
I wonder why Dell still haven't fixed it. I was thinking to hack the BIOS to fully activate iGPU. However, not like hacking MSR 0xE2 lock that you can at least search for 'b9 e2 00 00 00' to locate the EFI module, I don't know how to locate the module that will be involved when primary display is set to 'Auto' in BIOS.
Or, maybe we can create a kext to fully activate iGPU when booting Hackintosh. I tried to find sample code for doing that but found nothing....
UPDATE: SSDT.aml should be be enabled or the machine will have wake-up-reboot issue.
Attachments
Last edited: