aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/io_apic.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/kernel/io_apic.c')
-rw-r--r--arch/x86/kernel/io_apic.c34
1 files changed, 0 insertions, 34 deletions
diff --git a/arch/x86/kernel/io_apic.c b/arch/x86/kernel/io_apic.c
index e4d36bd56b62..bfb7d734062a 100644
--- a/arch/x86/kernel/io_apic.c
+++ b/arch/x86/kernel/io_apic.c
@@ -3465,40 +3465,6 @@ static int setup_msi_irq(struct pci_dev *dev, struct msi_desc *msidesc, int irq)
3465 return 0; 3465 return 0;
3466} 3466}
3467 3467
3468int arch_setup_msi_irq(struct pci_dev *dev, struct msi_desc *msidesc)
3469{
3470 unsigned int irq;
3471 int ret;
3472 unsigned int irq_want;
3473
3474 irq_want = nr_irqs_gsi;
3475 irq = create_irq_nr(irq_want);
3476 if (irq == 0)
3477 return -1;
3478
3479#ifdef CONFIG_INTR_REMAP
3480 if (!intr_remapping_enabled)
3481 goto no_ir;
3482
3483 ret = msi_alloc_irte(dev, irq, 1);
3484 if (ret < 0)
3485 goto error;
3486no_ir:
3487#endif
3488 ret = setup_msi_irq(dev, msidesc, irq);
3489 if (ret < 0) {
3490 destroy_irq(irq);
3491 return ret;
3492 }
3493 return 0;
3494
3495#ifdef CONFIG_INTR_REMAP
3496error:
3497 destroy_irq(irq);
3498 return ret;
3499#endif
3500}
3501
3502int arch_setup_msi_irqs(struct pci_dev *dev, int nvec, int type) 3468int arch_setup_msi_irqs(struct pci_dev *dev, int nvec, int type)
3503{ 3469{
3504 unsigned int irq; 3470 unsigned int irq;