Ok, I hacked around a bit and now mine is working. Hopefully this will help you too.
Because pm-suspend by itself worked just fine, I found how to pass the suspend command directly to HAL here. When doing that, suspend did not work properly. Looking at the architecture of the whole ACPI / HAL / power management stuff showed that HAL could potentially be introducing some quirks when calling pm-suspend.
Looking at this bug report showed me how to figure out which quirks were being set by executing this code:
Code:
$ lshal | grep quirks
power_management.quirk.dpms_on = true (bool)
power_management.quirk.dpms_suspend = true (bool)
power_management.quirk.vbe_post = true (bool)
power_management.quirk.vbemode_restore = true (bool)
power_management.quirk.vbestate_restore = true (bool)
power_management.quirk.vga_mode_3 = true (bool)
On my system, an Averatec 3270, I assumed that it was using the default quirk file, /usr/share/hal/fdi/information/10freedesktop/99-video-quirk-default.fdi. By editting that file as root, I first tried setting all of the values to false. I then reset hal (sudo /etc/init.d/hal restart) and then verified all values were indeed false (lshal | grep quirks). I then hit the suspend button, but it again failed.
After some trial and error, I found that for my machine to work I needed all values to be true, except for "vga_mode_3". Here's my current & correct configuration:
Code:
power_management.quirk.dpms_on = true (bool)
power_management.quirk.dpms_suspend = true (bool)
power_management.quirk.vbe_post = true (bool)
power_management.quirk.vbemode_restore = true (bool)
power_management.quirk.vbestate_restore = true (bool)
power_management.quirk.vga_mode_3 = false (bool)
So...there you have it. Hopefully that will help!
Bookmarks