suspend/resume improved?

Ulrich Spoerlein q at uni.de
Fri Dec 10 10:04:52 PST 2004


On Wed, 08.12.2004 at 12:58:26 -0800, Nate Lawson wrote:
> Add an infinite loop at various points in the suspend process until it 
> hangs but doesn't reset.  Start with the end of the first function below 
> and work your way backwards.  Once you identify the exact place the 
> reset occurs, we can figure out why.  Use boot -s to keep from having to 
> fsck on each reset or hang.
> 
> AcpiEnterSleepState():sys/contrib/dev/acpica/hwsleep.c

Line 444 is the culprit:
    ACPI_FLUSH_CPU_CACHE ();

    Status = AcpiHwRegisterWrite (ACPI_MTX_DO_NOT_LOCK, ACPI_REGISTER_PM1A_CONTROL, PM1AControl);
    if (ACPI_FAILURE (Status))
    {
        return_ACPI_STATUS (Status);
    }

Putting the loop before AcpiHwRegisterWrite will enter infinite loop,
putting it after it -> Reset

Running with ACPI_DEBUG, this is the last thing I see (hand transcribed)

acpi_lid0: wake_prep enabled for \_SB.LID (S3)
acpi_button0: wake_prep enabled for \_SB.PBTN (S3)
unknown: wake_prep disabled wake for \_SB.PCI0.USB0 (S3)
unknown: wake_prep disabled wake for \_SB.PCI0.USB1 (S3)
unknown: wake_prep disabled wake for \_SB.PCI0.USB2 (S3)
unknown: wake_prep disabled wake for \_SB.PCI0.USB3 (S3)
== acpi_printcpu() debug dump ==
gdt[0077:c0610620] idt[07ff:c06109e0] ldt[0030] tr[0020] efl[00000092]
eax[00000001] ebx[c0e31080] ecx[c0da569c] edx[0009e227]
esi[00000000] edi[00000003] ebp[c5c72af8] esp[c5c72adc]
cr0[8005003b] cr2[08049ed4] cr3[03e25000] cr4[00000691]
cs[0008] ds[0010] es[0010] fs[0018] gs[008f] ss[0010]

ASL and DSDT can be found here
http://www.galgenberg.net/~q/freebsd/

Ulrich Spoerlein
-- 
 PGP Key ID: F0DB9F44				Encrypted mail welcome!
Fingerprint: F1CE D062 0CA9 ADE3 349B  2FE8 980A C6B5 F0DB 9F44
Ok, which part of "Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn."
didn't you understand?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-acpi/attachments/20041210/d2e0d3e2/attachment.bin


More information about the freebsd-acpi mailing list