<br><br><div class="gmail_quote">2009/2/18 Matthew Garrett <span dir="ltr"><<a href="mailto:mjg59@srcf.ucam.org">mjg59@srcf.ucam.org</a>></span><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="Ih2E3d">On Wed, Feb 18, 2009 at 10:41:31AM +0800, sheldon wrote:<br>
<br>
>    I'm trying to find how Xorg handles ACPI (s3 and s4).  It seems that Xorg<br>
>    handles S3/S4( suspend and resume) is just the same as it process VT<br>
>    switching, for both the flow is WaitFofSomething( )-> WakeUpHandle( ) -><br>
>    xf86Wakeup( ) -> xf86VTswitch( ) .<br>
<br>
</div>Xorg doesn't handle S3/S4.<br>
<div class="Ih2E3d"><br>
>    Question 1. Is any different between Xorg handle S3/S4 and VT Switching?<br>
<br>
</div>No - suspend/resume will typically be implemented by VT switching (see<br>
pm-utils or the kernel's own VT switching in kernel/power/main.c)<br>
<div class="Ih2E3d"><br>
>    BUT, xf86HandlePMEvents( ) is never called (I'm using Ubuntu8.10, Xorg<br>
</div>>    1.5.2 *C- a debug version ,compiled by myself). In my system S3/S4 is OK<br>
<div class="Ih2E3d">>    in both console and X.<br>
><br>
>    Question 2. I don't know why, Is Xorg don't need to read ACPI Events ? or<br>
>    using some other methods<br>
<br>
</div>There are no ACPI events that Xorg can usefully respond to directly.<br>
They're all passed to userspace which will take appropriate actions.<br>
<font color="#888888"><br>
--<br>
Matthew Garrett | <a href="mailto:mjg59@srcf.ucam.org">mjg59@srcf.ucam.org</a></font></blockquote><div><br>So, vbetool  saves and restores the video card state, and the Xorg don't even know a S3/S4 happen?<br><br>Thanks <br>
</div></div><br>