Ubuntu

Comment 11 for bug 935778

@Seth: Sorry for not having been clear enough.

Without your patched driver:

Suspend and resume work out of the box when suspend is initiated via panel menu entry and without closing the lid. When I suspend by closing the lid I have to disable the "lock screen after screen turns off" setting, otherwise the backlight stays off after resume.

Before suspend I can change the brightness by directly putting some value into the brightness file of any of the three interfaces under /sys/class/backlight. After resume this only works with the brightness file of the intel_backlight interface.

With your driver:

Suspend is successful when initiated via lid close. But after resume the backlight stays off, even with the above mentioned "lock screen" setting disabled. But besides that, the resume seems to be successful. I can blindly switch to console, log in and shutdown. Yet I couldn't manage to get the backlight back on without reboot. Switching to console and back or vbetool dpms on/off cycles didn't help.

When I try to suspend via menu entry the system locks up. The backlight stays on with blank screen and the fan starts running at high speed. Even the magic SysRq key as last resort withholds support. I have to hard power-off the machine. The logs (dmesg, syslog, pm-suspend, Xorg) don't show any failure entries.

Before suspend all three interfaces in /sys/class/backlight are still present and the display brightness still changes when writing directly to any of their brightness files. In the case of the backlight staying off after resume I also tried blindly writing to the brightness files. But the backlight stayed off, so I can't tell whether the brightness would have changed. Of course seeing nothing but a blank screen there is certain possibility that I instead posted all my hidden secrets to Launchpad.

I tested this several times and the behaviour is reproducable. With your driver the system either locks up on soft suspend or the backlight stayes off on resume after lid close suspend.