Messages in this thread Patch in this message |  | | | Date | Fri, 20 Aug 2004 16:43:31 -0400 | | From | Nathan Bryant <> | | Subject | Re: [ACPI] [PATCH][RFC] fix ACPI IRQ routing after S3 suspend |
| |
Oops. Forgot the patch again. See attached.
Nathan Bryant wrote:
> Stefan Dösinger wrote: > >> If I re-programm the IRQ to something else than IRQ10, the device >> doesn't resume too. So it's not only a problem of IRQ 11. >> >> > Seems like an anything-at-all-other-than-IRQ-10 problem. If the > current thinking is right, your BIOS is assigning IRQ10 during boot, > so moving it anywhere else is what causes problems. > > But the current thinking doesn't quite seem right, because it seeems > like we're seeing these problems after the irqrouter is resumed. Can > you verify that with the attached patch? The patch should give us > enough information as long as you've got the proper kernel loglevel set. > > Now, I wonder if the only reason it works when you set IRQ 10 is that > some other driver is unconditionally claiming the interrupt... > > Nathan > >> The ipw2100 driver calls pci_disable_device in it's suspend handler. >> But I think the ipw2100 maintainers need help with suspend/resume >> because James Ketrenos can't test it on his own system. >> >> > pci_disable_device() only turns off bus-mastering, it doesn't unmap > the I/O or disable the slot. Maybe we also need to set power state D3 > and do a device-specific disable-interrupts, but I think D0 gets > restored for us pretty early during resume anyway... > > Anyway, something doesn't quite add up... > > Nathan >
===== drivers/acpi/pci_link.c 1.32 vs edited ===== --- 1.32/drivers/acpi/pci_link.c 2004-08-18 19:26:48 -04:00 +++ edited/drivers/acpi/pci_link.c 2004-08-20 16:28:40 -04:00 @@ -717,6 +717,8 @@ ACPI_FUNCTION_TRACE("irqrouter_resume"); + printk(KERN_DEBUG "irqrouter_resume: called.\n"); + list_for_each(node, &acpi_link.entries) { link = list_entry(node, struct acpi_pci_link, node);
|  |