Jump to content

E5570: no sleep under Catalina


ktbos

Recommended Posts

I have a Dell Latitude E5570 with the following hardware:

  • Intel l7-6820HQ 2.70GHz Skylake-H
  • Intel HD Graphics 530 / AMD Radeon R7 M370

Nearly identical hardware to that mentioned by @augustopaulo in his post a couple of years ago.  And I'm having one of the same issues he had - it won't sleep/wake correctly.  But I'm running Catalina whereas that post is about High Sierra. 

 

I've set the turn off display to 1 minute and at the one minute mark, it goes off.  A short time later, the power button changes to a slowly pulsing light indicating that it has gone to sleep.  I press the button briefly to wake it up and the light does come on and the display is energized (backlight is on but screen is black) and will show a pointer if I move the mouse but it remains black other than the pointer.  After about 30 seconds, the pointer goes away.  Then a couple minutes later the computer reboots. 

 

I tried adding the EDID as specified in one of the posts in that prior topic.  I tried the EDID from the config.plist that @Jake Lo had included in his bootpack.  And I tried making my own EDID by following the instructions.  I'm happy to report that what I created matched what Jake had posted.  However when I add it to the config.plist file and select the inject EDID checkbox, it doesn't fix the sleep issue.  In fact, and probably most significantly, the return from the command to grep the EDID from the ioreg does not match what I entered into config.plist.  So it's pretty clear that the entry in the config.plist isn't taking effect.  What could I be doing wrong?  Is there anything more to getting the EDID to take than entering it in the box and clicking the checkbox to say inject? 

 

Maybe since that topic and the EDID fix are 2+ years old this approach is no longer applicable.  I am using the WhateverGreen kext while the bootpack in that topic uses the IntelGraphicsFixup, etc..  So maybe WEG injects its own EDID and the one I see in the ioreg grep is the one from WEG.  If that's the case, how should I go about getting sleep working while using WEG? 

 

Is the problem related to having the R7 M370 and if so, how should I go about telling MacOS to ignore that completely? 

 

Attached is my Bootpack.

ktbos-LatE5570-Bootpack.zip

Link to comment
Share on other sites

That did it!  Now at the set sleep display mark, the display dims instead of going right off.  A few moments later, it goes fully off.  Then a few moments after that the power button starts pulsing.  And any time after that I hit the power button, it wakes instantly.  If it is soon, I'm right back to where I was.  If it is longer, it will ask me to log in first and then back to where I was. 

 

Before this change looking at the System Information, my "Graphics/Displays" had two entries where the first one was the R7 M370 (listed generically as a Display adapter) and the second was the HD 530 (listed correctly).  After adding in the aml file, now there is only the one entry in "Graphics/Displays". 

 

This is so awesome, thanks so much @Jake Lo.  I spent half the day yesterday digging through posts looking for something like this and couldn't find it anywhere. 

 

I've gotten greedy now and I'm trying for hibernatemode=3.  Since that's hybrid and since it will mean running out of battery to fully test, it's going to be a while before I know the answer.  But at worst, I will disable hybrid again and be back to regular sleep. 

Link to comment
Share on other sites

Unsurprisingly, I didn't get hibernatemode=3 to work.  In other words, I can't get it to sleep to disk, only to RAM.  That's great for when you want it to wake up quickly but not so great for when it runs out of battery after going to sleep.  It means I need to know before I leave the laptop whether I'm going to be back before the battery runs out so I prepare for a run out of power situation.  Or I could always shutdown the computer.  Or just leave it plugged in.  All are options but none are as cool as MacOS provides for real Apple hardware where it sleeps to disk when it needs to.  I know the hibernate topic has been discussed at length in many other locations but in case I'm missing something, if anyone has suggestions on how to sleep to disk for this E5570, let me know!  Thanks. 

Link to comment
Share on other sites

Yes, I had tried it.  But to be honest, I couldn't remember how I tried it so I went back and did exhaustive testing this morning.  I used the latest HibernationFixup kext from acidanthera.  And the Bootpack is pretty much the same as it was before but with some USBPorts tweaks (I had forgot to test USB3 ports when running Hackintool).  One of the reasons hibernate needs exhaustive testing is because there are so many things that can impact it.  In Clover Configurator, I had initially had the flag set to NeverHibernate.  And there are a bunch of other flags that have the word Hibernate in them that needed to be tested and in combination with each other.  (Documentation about those flags is not very descriptive so I couldn't really figure out which flags are needed for which circumstances.) 

 

There's also the issue of what to set in MacOS.  I eventually settled on doing the following to put things back the way they were originally and then switch to Hibernate mode only. 

sudo pmset -a restoredefaults
sudo pmset -a hibernatemode 25

So with those MacOS settings and with only the flags "StrictHibernate" and "HiberationFixup" selected, I got the closest.  When I select sleep, the computer display immediately goes dark, spends about 30 seconds writing to disk and then the power goes off entirely.  When I turn it back on, I get the BIOS boot, then Clover comes up and shows that the MacOS partition is "(hibernated)" and starts to boot it.  But then it bounces back to the BIOS boot page and when Clover comes up again, there's no more "(hibernated)" and it boots up normally as a new start up.  So right up until it failing to boot from the image, it looks like it is doing the right thing.  I'd like to figure out why it can't boot from that image but I don't really know how. 

 

I thought I'd check out hibernation on the E5470 I have and see how that went.  I fully expected the same result.  But instead on that computer, I can't even get it to save to disk at all.  It pretty much ignores the mode "25" and only sleeps to RAM.  I did the setups the same way on both computers with the same kexts and USBPorts kext and SSDT files.  Besides the differences in the motherboard (including Thunderbolt on the D5570), the SSD on the E5470 is slower and smaller, and maybe most importantly, on the E5470, I have only Mac and Windows with MacOS installed in the first partition while on the E5570, I have MacOS installed on the second partition and I'm also booting Ubuntu.  If anything, I would have assumed the E5470 had a better shot of working so it's really surprising that it actually seems like it doesn't even get as far.  I really don't know what to make of that. 

 

At this point, I'm back to where I was above.  I'm fed up with the exercise of trying to get hibernation working when there are so many pieces that could be contributing to the issue.  But if somebody has a suggestion for a solution, or even to figure out why it won't boot from the hibernated image, I'm willing to give it another try. 

Link to comment
Share on other sites

×
×
  • Create New...