I have a peculiar problem while trying to resume from both suspend and hibernate. I believe the problem to be within the kernel itself since I have tried different distros (Ubuntu, Suse, Mageia) on different kernel version (12,13,16) with different GPU drivers.
Suspend works, if for a short time. If the machine is asleep for a long duration (shortest I've seen is 90 minutes but may be less) it will not resume. When I say won't resume I don't mean the usual power on but no screen, I mean the chassis fan LED will flash once and nothing will power up. In addition, neither the reset button nor holding the power button work. I have to physically cut the power, wait for the capacitors to discharge then power on.
All of the suspends are issued from the shell (not GUI) using pm-suspend. I've tried the pm_trace method, looked into the logs and found a "Magic number" but there was no "hash matches" entry.
I've tried adding ALL modules to /etc/default/acpi-support
and the problem persists.
It's almost as if the system clock is overwriting something.
My system specs: Asus M4A78LT-LE mainboard with latest BIOS. ATI Radeon HD6790 GPU. AMD Phenom 2 X4 965 Processor
Update:
I now need to try a custom kernel as stated in this ubuntu reference to detect if the BIOS is jumping back into the kernel. To do this I need to modify the arch/x86/kernel/acpi/wakeup_64.S
file to emit a series of system beeps. The problem, I do not know Assembler. I need this for the 3.13.0 kernel, which I know to work on my system, and targeted for AMD 64.
If the problem is indeed the BIOS not jumping back, how might I correct it?