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