ACPI,PCI,IRQ: separate ISA penalty calculation
authorSinan Kaya <okaya@codeaurora.org>
Wed, 29 Jun 2016 08:27:37 +0000 (04:27 -0400)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Fri, 1 Jul 2016 23:38:34 +0000 (01:38 +0200)
commitf7eca374f000bd8bd6aacc2619475fdba0b7ecca
treefdc0cf964edae7d1e25c3c330e58eccf7773bb01
parent487cf917ed0d12afaf403d9d77684bf44b8c13be
ACPI,PCI,IRQ: separate ISA penalty calculation

Since commit 103544d86976 (ACPI,PCI,IRQ: reduce resource requirements)
the penalty values are calculated on the fly rather than at boot time.

This works fine for PCI interrupts but not so well for ISA interrupts.

The information on whether or not an ISA interrupt is in use is not
available to the pci_link.c code directly.  That information is
obtained from the outside via acpi_penalize_isa_irq().  [If its
"active" argument is true, then the IRQ is in use by ISA.]

Since the current code relies on PCI Link objects for determination
of penalties, we are factoring in the PCI penalty twice after
acpi_penalize_isa_irq() function is called.

To avoid that, limit the newly added functionality to just PCI
interrupts so that old behavior is still maintained.

Fixes: 103544d86976 (ACPI,PCI,IRQ: reduce resource requirements)
Signed-off-by: Sinan Kaya <okaya@codeaurora.org>
Tested-by: Wim Osterholt <wim@djo.tudelft.nl>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/pci_link.c