Messages in this thread | | | Date | Mon, 11 Feb 2013 16:08:38 -0800 | Subject | Re: [Bisected] [-next-20130204] usb/hcd: irq 18: nobody cared | From | Yinghai Lu <> |
| |
On Mon, Feb 11, 2013 at 2:41 PM, Bjorn Helgaas <bhelgaas@google.com> wrote: > [+cc linux-acpi, linux-pci] > > The _PRT describes motherboard interrupt wiring, which has nothing to > do with PCI bus numbers. Our current drivers/acpi/pci_irq.c caches > the PCI bus number along with the _PRT, and I think that's a mistake. > > The bus number binding means acpi_pci_irq_add_prt() has to happen > after enumerating everything below a bridge, and it will prevent us > from doing any bus number reassignment for hotplug. > > I think we should remove the bus numbers from the cached _PRT (or > maybe even remove the _PRT caching completely). When we enable a PCI > device's IRQ, we should search up the PCI device tree looking for a > _PRT associated with each node, and applying normal PCI bridge > swizzling when we don't find a _PRT. I think this can be done without > using PCI bus numbers at all. >
Agreed, will give it try to remove the _PRT caching completely.
Thanks
Yinghai
| |