Bank screen after resume on Dell XPS M1330
I am struggling with new pet. One of the issues is that resume seems to work but display is blank. I can blindly enter commands (e.g. to cleanly reboot) so system is perfectly alive - just no output on LCD.
This happens on both 2.6.29 and 2.6.30-rc4 in both 32 and 64 bit kernels. Also it happens using init=/bin/sh which at least rules out any video driver issue.
lspci follows just in case. I am open for any patches and suggestions :)
00:00.0 Host bridge: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub (rev 0c)
00:01.0 PCI bridge: Intel Corporation Mobile PM965/GM965/GL960 PCI Express Root Port (rev 0c)
00:1a.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #4 (rev 02)
00:1a.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #5 (rev 02)
00:1a.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #2 (rev 02)
00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 02)
00:1c.0 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 1 (rev 02)
00:1c.1 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 2 (rev 02)
00:1c.3 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 4 (rev 02)
00:1c.5 PCI bridge: Intel Corporation 82801H (ICH8 Family) PCI Express Port 6 (rev 02)
00:1d.0 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801H (ICH8 Family) USB UHCI Controller #3 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801H (ICH8 Family) USB2 EHCI Controller #1 (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev f2) 00:1f.0 ISA bridge: Intel Corporation 82801HEM (ICH8M) LPC Interface Controller(rev 02)
00:1f.1 IDE interface: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) IDE Controller (rev 02)
00:1f.2 SATA controller: Intel Corporation 82801HBM/HEM (ICH8M/ICH8M-E) SATA AHCI Controller (rev 02)
00:1f.3 SMBus: Intel Corporation 82801H (ICH8 Family) SMBus Controller (rev 02)
01:00.0 VGA compatible controller: nVidia Corporation GeForce 8400M GS (rev a1)
03:01.0 FireWire (IEEE 1394): Ricoh Co Ltd R5C832 IEEE 1394 Controller (rev 05)
03:01.1 SD Host controller: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 22)
03:01.2 System peripheral: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter (rev 12)
03:01.3 System peripheral: Ricoh Co Ltd xD-Picture Card Controller (rev
12)
09:00.0 Ethernet controller: Broadcom Corporation NetLink BCM5906M Fast Ethernet PCI Express (rev 02)
0c:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG [Golan] Network Connection (rev 02)
Quoted 2 lines · Andrey Borzenkov
01:00.0 VGA compatible controller: nVidia Corporation GeForce 8400M GS (rev a1)
We don't know how to reinitialise nvidia graphics hardware.
Signature · 1 line
Matthew Garrett | [email protected]
Quoted 5 lines · On Sunday 03 of May 2009 14:59:32 Matthew Garrett wrote:
Quoted 2 lines · Andrey Borzenkov
01:00.0 VGA compatible controller: nVidia Corporation GeForce 8400M GS (rev a1)
We don't know how to reinitialise nvidia graphics hardware.
Just in case - same issue also after resume from hibernation. I was under impression, that hibernation does not have these issues as card goes via normal POST routine.
Hmm ... this implies users of nVidia are locked to proprietary driver if suspend is required?
Quoted 10 lines · Andrey Borzenkov
Quoted 5 lines · On Sunday 03 of May 2009 14:59:32 Matthew Garrett wrote:
Quoted 2 lines · Andrey Borzenkov
01:00.0 VGA compatible controller: nVidia Corporation GeForce 8400M GS (rev a1)
We don't know how to reinitialise nvidia graphics hardware.
Just in case - same issue also after resume from hibernation. I was under impression, that hibernation does not have these issues as card goes via normal POST routine.
Hm. That sounds a bit weirder.
Quoted 2 lines
Hmm ... this implies users of nVidia are locked to proprietary driver if suspend is required?
Right now, yeah.
Signature · 1 line
Matthew Garrett | [email protected]
Quoted 6 lines · On Sunday 03 of May 2009 15:56:03 Matthew Garrett wrote:
Quoted 5 lines · Andrey Borzenkov
Quoted 4 lines · On Sunday 03 of May 2009 14:59:32 Matthew Garrett wrote:
Quoted 2 lines · Andrey Borzenkov
01:00.0 VGA compatible controller: nVidia Corporation GeForce 8400M GS (rev a1)
Quoted 8 lines
Quoted 5 lines
Quoted 1 line
We don't know how to reinitialise nvidia graphics hardware.
Just in case - same issue also after resume from hibernation. I was under impression, that hibernation does not have these issues as card goes via normal POST routine.
Hm. That sounds a bit weirder.
Is it worth further debugging? Anything I can provide?
Quoted 4 lines
Quoted 2 lines
Hmm ... this implies users of nVidia are locked to proprietary driver if suspend is required?
Right now, yeah.
Quoted 9 lines · Andrey Borzenkov
Quoted 8 lines · On Sunday 03 of May 2009 15:56:03 Matthew Garrett wrote:
Quoted 7 lines · Andrey Borzenkov
Quoted 5 lines · On Sunday 03 of May 2009 14:59:32 Matthew Garrett wrote:
Quoted 2 lines · Andrey Borzenkov
01:00.0 VGA compatible controller: nVidia Corporation GeForce 8400M GS (rev a1)
We don't know how to reinitialise nvidia graphics hardware.
Quoted 8 lines
Quoted 6 lines
Quoted 3 lines
Just in case - same issue also after resume from hibernation. I was under impression, that hibernation does not have these issues as card goes via normal POST routine.
Hm. That sounds a bit weirder.
Is it worth further debugging? Anything I can provide?
Try it with minimum config, init=/bin/bash? Switch to plain vga console?
Pavel
Signature · 2 lines
(english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
Quoted 5 lines · On Tuesday 05 of May 2009 23:49:02 Pavel Machek wrote:
Quoted 4 lines · Andrey Borzenkov
Quoted 3 lines · On Sunday 03 of May 2009 15:56:03 Matthew Garrett wrote:
Quoted 2 lines · Andrey Borzenkov
Quoted 1 line · On Sunday 03 of May 2009 14:59:32 Matthew Garrett wrote:
On Sun, May 03, 2009 at 11:11:47AM +0400, Andrey Borzenkov
Quoted 9 lines · wrote:
Quoted 9 lines
Quoted 9 lines
Quoted 8 lines
Quoted 4 lines
Quoted 2 lines
01:00.0 VGA compatible controller: nVidia Corporation GeForce 8400M GS (rev a1)
We don't know how to reinitialise nvidia graphics hardware.
Just in case - same issue also after resume from hibernation. I was under impression, that hibernation does not have these issues as card goes via normal POST routine.
Quoted 6 lines
Quoted 3 lines
Quoted 1 line
Hm. That sounds a bit weirder.
Is it worth further debugging? Anything I can provide?
Try it with minimum config, init=/bin/bash? Switch to plain vga console?
As stated in my first mail, that is exactly what I started with :)
Quoted 16 lines · Andrey Borzenkov
Quoted 5 lines · On Tuesday 05 of May 2009 23:49:02 Pavel Machek wrote:
Quoted 4 lines · Andrey Borzenkov
Quoted 3 lines · On Sunday 03 of May 2009 15:56:03 Matthew Garrett wrote:
Quoted 2 lines · Andrey Borzenkov
Quoted 1 line · On Sunday 03 of May 2009 14:59:32 Matthew Garrett wrote:
On Sun, May 03, 2009 at 11:11:47AM +0400, Andrey Borzenkov
Quoted 9 lines · wrote:
Quoted 9 lines
Quoted 9 lines
Quoted 8 lines
Quoted 4 lines
Quoted 2 lines
01:00.0 VGA compatible controller: nVidia Corporation GeForce 8400M GS (rev a1)
We don't know how to reinitialise nvidia graphics hardware.
Just in case - same issue also after resume from hibernation. I was under impression, that hibernation does not have these issues as card goes via normal POST routine.
Quoted 8 lines
Quoted 6 lines
Quoted 3 lines
Quoted 1 line
Hm. That sounds a bit weirder.
Is it worth further debugging? Anything I can provide?
Try it with minimum config, init=/bin/bash? Switch to plain vga console?
As stated in my first mail, that is exactly what I started with :)
Ok, ok, and even that failed with hibernation?
Pavel
Signature · 2 lines
(english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
Quoted 5 lines · On Wednesday 06 of May 2009 20:52:26 Pavel Machek wrote:
Quoted 4 lines · Andrey Borzenkov
Quoted 3 lines · On Tuesday 05 of May 2009 23:49:02 Pavel Machek wrote:
Quoted 2 lines · Andrey Borzenkov
Quoted 1 line · On Sunday 03 of May 2009 15:56:03 Matthew Garrett wrote:
On Sun, May 03, 2009 at 03:43:28PM +0400, Andrey Borzenkov
Quoted 17 lines · wrote:
Quoted 17 lines
Quoted 3 lines
Quoted 3 lines
Quoted 3 lines
Quoted 3 lines · On Sunday 03 of May 2009 14:59:32 Matthew Garrett wrote:
Quoted 2 lines
On Sun, May 03, 2009 at 11:11:47AM +0400, Andrey
BorzenkovQuoted 12 lines · wrote:
Quoted 12 lines
Quoted 11 lines
Quoted 9 lines
Quoted 5 lines
Quoted 2 lines
01:00.0 VGA compatible controller: nVidia Corporation GeForce 8400M GS (rev a1)
We don't know how to reinitialise nvidia graphics
hardware.Just in case - same issue also after resume from hibernation. I was under impression, that hibernation does not have these issues as card goes via normal POST routine.
Hm. That sounds a bit weirder.
Quoted 8 lines
Quoted 6 lines
Quoted 4 lines
Quoted 1 line
Is it worth further debugging? Anything I can provide?
Try it with minimum config, init=/bin/bash? Switch to plain vga console?
As stated in my first mail, that is exactly what I started with :)
Ok, ok, and even that failed with hibernation?
You are right, I was not careful when testing. I tested once more with two different kernels; hibernation works (also in normal init 3) as long as video settings are the same between suspend and resume. If they differ (e.g. plain VGA before suspend and frame buffer after) display is most likely completely garbled (but still is not blank).
Of course, any attempt to switch to X (using nv driver) after resume is doomed. OTOH *starting* X after resume seems to work.
Sorry for the noise.
Quoted 33 lines · Andrey Borzenkov
Quoted 5 lines · On Wednesday 06 of May 2009 20:52:26 Pavel Machek wrote:
Quoted 4 lines · Andrey Borzenkov
Quoted 3 lines · On Tuesday 05 of May 2009 23:49:02 Pavel Machek wrote:
Quoted 2 lines · Andrey Borzenkov
Quoted 1 line · On Sunday 03 of May 2009 15:56:03 Matthew Garrett wrote:
On Sun, May 03, 2009 at 03:43:28PM +0400, Andrey Borzenkov
Quoted 17 lines · wrote:
Quoted 17 lines
Quoted 3 lines
Quoted 3 lines
Quoted 3 lines
Quoted 3 lines · On Sunday 03 of May 2009 14:59:32 Matthew Garrett wrote:
Quoted 2 lines
On Sun, May 03, 2009 at 11:11:47AM +0400, Andrey
BorzenkovQuoted 12 lines · wrote:
Quoted 12 lines
Quoted 11 lines
Quoted 9 lines
Quoted 5 lines
Quoted 2 lines
01:00.0 VGA compatible controller: nVidia Corporation GeForce 8400M GS (rev a1)
We don't know how to reinitialise nvidia graphics
hardware.Just in case - same issue also after resume from hibernation. I was under impression, that hibernation does not have these issues as card goes via normal POST routine.
Hm. That sounds a bit weirder.
Quoted 8 lines
Quoted 6 lines
Quoted 4 lines
Quoted 1 line
Is it worth further debugging? Anything I can provide?
Try it with minimum config, init=/bin/bash? Switch to plain vga console?
As stated in my first mail, that is exactly what I started with :)
Ok, ok, and even that failed with hibernation?
Quoted 8 lines
You are right, I was not careful when testing. I tested once more with two different kernels; hibernation works (also in normal init 3) as long as video settings are the same between suspend and resume. If they differ (e.g. plain VGA before suspend and frame buffer after) display is most likely completely garbled (but still is not blank).
Of course, any attempt to switch to X (using nv driver) after resume is doomed. OTOH *starting* X after resume seems to work.
Ok, that's what I'd expect. Hibernation _should_ work on any hardware.
Now, nv driver probably has a problem that needs to be fixed... You should be able to use framebuffer X driver and have hibernation totally working for you...
And no, different video modes between hibernation and resume are bad idea.
Pavel
Signature · 2 lines
(english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
Quoted 5 lines · Matthew Garrett
Quoted 2 lines · Andrey Borzenkov
01:00.0 VGA compatible controller: nVidia Corporation GeForce 8400M GS (rev a1)
We don't know how to reinitialise nvidia graphics hardware.
s2ram tool and/or Xserver may be able to reinit the video....
Signature · 2 lines
(english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
Quoted 8 lines · Pavel Machek
Quoted 5 lines · Matthew Garrett
Quoted 2 lines · Andrey Borzenkov
01:00.0 VGA compatible controller: nVidia Corporation GeForce 8400M GS (rev a1)
We don't know how to reinitialise nvidia graphics hardware.
s2ram tool and/or Xserver may be able to reinit the video....
Not for current nivida, except for some Thinkpads.
Signature · 1 line
Matthew Garrett | [email protected]
Quoted 11 lines · Matthew Garrett
Quoted 8 lines · Pavel Machek
Quoted 5 lines · Matthew Garrett
Quoted 2 lines · Andrey Borzenkov
01:00.0 VGA compatible controller: nVidia Corporation GeForce 8400M GS (rev a1)
We don't know how to reinitialise nvidia graphics hardware.
s2ram tool and/or Xserver may be able to reinit the video....
Not for current nivida, except for some Thinkpads.
Ok, that's bad. There still should be chance to reverse-engineer the BIOS or tweak the emulation in libx86 until it works with the nvidias, but... that's a lot of work.
Pavel
Signature · 2 lines
(english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
Quoted 6 lines · Pavel Machek
Quoted 1 line · Matthew Garrett
Not for current nivida, except for some Thinkpads.
Ok, that's bad. There still should be chance to reverse-engineer the BIOS or tweak the emulation in libx86 until it works with the nvidias, but... that's a lot of work.
nvidia BIOSes call into chunks of system BIOS code that aren't available after boot. They rewrite themselves so the c000:0003 entry point just returns in order to prevent you from executing random code. It's not an emulation issue. The only way to fix this is to finish nouveau's implementation of the nvidia bios table bytecode and execute the init tables on resume.
Signature · 1 line
Matthew Garrett | [email protected]