When I suspend the laptop (iBook 14'' 1.42 Ghz, model from July 2005) everything seems to work fine, but when resuming - there's a problem with the framebuffer which causes the screen to cycle through different collors of full screen. It's a very odd problem. Other than the framebuffer, the resume process seems to be complete - I can type 'reboot' and the laptop reboots fine.
Did it work in 2.6.13? What graphics, radeon?
Can you post your config file, dmesg after booting, and fbset -i? The radeon driver has suspend/resume hooks, but nvidiafb and rivafb have none.
Created attachment 6433 [details] dmesg after boot I haven't tried in 2.6.13 because it's a new laptop. I assumed it won't work in 2.6.13 because there's a new patch for the sleep in 2.6.14. It's a radeon 9550.
Created attachment 6434 [details] lspci -vv output
Created attachment 6435 [details] .config for kernel-2.6.14
Created attachment 6436 [details] fbset -i output The output of fbset -i is the same when I ssh to the system after a resume.
OK, now sleep works with pbbuttonsd - so it's some progress. However it does not work with: echo mem > /sys/power/state I thought that should work too.
The PowerMac suspend-to-ram code isn't at the moment hooked to /sys/power/state. I did some work moving the mac code to the main PM infrastructure, but I had to butcher the later in order to make it fit, due mostly to that infrastructure being insufficient for doing something seriously (one of the reasons why sleep on x86 is so bad) and thus the patch didn't go through. I need to work again on this one of these days and get the proper PM core changes in place but didn't have time so far.
Ah OK, now I understand why sleep doesn't work that way. I was sure it should be working just the same so I can use the same scripts etc... Thanks
Should this bug be deferred, fix later?
Well, I need to understand better what is the problem with the framebuffer and if it happens all the time. Is this a transcient panel blooming or is it permanent ? In the later case, is it fixed by another sleep/wake cycle ? That is, is this just a cosmetic issue or it's actually preventing proper use of sleep/wakeup ?
It's permanent, and it leaves you without a display, although the system is running. It's as if the screen goes blank but instead the backlight is on and the screen is not just black, but cycles through different colors. This happens always - on every suspend through /sys/power/state. By the way another problem that happens with sleep through /sys/power/state is that it suspends the laptop and immediately resumes - it doesn't wait for key press/mouses move etc...
And suspend/resume works via pbbuttons lid closing ? Or it does the same ? What exactly do you do to suspend via /sys/power/state ? echo "disk" or "mem" ? "mem" is definitely not implemented properly yet ...
With pbbuttonsd it works fine, either with lid-close or with a 'pbbcmd sleep'. I used 'mem' in /sys/power/state. Isn't 'disk' for software suspend ?
Yes, it is. In fact, I'm surprised the kernel let you try "mem", no wonder it doesn't work, I would have expected an error instead, I must have left something out. So the solution for now is don't do it. I'll get that fixed later. We might be able to do a small patch for now to avoid the crash though, I'll have a look
Benjamin, is there a plan to integrate the pmu sleep interface with /sys/power/state ? and if so how soon would that be ? Thanks
Dunno. I did patches for that a while ago but they involved some changes to the generic PM code to add more hooks that I need, and I didn't get those upstream. I'll have to give it another go sometime later.
Can you confirm that you have no binary-only modules? Has it ever worked properly?
I'm not sure anymore. I now use ubuntu dapper and it works just fine...