I own a Dell i510m, which has an Intel 855GM graphics card. I had very similar
problems, and finally used the attached hibernate script configuration file to
suspend to RAM my laptop.
For using this in a nice way, I use the acpid and modifify the lid event
file[1] that it executes a script which contains the lines[2].
[1]
action=/etc/acpi/actions/STRam.sh %e
[2]
if (grep -q closed "/proc/acpi/button/lid/$2/state" ) || (test "$2" == 'SBTN'); then
hibernate -F /etc/hibernate/ram.conf
fi
Before I did all these things I used to do the following:
First and more reliable option, issue a video_post when the console is blank
after the lid has been closed. I can't remember the exact URL to download it,
but a simple google search will lead you to it.
The second option is using the vbetool, which I didn't get to use very much, but
it is the one used by hibernate.
The last one is using the hibernate to disk and then power up the laptop, which
is not very handy, but maybe a last alternative in emergency cases.
The problem comes when the video is power down, but nor properly powered up when
opening the lid. I don't know which is to blame, but I suppose it should be
either the bios or the video card.
My brain is a little dense now, but if you need more info just ask again. Sorry
for this.