Loading drivers/acpi/pci_irq.c +7 −4 Original line number Original line Diff line number Diff line Loading @@ -399,7 +399,7 @@ static struct acpi_prt_entry * acpi_pci_irq_derive(struct pci_dev *dev, int pin) acpi_pci_irq_derive(struct pci_dev *dev, int pin) { { struct acpi_prt_entry *entry = NULL; struct acpi_prt_entry *entry = NULL; struct pci_dev *bridge = dev; struct pci_dev *bridge; u8 bridge_pin = 0, orig_pin = pin; u8 bridge_pin = 0, orig_pin = pin; Loading @@ -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 * 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). * PCI interrupt routing entry (eg. yenta bridge and add-in card bridge). */ */ while (bridge->bus->self) { bridge = dev->bus->self; pin = (((pin - 1) + PCI_SLOT(bridge->devfn)) % 4) + 1; while (bridge) { bridge = bridge->bus->self; pin = (((pin - 1) + PCI_SLOT(dev->devfn)) % 4) + 1; if ((bridge->class >> 8) == PCI_CLASS_BRIDGE_CARDBUS) { if ((bridge->class >> 8) == PCI_CLASS_BRIDGE_CARDBUS) { /* PC card has the same IRQ as its cardbridge */ /* PC card has the same IRQ as its cardbridge */ Loading @@ -431,6 +431,9 @@ acpi_pci_irq_derive(struct pci_dev *dev, int pin) pci_name(bridge))); pci_name(bridge))); return entry; return entry; } } dev = bridge; bridge = dev->bus->self; } } dev_warn(&dev->dev, "can't derive routing for PCI INT %c\n", dev_warn(&dev->dev, "can't derive routing for PCI INT %c\n", Loading Loading
drivers/acpi/pci_irq.c +7 −4 Original line number Original line Diff line number Diff line Loading @@ -399,7 +399,7 @@ static struct acpi_prt_entry * acpi_pci_irq_derive(struct pci_dev *dev, int pin) acpi_pci_irq_derive(struct pci_dev *dev, int pin) { { struct acpi_prt_entry *entry = NULL; struct acpi_prt_entry *entry = NULL; struct pci_dev *bridge = dev; struct pci_dev *bridge; u8 bridge_pin = 0, orig_pin = pin; u8 bridge_pin = 0, orig_pin = pin; Loading @@ -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 * 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). * PCI interrupt routing entry (eg. yenta bridge and add-in card bridge). */ */ while (bridge->bus->self) { bridge = dev->bus->self; pin = (((pin - 1) + PCI_SLOT(bridge->devfn)) % 4) + 1; while (bridge) { bridge = bridge->bus->self; pin = (((pin - 1) + PCI_SLOT(dev->devfn)) % 4) + 1; if ((bridge->class >> 8) == PCI_CLASS_BRIDGE_CARDBUS) { if ((bridge->class >> 8) == PCI_CLASS_BRIDGE_CARDBUS) { /* PC card has the same IRQ as its cardbridge */ /* PC card has the same IRQ as its cardbridge */ Loading @@ -431,6 +431,9 @@ acpi_pci_irq_derive(struct pci_dev *dev, int pin) pci_name(bridge))); pci_name(bridge))); return entry; return entry; } } dev = bridge; bridge = dev->bus->self; } } dev_warn(&dev->dev, "can't derive routing for PCI INT %c\n", dev_warn(&dev->dev, "can't derive routing for PCI INT %c\n", Loading