You are not logged in.

#1 2008-11-14 08:56:38

string
Member
Registered: 2008-11-03
Posts: 286

Resuming from pm-suspend on a Dell Inspiron 6400

Hello.

Recently I decided I'd take care of power management on my Dell Inspiron 6400. First step: getting suspend to ram/suspend to disk (hibernate) working. I installed pm-utils. pm-hibernate works without problems, however, I can't manage to resume from pm-suspend. First and most importantly, I'm not aware of the proper way to "trigger" a resume from pm-suspend (i.e.: which keys/buttons to push) -- however, if I push the power button, it appears that it *attempts* to resume but the display doesn't power on. Pressing CTRL+ALT+DEL now works and reboots the system.

I have an ATI Radeon Mobility X1400.

Further notes:

  -> using pm-suspend --quirk-dpms-on doesn't seem to want to actually `suspend` in the first place (the command exits without the system having been suspended -- no visible errors)
  -> using pm-suspend --quirk-vbe-post will "blank" the display - such as, say, a screensaver, however I can see the WiFi led is still bright meaning the wireless network card is still functional (these two most likely indicate that the suspend operation was a failure). I can "resume" from this by simply pressing a key.

Edit: I forgot to mention that I tried uswsusp's s2ram -- same issue. (even though Dell Inspiron 6400 is whitelisted)

Last edited by string (2008-11-14 08:59:12)

Offline

#2 2008-11-14 12:17:04

string
Member
Registered: 2008-11-03
Posts: 286

Re: Resuming from pm-suspend on a Dell Inspiron 6400

Update: I managed to get it working by modifying the `video` hook, as such:

# diff /etc/pm/sleep.d/99video /usr/lib/pm-utils/sleep.d/99video
192,193c192
< #    suspend) suspend_video ;;
<     suspend) vbetool dpms off ;;
---
>     suspend) suspend_video ;;
199,200c198
< #    resume) resume_video ;;
<     resume) vbetool dpms on ;;
---
>     resume) resume_video ;;

which basically makes sure that the display is turned off/on using vbetool (vbetool dpms off / vbetool dpms on). Any reasons why I shouldn't go on and use this (some sort of hidden side effect)?

Last edited by string (2008-11-14 12:17:47)

Offline

#3 2008-11-14 13:39:06

patroclo7
Member
From: Bassano del Grappa, ITALY
Registered: 2006-01-11
Posts: 915

Re: Resuming from pm-suspend on a Dell Inspiron 6400

This is an old trick which should have no side effect all. I has used it for years with the hibernate script in an old laptop of mine (now dead for independent reasons smile )


Mortuus in anima, curam gero cutis

Offline

#4 2008-11-14 14:02:08

string
Member
Registered: 2008-11-03
Posts: 286

Re: Resuming from pm-suspend on a Dell Inspiron 6400

Heh, I should *hope* it's now dead for independent reasons smile What trickery are you using on newer laptops? (or are you now using hardware which does not need tricks?)

I can see opening the lid triggers a resume from (at least) pm-suspend. The only natural step was to make sure closing the lid triggers the suspend itself. I cooked up this:

# cat /etc/acpi/events/a-lid
event=button[ /]lid
action=/etc/acpi/mylid.sh
# cat /etc/acpi/mylid.sh
#!/bin/bash

grep -q closed /proc/acpi/button/lid/*/state
if [$? = 0]; then
        pm-suspend
fi

+ acpid

Does anyone have any comments on my "complete" suspend solution so far (i.e.: You're doing it wrong -- and such) ?

Update: spotted something. My BIOS settings dictate that the display brightness should be 50% lower when the laptop is running on battery. This works as expected, but if, whilst on battery, I close and then open the lid -> brightness goes to 100% rather than 50%. Not sure how to fix this, nor what tools can be used to control display brightness.

Last edited by string (2008-11-14 14:14:02)

Offline

#5 2008-11-16 09:19:15

string
Member
Registered: 2008-11-03
Posts: 286

Re: Resuming from pm-suspend on a Dell Inspiron 6400

I guess I'm unable to find a good "fix". I suppose I'll have to simply manually adjust the brightness after resume via Fn+Down (which works out of the box, oddly enough). I suppose I *could* make use of /proc/acpi/video/*/LCD/brightness -- the only problem being that I can not figure out why I have "VID", "VID1", "VID2" (in /proc/acpi/video) and how they are different.

Offline

Board footer

Powered by FluxBB