Bug 24854 - [GM45] screen remains blank on resume from suspend
[GM45] screen remains blank on resume from suspend
Status: RESOLVED FIXED
Product: xorg
Classification: Unclassified
Component: Driver/intel
7.4 (2008.09)
x86 (IA32) Linux (All)
: medium major
Assigned To: Carl Worth
Xorg Project Team
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2009-11-02 08:10 UTC by dave swen
Modified: 2010-07-12 05:17 UTC (History)
5 users (show)

See Also:


Attachments
with_kms_disabled (19.08 KB, text/plain)
2009-11-02 08:10 UTC, dave swen
no flags Details
Xorg log with blank screen after resume (33.56 KB, text/plain)
2010-03-10 08:59 UTC, Andrea Soster
no flags Details
Xorg log with blank screen after resume (22.98 KB, text/plain)
2010-03-21 09:43 UTC, Andrea Soster
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description dave swen 2009-11-02 08:10:02 UTC
Created attachment 30918 [details]
with_kms_disabled

1.when kms enabled
screen remains blank after resumming from suspend,backlight is on. 
Nothing appears after switching to vt1, too. But I can log on in vt1
blindly,and type 'sudo reboot'.

2.when kms disabled
screen remains blank after resumming from suspend,backlight is on. 
When switching to vt1, everything is OK. switching to vt7 still blank.
Comment 1 dave swen 2009-11-02 08:14:10 UTC
xorg-server 1.7.1
xf86-video-intel 2.9.1
mesa 7.5.2

uname -a
Linux gentoo-on-x200s 2.6.31-gentoo-r4 #2 SMP Mon Nov 2 23:14:49 CST 2009 i686 Intel(R) Core(TM)2 Duo CPU L9400 @ 1.86GHz GenuineIntel GNU/Linux
Comment 2 dave swen 2009-11-02 08:15:16 UTC
after "/etc/init.d/xdm restart",vt7 is back
Comment 3 dave swen 2009-11-05 21:29:32 UTC
broken in 2.6.32-rc6-git3, too.

Linux gentoo-on-x200s 2.6.32-rc6-git3 #1 SMP Fri Nov 6 13:16:21 CST 2009 i686 Intel(R) Core(TM)2 Duo CPU L9400 @ 1.86GHz GenuineIntel GNU/Linux
Comment 4 Carl Worth 2009-11-06 12:19:24 UTC
Dave,

Thanks for the bug report.

There seem to be several recent bug reports of problems with resume and recent
kernels. I'll see if I can replicate and report back more soon.

-Carl
Comment 5 dave swen 2009-11-22 10:21:41 UTC
It seems solved after updating the system a few days ago. I don't know which package makes it fixed, though.
(disable kms)
Comment 6 Rémi Cardona 2009-11-22 14:10:15 UTC
If you've actually disabled KMS, please turn it back on as KMS will be the only available option with the next release.

So please do confirm whether having KMS makes a difference.

Thanks
Comment 7 dave swen 2009-11-22 17:52:09 UTC
Still broken with kms enabled.
Comment 8 dave swen 2009-11-24 17:23:43 UTC
Well,with kms disabled, it worked serveral times, and then broken again.
Comment 9 dave swen 2009-12-22 20:15:00 UTC
When the box is powered on, suspend/resume works for the first time, following suspend/resume(s) cause screen blank, gdm must be restarted to bring display back.

Reboot makes the first suspend/resume work again.

Hope this information helps.

It's broken for months, and it's painful using my laptop without the feature of suspend and resume.

Comment 10 Andrea Soster 2010-03-10 08:59:59 UTC
Created attachment 33924 [details]
Xorg log with blank screen after resume

same problem here with kernel gentoo-2.6.33 and intel drivers 2.10.910

Randomly (I haven't understand when) my screen is blank after resume from suspend. Sometimes I can suspend/resume without problem for a week, and sometimes the screen is blank at the second time I resume. It's really boring...The only choice I have to save what I was working on is to connect an external monitor...thanks

let me know if I can test anything

thansk
Comment 11 Andrea Soster 2010-03-21 09:43:13 UTC
Created attachment 34300 [details]
Xorg log with blank screen after resume

I'm still experiencing the same problem (randomly a blank screen after resume from suspend) even with 2.10.902.
Please note that the screen is ON, but blank.
Comment 12 Luciano 2010-04-26 23:32:41 UTC
Same problem here when KMS enabled.

Xorg 1.7.6
intel 2.11.0 (also on 2.9.0)
kernel 2.6.31 x86-64.
intel 945GM chipset

I see this in my kernel log often (not during the actual suspend/resume), but I think I read somewhere it is just debugging info:

i2c-adapter i2c-1: unable to read EDID block.
i915 0000:00:02.0: LVDS-1: no EDID data

On 2.11.0 this happens everytime I suspend to RAM.

Out of curiostiy, what distro/architecture is everyone using? Original author posted this on gentoo forum: (https://bugs.freedesktop.org/show_bug.cgi?id=24854).
Comment 13 nimrod232 2010-04-29 05:44:06 UTC
> Out of curiostiy, what distro/architecture is everyone using? 

gentoo x86 - tuxonice (kernel 2.6.30-tuxonice-r6 with xorg 1.7.6 and intel 2.9.1)

cheers
Comment 14 Luciano 2010-04-29 08:50:27 UTC
(In reply to comment #13)

> gentoo x86 - tuxonice (kernel 2.6.30-tuxonice-r6 with xorg 1.7.6 and intel
> 2.9.1)

So far everyone seems to be using a gentoo ...is it possible this is a problem with acpi scripts, for example, clashing with gnome power manager?
Comment 15 nimrod232 2010-05-11 13:14:50 UTC
After some google I found a lead to a solution (issued by intel). So far (1 day) only successful wake-ups from S3 (suspend to ram). I did modify the i915_suspend.c (drivers/gpu/drm/i915/) and rebuilt the kernel :) just kick out the two times two lines about save / restore FBC control register:

"dev_priv->saveFBC_CONTROL2 = I915_READ(FBC_CONTROL2);"
"dev_priv->saveFBC_CONTROL = I915_READ(FBC_CONTROL);

and

"I915_WRITE(FBC_CONTROL2, dev_priv->saveFBC_CONTROL2);"
"I915_WRITE(FBC_CONTROL, dev_priv->saveFBC_CONTROL);"

cheers

stefan


> gentoo x86 - tuxonice (kernel 2.6.30-tuxonice-r6 with xorg 1.7.6 and intel
> 2.9.1)
Comment 16 Luciano 2010-05-11 16:31:59 UTC
> So far everyone seems to be using a gentoo ...is it possible this is a problem
> with acpi scripts, for example, clashing with gnome power manager?

So ... recently I've done a few upgrades, to gnome 2.28, and it seems that the problem has gone away. I also reconfigured some bits of gnome. Set the default wm to compiz for example... So like I said before, I think this could be also related to the distro.

Glad to hear there is a kernel fix though.
Comment 17 Chris Wilson 2010-07-12 05:15:14 UTC
commit a2c459ee9aa52a659611ec1f1b43bfde49017b23
Author: Zhao Yakui <yakui.zhao@intel.com>
Date:   Fri Mar 19 17:05:10 2010 +0800

    drm/i915: Only save/restore FBC on the platform that supports FBC
    
    Signed-off-by: Zhao Yakui <yakui.zhao@intel.com>
    Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Comment 18 Chris Wilson 2010-07-12 05:17:00 UTC
Actually the fix would have been:

commit 06027f9111b9f3244ddc40752428f7847b0b867e
Author: Jesse Barnes <jbarnes@virtuousgeek.org>
Date:   Mon Oct 5 13:47:26 2009 -0700

    drm/i915: Save and restore the GM45 FBC regs on suspend and resume.
    
    This hasn't fixed the regressions we were testing against, but clearly
    should be required.
    
    Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
    Signed-off-by: Eric Anholt <eric@anholt.net>

which saves the DPFC_CB_BASE on gm45 instead of FBC_CONTROL*.