Jump to content

HD 7xxx-Can we eliminate the Sleep Trick?


eep357
 Share

188 posts in this topic

Recommended Posts

Couple of thoughts.  Have you tested the app in safe mode?  Set security to allow any app to run?  I ran into that snag rebuilding mine and I forgot to fix that stuff.  

 

Have you tried the rotate script?  It's pretty easy to do and works for me even on multi monitors.  Just have to get it right.   If you have more than one monitor try working with just one at a time.  My sleep doesn't work because of a bios issue but rotate fix helps me. 

Yup, and yup.

I can't get the rotate trick to work properly even for a single display.

The rotate script does activate, but *after* the sleep cycle. 

And as DAXGr mentioned, I can see my desktop after it.

 

Well you do get higher performance/USD with the 7950 but nVidia has better support with OSX. Get the 7950 if it has UEFI GOP VBIOS and your mobo can boot clover in UEFI mode else 670 if ease of use means much to you. I would wait though and see how 10.9 plays with both cards.

Knowing the GTX6xx have better OSX support, I initially wanted to get a nVidia card, but apart from the GTX680/690, it seems none of their cards have a miniDP :(

Link to comment
Share on other sites

  • 1 month later...

K3nny, could you please edit this VBIOS for GOP support?  I am using an MSI VBIOS of a very similar card right now and getting a few graphical glitches.  The MSI card has a 50Mhz higher clock.

 

Original VBIOS: (XFX HD7870 FX-787A-CNFC): https://dl.dropboxusercontent.com/u/6316213/Mac%20Guides%20%26%20Instructions/Clover%20UEFI%20HD7xxx%20Series%20Project/1.%20%20Enable%20UEFI%20GOP%20VBIOS/Original/Pitcairn.rom

 

I can boot the UEFI Clover screen (after disabling Secure Boot) and select my 10.8.4 install, but after the verbose output it goes to all an all black screen.  I am re-reading the Clover help page to see what I seems to be the problem.

 

This is on an P9X79 Pro running BIOS ver 4005.  There are no unusual errors in the verbose output.

 

Edit:

1.  Tried a different framebuffer (Chutoro) and now get the white screen instead of the black screen as before.  Aji does not work for my 7870.

 

2.  I then attempted to edit the VBIOS myself, but it appears I did it incorrectly as I still get the white screen after flashing to it and booting with Clover UEFI64-bit with Secure Boot disabled.

Link to comment
Share on other sites

K3nny, could you please edit this VBIOS for GOP support?  I am using an MSI VBIOS of a very similar card right now and getting a few graphical glitches.  The MSI card has a 50Mhz higher clock.

 

Original VBIOS: (XFX HD7870 FX-787A-CNFC): https://dl.dropboxusercontent.com/u/6316213/Mac%20Guides%20%26%20Instructions/Clover%20UEFI%20HD7xxx%20Series%20Project/1.%20%20Enable%20UEFI%20GOP%20VBIOS/Original/Pitcairn.rom

 

I can boot the UEFI Clover screen (after disabling Secure Boot) and select my 10.8.4 install, but after the verbose output it goes to all an all black screen.  I am re-reading the Clover help page to see what I seems to be the problem.

 

This is on an P9X79 Pro running BIOS ver 4005.  There are no unusual errors in the verbose output.

 

Edit:

1.  Tried a different framebuffer (Chutoro) and now get the white screen instead of the black screen as before.  Aji does not work for my 7870.

 

2.  I then attempted to edit the VBIOS myself, but it appears I did it incorrectly as I still get the white screen after flashing to it and booting with Clover UEFI64-bit with Secure Boot disabled.

Hi, the file is not available anymore but it shouldn't matter much at this point. Please check if you are really booting in UEFI mode by disabling the CSM (Compatibility Support Module) in your BIOS. If you can make it to the point when you can use the sleep trick, it should be an issue with the framebuffer setting I believe. Try different variants: Aji, Dashimaki, Futomaki and Hamachi are the most compatible ones.

Link to comment
Share on other sites

  • 1 month later...

@ fnordsensei

Thanks for the script. It works as its supposed to when run manually.

But I can't get it to run during the white screen.

Adding the Automator app to "Login Items" makes the script run *after* I can successfully boot in by manually hitting the power button to sleep and waking back up.

Would appreciate any help on how to go about fixing this.

Thanks in advance.

 

You need to auto login for this to work. Also, try to increase the 20 seconds and see if that helps. If the script is invoked, but the machine is for some reason prevented to go to sleep for 20 seconds, the "wake up" is going to be run before the script has a chance to put the machine to sleep. Unfortunately, I have not been able to discern a way to set the timer to count from the moment the machine goes to sleep, only from the moment the sleep command is sent to the system, which may be well before that.

Link to comment
Share on other sites

  • 2 weeks later...

I wrote a script to automate the sleeping/waking cycle. Available here: http://cl.ly/PEL2

 

Make sure to change PASSWORD to your user password as pmset needs to be run by root. Also change time_to_sleep to whatever is desired. 20 seconds oddly enough seems to be pretty much instantaneous on my machine.

 

In plain text:

#!/bin/bash
time_to_sleep=20 #seconds
now=$(date +%s)
target_unix=$(($now+$time_to_sleep))
target_time=$(date -r $target_unix +"%m/%d/%y %T")
echo PASSWORD | sudo -S pmset schedule wake "$target_time"
if [ $? -eq 0 ]; then
	pmset sleepnow
else
	echo "This script must be run as root."
fi
EDIT: Running the code as an Automator application seems to work better.

 

How can I make this into a automator app?

Apologies but I'm new to OSX.

Link to comment
Share on other sites

  • 1 month later...
  • 2 months later...

Some info on bypassing the "Sleep Trick"

 

Hardware requirements:

  • UEFI capable motherboard
  • HD 7000 series video card, obviously
Software requirements:
  • EFI capable video card VBIOS (UEFI GOP)
  • UEFI boot manager - currently only Clover is capable of UEFI mode
Should you not meet the hardware requirements, then this is not for you.

 

Should you meet them, check your VBIOS for GOP support. One way to do it is to dump it with GPU-Z for instance and check the area 0x10000 to 0x20000 with a hex editor.

If all you can see is an ongoing sequence of same bits, then your VBIOS does not contain the GOP driver and you will have to turn to the manufacturer for an update. Another way is simply flash another similar card's VBIOS which is known to support GOP. This is very experimental though and I can not recommend it.

 

Once you made sure that your card supports GOP, set up Clover in UEFI mode. These might be very few words on the subject but let's not misuse this thread and stick to the topic. Use Clover's GraphicsEnabler and find out which framebuffer works for you, most probably "Aji" will do it.

 

That's all. I'm sure that there must be other ways to get around it but this is what has worked for me.

 

If you want to inject the video properties by yourself, this should be the minimum needed to get around the bug:

Example with an XFX Radeon HD 7870 (Vendor Id: 1002, Device Id: 6818) set to use the Aji framebuffer with all its 4 ports:

"model",
Buffer (0x13)
{
"XFX Radeon HD 7870"
},
"ATY,DeviceID",
Buffer (0x04)
{
0x18, 0x68
},
"@0,name",
Buffer (0x0D)
{
"ATY,Aji"
},
"@1,name",
Buffer (0x0D)
{
"ATY,Aji"
},
"@2,name",
Buffer (0x0D)
{
"ATY,Aji"
},
"@3,name",
Buffer (0x0D)
{
"ATY,Aji"
}

 

 

Please place your DSDT file here.I have a ASUS 7870 but have a little problem.I'm use this DSDT.

Thanks...

Link to comment
Share on other sites

  • 2 years later...

I wrote a script to automate the sleeping/waking cycle. Available here: http://cl.ly/PEL2

 

Make sure to change PASSWORD to your user password as pmset needs to be run by root. Also change time_to_sleep to whatever is desired. 20 seconds oddly enough seems to be pretty much instantaneous on my machine.

 

In plain text:

#!/bin/bash
time_to_sleep=20 #seconds
now=$(date +%s)
target_unix=$(($now+$time_to_sleep))
target_time=$(date -r $target_unix +"%m/%d/%y %T")
echo PASSWORD | sudo -S pmset schedule wake "$target_time"
if [ $? -eq 0 ]; then
	pmset sleepnow
else
	echo "This script must be run as root."
fi
EDIT: Running the code as an Automator application seems to work better.

 

 

So, I made an Automator app containing this script in OS X 10.8.5 as well as a launch agent to run it while I was stuck at my grey/white screen... and it worked!!! I finally managed to get to desktop with my R9 270X, however, it only worked once and now on subsequent boots my display just goes black (as if not input signal) after a short while sitting at the grey/white screen and the system never actually sleeps/wakes..

 

Any thoughts on why this only worked the one time?

Link to comment
Share on other sites

 Share

×
×
  • Create New...