Hi Graeme
On 5/21/15 03:03, Graeme Gregory wrote:
- if (!bridge) {
struct device *hb_dev = pci_get_host_bridge_device(dev);
struct pci_host_bridge *h_br = NULL;
if (hb_dev)
h_br = to_pci_host_bridge(hb_dev);
if (h_br)
ret = acpi_pci_irq_find_prt_entry(h_br->bus, 0, pin,
&entry);
pci_put_host_bridge_device(hdev);
Was this compile tested? hdev is undefined here according to my compiler
Graeme
if (!ret && entry) {
ACPI_DEBUG_PRINT((ACPI_DB_INFO,
"Derived GSI for %s INT %c from %s\n",
pci_name(dev), pin_name(orig_pin),
"host bridge"));
return entry;
}
}
dev_warn(&dev->dev, "can't derive routing for PCI INT %c\n",
Sorry, I was cleaning up some code and accidentally missed this part. Here is what I intended to have. This is now retested.
diff --git a/drivers/acpi/pci_irq.c b/drivers/acpi/pci_irq.c index 671c92c..5658b7d 100644 --- a/drivers/acpi/pci_irq.c +++ b/drivers/acpi/pci_irq.c @@ -375,11 +375,11 @@ static struct acpi_prt_entry *acpi_pci_irq_lookup(struct pci_dev *dev, int pin) if (h_br) ret = acpi_pci_irq_find_prt_entry(h_br->bus, 0, pin, &entry); - pci_put_host_bridge_device(hdev); + pci_put_host_bridge_device(hb_dev); if (!ret && entry) { ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Derived GSI for %s INT %c from %s\n", - pci_name(dev), pin_name(orig_pin), + pci_name(hb_dev), pin_name(orig_pin), "host bridge")); return entry; }
Thanks,
Suravee