ACPI suspend/resume [now working]

YONETANI Tomokazu qhwt+dfly at les.ath.cx
Thu Sep 22 20:43:25 PDT 2005


On Thu, Sep 22, 2005 at 06:49:37PM -0700, Matthew Dillon wrote:
> 
> :After playing around a little, I found that the following patch makes 
> :suspend/resume work:
> :..
> :
> :
> :icu_reinit() has been in previous FreeBSD versions of acpi_wakeup.c.
> :
> :I am not sure, whether this is the right way to fix it though.
> :
> :  Johannes
> 
>     Nice work!  It does make sense... interrupts could get stuck while
>     the machine goes to sleep for various reasons and re-initing the 8259
>     would definitely fix that.  I will commit it.

Excellent.  icu_reinit() has been replaced with intr_suspend() and
intr_resume() in the following commit in FreeBSD, far before our
importing the 5.x code.

|revision 1.30
|date: 2003-11-04 07:18:57 +0900;  author: jhb;  state: Exp;  lines: +4 -3;
|- Update includes.
|- Use intr_suspend/resume() callouts to the interrupt code layer which
|  suspends and resumes all the known interrupt sources instead of calling
|  icu_reinit() directly.

Those functions are abstructions for different kind of PICs, and
seem to wind up doing the similar thing as icu_reinit() does.





More information about the Users mailing list