Re: IRQ routing problem in 2.6.10-rc2

From: Jesper Juhl
Date: Sun Jul 24 2005 - 11:12:18 EST


On 7/24/05, Jan Engelhardt <jengelh@xxxxxxxxxxxxxxx> wrote:
> >> PCI: Using ACPI for IRQ routing
> >> ** PCI interrupts are no longer routed automatically. If this
> >> ** causes a device to stop working, it is probably because the
> >> ** driver failed to call pci_enable_device(). As a temporary
> >> ** workaround, the "pci=routeirq" argument restores the old
> >> ** behavior. If this argument makes the device work again,
> >> ** please email the output of "lspci" to bjorn.helgaas@xxxxxx
> >> ** so I can fix the driver.
> >Have you tried the suggestion given "... As a temporary workaround,
> >the "pci=routeirq" argument..." ?
> >You could also try the pci=noacpi boot option to see if that changes anything.
>
> Hi,
>
> and what's the proper fix for pci=routeirq? I got a driver that is only
> maintained by myself and would like to fix up the issue.
>
While I don't /know/ exactely what the proper fix is I'll venture a
guess based on the information in the text above : The driver probably
doesn't call pci_enable_device().
Quoting the message at bootup time "If this causes a device to stop
working, it is probably because the driver failed to call
pci_enable_device().".
Also, the Kernel Janitors TODO list
(http://janitor.kernelnewbies.org/TODO) has this to say about
pci_enable_device() :
- ALL PCI drivers should call pci_enable_device --before-- reading
pdev->irq or pdev->resource[]. irq and resource[] may not have correct
values until after PCI hotplug setup occurs at pci_enable_device()
time. Many PCI drivers need to be evaluated and checked for this.

--
Jesper Juhl <jesper.juhl@xxxxxxxxx>
Don't top-post http://www.catb.org/~esr/jargon/html/T/top-post.html
Plain text mails only, please http://www.expita.com/nomime.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/