ACPI: PCI: follow typical PCI INTx swizzling pattern
No functional change; this just uses the typical pattern of PCI INTx swizzling done on other architectures. Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com> Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
Родитель
3b1ea18d3b
Коммит
ee40136313
|
@ -399,7 +399,7 @@ static struct acpi_prt_entry *
|
|||
acpi_pci_irq_derive(struct pci_dev *dev, int pin)
|
||||
{
|
||||
struct acpi_prt_entry *entry = NULL;
|
||||
struct pci_dev *bridge = dev;
|
||||
struct pci_dev *bridge;
|
||||
u8 bridge_pin = 0, orig_pin = pin;
|
||||
|
||||
|
||||
|
@ -407,9 +407,9 @@ acpi_pci_irq_derive(struct pci_dev *dev, int pin)
|
|||
* Attempt to derive an IRQ for this device from a parent bridge's
|
||||
* PCI interrupt routing entry (eg. yenta bridge and add-in card bridge).
|
||||
*/
|
||||
while (bridge->bus->self) {
|
||||
pin = (((pin - 1) + PCI_SLOT(bridge->devfn)) % 4) + 1;
|
||||
bridge = bridge->bus->self;
|
||||
bridge = dev->bus->self;
|
||||
while (bridge) {
|
||||
pin = (((pin - 1) + PCI_SLOT(dev->devfn)) % 4) + 1;
|
||||
|
||||
if ((bridge->class >> 8) == PCI_CLASS_BRIDGE_CARDBUS) {
|
||||
/* PC card has the same IRQ as its cardbridge */
|
||||
|
@ -431,6 +431,9 @@ acpi_pci_irq_derive(struct pci_dev *dev, int pin)
|
|||
pci_name(bridge)));
|
||||
return entry;
|
||||
}
|
||||
|
||||
dev = bridge;
|
||||
bridge = dev->bus->self;
|
||||
}
|
||||
|
||||
dev_warn(&dev->dev, "can't derive routing for PCI INT %c\n",
|
||||
|
|
Загрузка…
Ссылка в новой задаче