diff options
author | Michael Ellerman <michael@ellerman.id.au> | 2009-01-19 01:06:42 -0500 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2009-01-19 01:16:46 -0500 |
commit | 422e79a8b39d9ac73e410dc3cd099aecea82afd2 (patch) | |
tree | 122389ce246029ae3b132d48fe6e32fe324a9173 /arch/x86/kernel | |
parent | b665967979d0e990f196e7c4ba88e17c9ed9b781 (diff) |
x86: Remove never-called arch_setup_msi_irq()
Since commit 75c46fa, "x64, x2apic/intr-remap: MSI and MSI-X
support for interrupt remapping infrastructure", x86 has had an
implementation of arch_setup_msi_irqs().
That implementation does not call arch_setup_msi_irq(), instead it calls
setup_irq(). No other x86 code calls arch_setup_msi_irq().
That leaves only arch_setup_msi_irqs() in drivers/pci/msi.c, but that
routine is overridden by the x86 version of arch_setup_msi_irqs().
So arch_setup_msi_irq() is dead code, remove it.
Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'arch/x86/kernel')
-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 79b8c0c72d34..157aafa45583 100644 --- a/arch/x86/kernel/io_apic.c +++ b/arch/x86/kernel/io_apic.c | |||
@@ -3462,40 +3462,6 @@ static int setup_msi_irq(struct pci_dev *dev, struct msi_desc *msidesc, int irq) | |||
3462 | return 0; | 3462 | return 0; |
3463 | } | 3463 | } |
3464 | 3464 | ||
3465 | int arch_setup_msi_irq(struct pci_dev *dev, struct msi_desc *msidesc) | ||
3466 | { | ||
3467 | unsigned int irq; | ||
3468 | int ret; | ||
3469 | unsigned int irq_want; | ||
3470 | |||
3471 | irq_want = nr_irqs_gsi; | ||
3472 | irq = create_irq_nr(irq_want); | ||
3473 | if (irq == 0) | ||
3474 | return -1; | ||
3475 | |||
3476 | #ifdef CONFIG_INTR_REMAP | ||
3477 | if (!intr_remapping_enabled) | ||
3478 | goto no_ir; | ||
3479 | |||
3480 | ret = msi_alloc_irte(dev, irq, 1); | ||
3481 | if (ret < 0) | ||
3482 | goto error; | ||
3483 | no_ir: | ||
3484 | #endif | ||
3485 | ret = setup_msi_irq(dev, msidesc, irq); | ||
3486 | if (ret < 0) { | ||
3487 | destroy_irq(irq); | ||
3488 | return ret; | ||
3489 | } | ||
3490 | return 0; | ||
3491 | |||
3492 | #ifdef CONFIG_INTR_REMAP | ||
3493 | error: | ||
3494 | destroy_irq(irq); | ||
3495 | return ret; | ||
3496 | #endif | ||
3497 | } | ||
3498 | |||
3499 | int arch_setup_msi_irqs(struct pci_dev *dev, int nvec, int type) | 3465 | int arch_setup_msi_irqs(struct pci_dev *dev, int nvec, int type) |
3500 | { | 3466 | { |
3501 | unsigned int irq; | 3467 | unsigned int irq; |