You are not logged in.

#1 2010-08-12 13:45:14

mikezackles
Member
Registered: 2007-09-23
Posts: 41

Acer Aspire One ao521 Suspend/Hibernate issues

First a little background.  As I've mentioned here, I recently updated the BIOS on this machine.  Unfortunately (and stupidly), I didn't backup the original BIOS(1.01), and I haven't found a copy, so I'm stuck with the buggy one (1.03) for now.  As mentioned in the other thread, the machine does not boot without a modified DSDT.  Luckily I have a copy of the old DSDT, so I was able to use vimdiff to isolate the changes that allow me to boot:

DefinitionBlock ("DSDT.aml", "DSDT", 1, "ATI", "SB800", 0x06040000)
{
    Scope (\_SB)
    {
        ...

        Device (PCI0)
        {
            ...

            Method (_INI, 0, NotSerialized)
            {
                \_SB.OSTP ()
                \_SB.PHSR (0x0A, 0xE0)
                /* Removed this part
                Store (0x00, \_SB.PCI0.SMB.GECS)
                Store (0x00, \_SB.PCI0.SMB.USBS)
                */
                ...
            }

            ...

            Device (SMB)
            {
                ...

                OperationRegion (ERMM, SystemMemory, MMSO, 0x1000)
                Field (ERMM, AnyAcc, NoLock, Preserve)
                {
                    ...
                    SLPS,   2, 
                    /* Removed this part
                    GECS,   2, 
                            Offset (0x2B0), 
                            Offset (0x2B1), 
                            Offset (0x2B2), 
                    USBS,   2, 
                    */
                            Offset (0x361), 
                        ,   6, 
                    MT3A,   1, 
                    ...
                }
                ...
            }
            ...
        }
        ...
    }
    ...
}

Now for the suspend issues.  Basically, I can successfully suspend, but resuming fails somewhere before the /var/log/pm-suspend.log is available for writing.  (The hard drive light comes on for a second and then goes off).  I have tried manual suspend, the kernel backend of pm-utils, and the s2ram backend of pm-utils, all with the same results.  (The resume and uresume hooks didn't help).  Using pm_trace, I get the following dmesg output:

...
registered taskstats version 1
  Magic number: 0:50:336
  hash matches drivers/base/power/main.c:437
tty tty57: hash matches
pci 0000:00:13.2: hash matches
...

lspci gives me

...
00:13.2 USB Controller: ATI Technologies Inc SB700/SB800 USB EHCI Controller
...

Neither removing ehci_hcd nor unbinding the device manually made any difference.  I also tried removing as many modules as possible without any luck.
EDIT:  I forgot to mention that I've also tried all the values listed in the DSDT for the acpi_osi kernel param.

I haven't spent as much time futzing with hibernate, but as best I can tell it hibernates and then immediately thaws within a second or two.  Afterwards pm-suspend.log contains a bunch of garbage (non-text) and then several lines that
seem to indicate a successful thaw.

Last edited by mikezackles (2010-08-12 18:09:35)

Offline

Board footer

Powered by FluxBB