ACPI Notes for ASUS A7V8X-X Motherboard in Linux

Mauriat Miranda (http://www.mjmwired.net/contact/)

Other Guides/Resources

Published: 15 September 2004 (updated: 13 June 2005)

Post To: del.icio.us, furl, digg, spurl, gmail this, Blog this
Tweet
Show-Hide Menu

Introduction

Goal: ACPI S1 or S3 should Work, S4 Work

Status: ACPI S1 Works, S3 Works, S4 Untested

This guide is a set of notes I compiled to document my progress in trying to get ACPI properly working with the ASUS A7V8X-X Motherboard. I plan to use this board for at least the next 12-18 months. I would like to get the full ACPI features it has to work in Linux.

This page is geared for some more technical and involved processes. Keep in mind this works for me, so take care in doing proper backups to critical files whenever trying something.

Note: All notes are relative to the date they were composed. Please keep that in mind.


Hardware

The relevant hardware in my system includes the following. Other than the USB controller, I do not think any other components make a significant difference.


Windows

I'm using Windows as a comparison. So far I've seen ACPI states S1 (Standby), S3 (Suspend to RAM, STR), and S4 (Suspend to Disk, "Hibernate") work 100% correctly. This was Windows 2000 fresh install and SP1-SP4, also Windows XP fresh install and SP1-SP2.

Hence ACPI should be possible in Linux. I care most for S3 mode.


BIOS

There are many BIOS releases for this motherboard. So far I have tested the following releases:


Drivers

Most all drivers are included in the Linux Kernel (below), however the Nvidia driver is NOT. In the Nvidia 1.0-7664 README support for S3 is mentioned in Appendix Q. Power Management Support. Also if you read Appendix F. Configuring AGP, it is recommended you try the Option "NvAgp" "1" in the Devices section of your /etc/X11/xorg.conf.

AGPGART does work correctly in the 1.0-7664 driver. The NvAgp option was NOT required for me.

Note: The following is also mentioned in the Nvidia README:

Early SBIOS revisions for the ASUS A7V8X-X KT400 motherboard misconfigure
the chipset when an AGP 2.x graphics card is installed; if X hangs on
your ASUS KT400 system with either Linux AGPGART or NvAGP enabled and the
installed graphics card is not an AGP 8x device, make sure that you have
the lastest SBIOS installed.

Linux Kernel

These current tests were using Fedora Core 4. FC4 includes kernel 2.6.11-1.1369_FC4.

Mode S1 worked correctly in FC1. FC1 used a 2.4 based kernel. In in FC2 and FC3, I have had mixed results. FC4 seems to work correctly for S1, however I have to hit the POWER button twice to wake the computer from S1.

To test S1 unload all extra unnecessary modules, go to runlevel 3 (init 3 - this may not be necessary). Make sure you have the acpid daemon loaded. To put the computer to sleep the following, and then press the Power button to resume from sleep. This does not work reliably under FC2 or FC3.

[root@charon root]# echo 1 > /proc/acpi/sleep

Mode S3 requires the 2.6 kernel. Previously this mode worked partially if you unload any extra modules, disable framebuffer console and stay in runlevel 3 (ie. no X-server running). HOWEVER, currently those steps are not necessary. S3 will work with framebuffer console also.

I am able to get S3 work with a default FC4 install. The only problem noted is the USB mouse does not reload, but removing the module and reloading it seems to work.

The following is my s3.sh script I use to test this mode.

#! /bin/bash
vt=`/usr/bin/fgconsole`

/usr/bin/chvt 12
/etc/rc.d/init.d/acpid stop
/sbin/modprobe -r button
/sbin/hwclock --systohc
echo 3 > /proc/acpi/sleep
/sbin/hwclock --hctosys
/sbin/modprobe button
/etc/rc.d/init.d/acpid start
/usr/bin/chvt $vt
# USB mouse work-around
/sbin/modprobe -r uhci-hcd
/sbin/modprobe uhci-hcd
linux-2.6.11/Documentation/power/video.txt from the kernel source (or from any newer kernel), you will find many more ideas.


Miscellaneous

So far I've noticed the extra miscellaneous facts:

Running MySQL may prevent S1 or S3 from working correctly. - Solution: disable MySQL temporary before sleep, then re-enable on wake up. Ex: Before echo 3 > /proc/acpi/sleep add:
/etc/init.d/mysqld stop After, add:
/etc/init.d/mysqld start


Status

My current status is that both S1 and S3 work CORRECTLY. The USB mouse does not properly re-detect, however unloading and reloading the module works. I am using kernel 2.6.11-1.1369 and Nv 1.0-7664. I have not tested S4 yet, however the Nvidia README mentions that S4 is not reliable.

Please contact me if you have any ideas or thoughts to share on this situation.


Comments, suggestions, questions or any feedback welcome for this page or any of my Resources. Please use the contact link.

Help Out: If you found this guide or any Resource helpful, please consider supporting this site by recommending this page to others or linking to this page. I appreciate all the support I receive. Thank you in advance.

Disclaimer: The author makes no claim to the accuracy of the information provided. This information is provided in the hope that it will be useful, but WITHOUT ANY WARRANTY. There is no implied support from referencing this guide. Any help that is provided is at will. Use this information at your own risk. Always make proper backups and use caution when modifying critical system files.

PLEASE DO NOT mirror, translate or duplicate this page without contacting me.

Copyright © 2003-2013 by Mauriat Miranda (mjmwired.net).