x86, irq: Count legacy IRQs by legacy_pic->nr_legacy_irqs instead of NR_IRQS_LEGACY
Some platforms, such as Intel MID and mshypv, do not support legacy interrupt controllers. So count legacy IRQs by legacy_pic->nr_legacy_irqs instead of hard-coded NR_IRQS_LEGACY. Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com> Cc: Tony Luck <tony.luck@intel.com> Cc: Joerg Roedel <joro@8bytes.org> Cc: Paul Gortmaker <paul.gortmaker@windriver.com> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: xen-devel@lists.xenproject.org Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Grant Likely <grant.likely@linaro.org> Cc: Rafael J. Wysocki <rjw@rjwysocki.net> Cc: Bjorn Helgaas <bhelgaas@google.com> Cc: Randy Dunlap <rdunlap@infradead.org> Cc: Yinghai Lu <yinghai@kernel.org> Cc: Len Brown <len.brown@intel.com> Cc: Pavel Machek <pavel@ucw.cz> Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> Cc: Rob Herring <rob.herring@calxeda.com> Cc: Michal Simek <monstr@monstr.eu> Cc: Tony Lindgren <tony@atomide.com> Acked-by: David Vrabel <david.vrabel@citrix.com> Link: http://lkml.kernel.org/r/1402302011-23642-20-git-send-email-jiang.liu@linux.intel.com Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:

committed by
Thomas Gleixner

parent
6532ce994c
commit
95d76acc75
@@ -23,6 +23,7 @@
|
||||
#include <xen/features.h>
|
||||
#include <xen/events.h>
|
||||
#include <asm/xen/pci.h>
|
||||
#include <asm/i8259.h>
|
||||
|
||||
static int xen_pcifront_enable_irq(struct pci_dev *dev)
|
||||
{
|
||||
@@ -40,7 +41,7 @@ static int xen_pcifront_enable_irq(struct pci_dev *dev)
|
||||
/* In PV DomU the Xen PCI backend puts the PIRQ in the interrupt line.*/
|
||||
pirq = gsi;
|
||||
|
||||
if (gsi < NR_IRQS_LEGACY)
|
||||
if (gsi < nr_legacy_irqs())
|
||||
share = 0;
|
||||
|
||||
rc = xen_bind_pirq_gsi_to_irq(gsi, pirq, share, "pcifront");
|
||||
@@ -511,7 +512,7 @@ int __init pci_xen_initial_domain(void)
|
||||
xen_setup_acpi_sci();
|
||||
__acpi_register_gsi = acpi_register_gsi_xen;
|
||||
/* Pre-allocate legacy irqs */
|
||||
for (irq = 0; irq < NR_IRQS_LEGACY; irq++) {
|
||||
for (irq = 0; irq < nr_legacy_irqs(); irq++) {
|
||||
int trigger, polarity;
|
||||
|
||||
if (acpi_get_override_irq(irq, &trigger, &polarity) == -1)
|
||||
@@ -522,7 +523,7 @@ int __init pci_xen_initial_domain(void)
|
||||
true /* Map GSI to PIRQ */);
|
||||
}
|
||||
if (0 == nr_ioapics) {
|
||||
for (irq = 0; irq < NR_IRQS_LEGACY; irq++)
|
||||
for (irq = 0; irq < nr_legacy_irqs(); irq++)
|
||||
xen_bind_pirq_gsi_to_irq(irq, irq, 0, "xt-pic");
|
||||
}
|
||||
return 0;
|
||||
|
Reference in New Issue
Block a user