Re: Toshiba Satellite P10 + ati-drivers (fglrx)

Jaco Kroon
2005-12-25T20:32:32Z

[-- Attachment #1: Type: text/plain, Size: 1681 bytes --]

Pavel Machek wrote:
>>Now, initially when I switch back to X I get the correct image on the
>>bottom third of the screen with the top two thirds seemingly corrupted.
>> This is pretty normal and is identical to what I normally see when
>>switching between consoles and X. This lasts for about half a second
>>before it freezes up and causes a hard-lock. Normally the screen just
>>resets itself at the time it now locks up.
>
>
> I'm sorry, there's no way we can help you with fglrx. I'm glad at
> least s-t-disk works.

Was the ati-agp module in the kernel. Adding some suspend/resume
support for that module fixes all and I can now happily suspend-to-ram
and successfully resume. I've mailed a patch to the agpgart maintainer
and cc'ed the lkml. For refference purposes the patch (based on
http://unixhead.org/docs/thinkpad/ati-agp/ati-agp.diff) is as follows,
and I'll also make it available on my website:

--- linux-2.6.15-rc6/drivers/char/agp/ati-agp.c.orig 2005-12-25
22:21:32.000000000 +0200
+++ linux-2.6.15-rc6/drivers/char/agp/ati-agp.c 2005-12-25
22:23:33.000000000 +0200
@@ -243,6 +243,15 @@
return 0;
}

+static int ati_resume(struct pci_dev *dev)
+{
+ return ati_configure();
+}
+
+static int ati_suspend(struct pci_dev *dev, pm_message_t state)
+{
+ return 0;
+}

/*
*Since we don't need contigious memory we just try
@@ -525,6 +534,8 @@
.id_table = agp_ati_pci_table,
.probe = agp_ati_probe,
.remove = agp_ati_remove,
+ .resume = ati_resume,
+ .suspend = ati_suspend,
};

static int __init agp_ati_init(void)

--
There are only 10 kinds of people in this world,
those that understand binary and those that don't.
http://www.kroon.co.za/

[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/x-pkcs7-signature, Size: 3166 bytes --]