Messages in this thread | | | Subject | Re: pci-resume patch from 2.6.7-rc2 breakes S3 resume on some machines | From | Matthias Hentges <> | Date | Sun, 21 Nov 2004 09:50:09 +0100 |
| |
Am Sonntag, den 21.11.2004, 09:27 +1100 schrieb Benjamin Herrenschmidt: > On Sat, 2004-11-20 at 09:01 +0100, Matthias Hentges wrote: > > Am Samstag, den 20.11.2004, 18:34 +1100 schrieb Benjamin Herrenschmidt: > > > On Sat, 2004-11-20 at 04:36 +0100, Matthias Hentges wrote: > > > > Am Samstag, den 20.11.2004, 02:43 +0000 schrieb Matthew Garrett: > > > > > Benjamin Herrenschmidt <benh@kernel.crashing.org> wrote: > > > > > > > > > [...] > > > > > > Trying to resume with radeonfb or X (DRI or fglrx) causes the machine > > > > to freeze upon a resume.
> > > At what point does it freeze ? Is the display back before the freeze ? > > > > Sadly the video *never* comes back and stays dark no matter what I try:
[...]
> > The latter shows lots of "[disabled]" entries. Is that of any use? > [...]
> Difficult to say at this point, the [disabled] thing are easy fixed with > a pci_enable_device(). Unfortunately, on some machines, the firmware > sort-of expects the kenrel driver to reboot the card from scratch...
I did some more tests today and found out that "0000:00:01.0 PCI bridge: Intel Corp. 82855PM Processor to AGP Controller (rev 21) (prog-if 00 [Normal decode])"
wasn't correctly resumed either.
I wrote a script to dump the pci data (from lspci -x $device). Importing the data after a resume freezes the machine *if one is touching data that hasn't been changed during S3*. If I only change the values which were modified after resume, the machine does *not* freeze.
Maybe that's the problem with pci_default_resume. It looks like it is just writing back the data it has stored before resuming. Maybe one should only write the values which have actually changed?
Anyways, using my little script, i managed to restore the PCI data of the "Processor to AGP Controller" and the Radeon card after a resume.
If X is running on VT7 and one suspends from VT1 and after resuming switches back to VT7 ( after restoring the PCI data ), the backlight goes on but the display is still empty.
Looks like I'm still missing something. To bad boot-radeon always segsfaults :\ An int10 call after restoring the PCI data might just do the trick. -- Matthias Hentges Cologne / Germany
[www.hentges.net] -> PGP welcome, HTML tolerated ICQ: 97 26 97 4 -> No files, no URL's
My OS: Debian SID. Geek by Nature, Linux by Choice
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |