amd64-agp: resume but too late?

From: Pavel Machek
Date: Mon May 26 2008 - 14:28:29 EST


Hi!

I don't get it:

--- a/drivers/char/agp/amd64-agp.c
+++ b/drivers/char/agp/amd64-agp.c
@@ -549,6 +549,8 @@ static int agp_amd64_suspend(struct pci_
return 0;
}

+/* FIXME: this is strange; we enable iommu translation here, but that
+ * may be too late, no? */
static int agp_amd64_resume(struct pci_dev *pdev)
{
pci_set_power_state(pdev, PCI_D0);

...but resume is normal pci device, so other devices may be resumed
before this one, and already depend on iommu running...

How is this supposed to work? Should agp_amd64_resume be called from
sysdev or something like that?
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/