From mboxrd@z Thu Jan 1 00:00:00 1970 From: Peter Hurley Subject: Re: [PATCH] ACPI, PCI: Get PRT entry during acpi_pci_enable_irq() Date: Tue, 12 Feb 2013 21:20:10 -0500 Message-ID: <1360722010.3604.3.camel@thor.lan> References: <1360696283-20313-1-git-send-email-yinghai@kernel.org> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1360696283-20313-1-git-send-email-yinghai@kernel.org> Sender: linux-kernel-owner@vger.kernel.org To: Yinghai Lu Cc: Bjorn Helgaas , "Rafael J. Wysocki" , linux-pci@vger.kernel.org, linux-acpi@vger.kernel.org, linux-kernel@vger.kernel.org List-Id: linux-acpi@vger.kernel.org On Tue, 2013-02-12 at 11:11 -0800, Yinghai Lu wrote: > Peter Hurley found "irq 18 nobody cared" with pci-next, and dmesg has > > [ 8.983246] pci 0000:00:1e.0: can't derive routing for PCI INT A > [ 8.983600] snd_ctxfi 0000:09:02.0: PCI INT A: no GSI - using ISA IRQ 5 > > bisect to > | commit 4f535093cf8f6da8cfda7c36c2c1ecd2e9586ee4 > | PCI: Put pci_dev in device tree as early as possible > > It turns out we need to call acpi_pci_irq_add_prt() after the pci bridges > are scanned. > > Bjorn said: > 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. > > So here we try to remove _PRT caching completely. > > -v2: check !handle early. > > Reported-and-tested-by: Peter Hurley Actually true now :) Reported-and-tested-by: Peter Hurley Regards and thanks again, Peter Hurley PS - I just happened to see this version on the list. Would you please cc me on any future versions?