]> git.hungrycats.org Git - linux/commitdiff
[PATCH] rename CONFIG_PCI_USE_VECTOR to CONFIG_PCI_MSI
authorBjorn Helgaas <bjorn.helgaas@hp.com>
Mon, 2 Aug 2004 03:12:56 +0000 (20:12 -0700)
committerLinus Torvalds <torvalds@ppc970.osdl.org>
Mon, 2 Aug 2004 03:12:56 +0000 (20:12 -0700)
The "vector" terminology is architecture-dependent.  The PCI MSI interface
actually deals with Linux IRQ numbers (i.e., things you can pass to
request_irq()), and we shouldn't confuse things by calling them "vectors" just
because we're using MSI rather than an IOSAPIC.

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
12 files changed:
Documentation/MSI-HOWTO.txt
arch/i386/kernel/io_apic.c
arch/i386/pci/irq.c
arch/x86_64/kernel/i8259.c
arch/x86_64/kernel/io_apic.c
drivers/pci/Kconfig
drivers/pci/Makefile
include/asm-i386/io_apic.h
include/asm-i386/mach-default/irq_vectors_limits.h
include/asm-x86_64/io_apic.h
include/asm-x86_64/irq.h
include/linux/pci.h

index ad1655eb79c66fdd1a618253f3e1b66aba372e02..d5032eb480aa364593d73bd6f211ec23bc2b990e 100644 (file)
@@ -93,7 +93,7 @@ increase scalability.
 5. Configuring a driver to use MSI/MSI-X
 
 By default, the kernel will not enable MSI/MSI-X on all devices that
-support this capability. The CONFIG_PCI_USE_VECTOR kernel option
+support this capability. The CONFIG_PCI_MSI kernel option
 must be selected to enable MSI/MSI-X support.
 
 5.1 Including MSI/MSI-X support into the kernel
@@ -101,10 +101,10 @@ must be selected to enable MSI/MSI-X support.
 To allow MSI/MSI-X capable device drivers to selectively enable
 MSI/MSI-X (using pci_enable_msi()/pci_enable_msix() as described
 below), the VECTOR based scheme needs to be enabled by setting
-CONFIG_PCI_USE_VECTOR during kernel config.
+CONFIG_PCI_MSI during kernel config.
 
 Since the target of the inbound message is the local APIC, providing
-CONFIG_X86_LOCAL_APIC must be enabled as well as CONFIG_PCI_USE_VECTOR.
+CONFIG_X86_LOCAL_APIC must be enabled as well as CONFIG_PCI_MSI.
 
 5.2 Configuring for MSI support
 
@@ -410,7 +410,7 @@ system whether it runs when CONFIG_X86_LOCAL_APIC=y.
 In SMP environment, CONFIG_X86_LOCAL_APIC is automatically set;
 however, in UP environment, users must manually set
 CONFIG_X86_LOCAL_APIC. Once CONFIG_X86_LOCAL_APIC=y, setting
-CONFIG_PCI_USE_VECTOR enables the VECTOR based scheme and
+CONFIG_PCI_MSI enables the VECTOR based scheme and
 the option for MSI-capable device drivers to selectively enable
 MSI/MSI-X.
 
index f2525368b4950419fbe896132e0ae035d1add0ad..a40687e7c290935de779be33298a342ef80b27cf 100644 (file)
@@ -73,7 +73,7 @@ static struct irq_pin_list {
 } irq_2_pin[PIN_MAP_SIZE];
 
 int vector_irq[NR_VECTORS] = { [0 ... NR_VECTORS - 1] = -1};
-#ifdef CONFIG_PCI_USE_VECTOR
+#ifdef CONFIG_PCI_MSI
 #define vector_to_irq(vector)  \
        (platform_legacy_irq(vector) ? vector : vector_irq[vector])
 #else
@@ -1114,7 +1114,7 @@ static inline int IO_APIC_irq_trigger(int irq)
 /* irq_vectors is indexed by the sum of all RTEs in all I/O APICs. */
 u8 irq_vector[NR_IRQ_VECTORS] = { FIRST_DEVICE_VECTOR , 0 };
 
-#ifdef CONFIG_PCI_USE_VECTOR
+#ifdef CONFIG_PCI_MSI
 int assign_irq_vector(int irq)
 #else
 int __init assign_irq_vector(int irq)
@@ -1868,7 +1868,7 @@ static void end_level_ioapic_irq (unsigned int irq)
        }
 }
 
-#ifdef CONFIG_PCI_USE_VECTOR
+#ifdef CONFIG_PCI_MSI
 static unsigned int startup_edge_ioapic_vector(unsigned int vector)
 {
        int irq = vector_to_irq(vector);
index 4103f593823ce653651ca78026b45737308a4ad6..6aa9e5fcfd76615b81dda6b051840e1bdebac644 100644 (file)
@@ -817,7 +817,7 @@ static int pcibios_lookup_irq(struct pci_dev *dev, int assign)
                        if ( dev2->irq && dev2->irq != irq && \
                        (!(pci_probe & PCI_USE_PIRQ_MASK) || \
                        ((1 << dev2->irq) & mask)) ) {
-#ifndef CONFIG_PCI_USE_VECTOR
+#ifndef CONFIG_PCI_MSI
                                printk(KERN_INFO "IRQ routing conflict for %s, have irq %d, want irq %d\n",
                                       pci_name(dev2), dev2->irq, irq);
 #endif
@@ -1034,7 +1034,7 @@ int pirq_enable_irq(struct pci_dev *dev)
                                }
                                dev = temp_dev;
                                if (irq >= 0) {
-#ifdef CONFIG_PCI_USE_VECTOR
+#ifdef CONFIG_PCI_MSI
                                        if (!platform_legacy_irq(irq))
                                                irq = IO_APIC_VECTOR(irq);
 #endif
index 0425e55b8b4e6493f4830738356847c100db4c22..c52b859c92173de45c874f9f6859bba8d6a3d658 100644 (file)
@@ -75,7 +75,7 @@ BUILD_16_IRQS(0x4) BUILD_16_IRQS(0x5) BUILD_16_IRQS(0x6) BUILD_16_IRQS(0x7)
 BUILD_16_IRQS(0x8) BUILD_16_IRQS(0x9) BUILD_16_IRQS(0xa) BUILD_16_IRQS(0xb)
 BUILD_16_IRQS(0xc) BUILD_16_IRQS(0xd)
 
-#ifdef CONFIG_PCI_USE_VECTOR
+#ifdef CONFIG_PCI_MSI
        BUILD_14_IRQS(0xe)
 #endif
 
@@ -110,7 +110,7 @@ void (*interrupt[NR_IRQS])(void) = {
        IRQLIST_16(0x8), IRQLIST_16(0x9), IRQLIST_16(0xa), IRQLIST_16(0xb),
        IRQLIST_16(0xc), IRQLIST_16(0xd)
 
-#ifdef CONFIG_PCI_USE_VECTOR
+#ifdef CONFIG_PCI_MSI
        , IRQLIST_14(0xe)
 #endif
 
index 64b18c250b87c5f270314ed211056ed8f3222191..6cb45b7eb857122b4b63cd3bcee2b89303737300 100644 (file)
@@ -68,7 +68,7 @@ static struct irq_pin_list {
 } irq_2_pin[PIN_MAP_SIZE];
 
 int vector_irq[NR_VECTORS] = { [0 ... NR_VECTORS - 1] = -1};
-#ifdef CONFIG_PCI_USE_VECTOR
+#ifdef CONFIG_PCI_MSI
 #define vector_to_irq(vector)  \
        (platform_legacy_irq(vector) ? vector : vector_irq[vector])
 #else
@@ -656,7 +656,7 @@ static inline int IO_APIC_irq_trigger(int irq)
 /* irq_vectors is indexed by the sum of all RTEs in all I/O APICs. */
 u8 irq_vector[NR_IRQ_VECTORS] = { FIRST_DEVICE_VECTOR , 0 };
 
-#ifdef CONFIG_PCI_USE_VECTOR
+#ifdef CONFIG_PCI_MSI
 int assign_irq_vector(int irq)
 #else
 int __init assign_irq_vector(int irq)
@@ -1406,7 +1406,7 @@ static void set_ioapic_affinity_irq(unsigned int irq, cpumask_t mask)
        spin_unlock_irqrestore(&ioapic_lock, flags);
 }
 
-#ifdef CONFIG_PCI_USE_VECTOR
+#ifdef CONFIG_PCI_MSI
 static unsigned int startup_edge_ioapic_vector(unsigned int vector)
 {
        int irq = vector_to_irq(vector);
index 03681b915a5653a2ede1d1b1f833eac916e3929c..929012e60815a5311ec087a28f2362d44a40f8fc 100644 (file)
@@ -1,22 +1,15 @@
 #
 # PCI configuration
 #
-config PCI_USE_VECTOR
-       bool "Vector-based interrupt indexing (MSI)"
+config PCI_MSI
+       bool "Message Signaled Interrupts (MSI and MSI-X)"
        depends on (X86_LOCAL_APIC && X86_IO_APIC) || IA64
        default n
        help
-          This replaces the current existing IRQ-based index interrupt scheme
-          with the vector-base index scheme. The advantages of vector base
-          over IRQ base are listed below:
-          1) Support MSI implementation.
-          2) Support future IOxAPIC hotplug
-
-          Note that this allows the device drivers to enable MSI, Message
-          Signaled Interrupt, on all MSI capable device functions detected.
-          Message Signal Interrupt enables an MSI-capable hardware device to
-          send an inbound Memory Write on its PCI bus instead of asserting
-          IRQ signal on device IRQ pin.
+          This allows device drivers to enable MSI (Message Signaled
+          Interrupts).  Message Signaled Interrupts enable a device to
+          generate an interrupt using an inbound Memory Write on its
+          PCI bus instead of asserting a device IRQ pin.
 
           If you don't know what to do here, say N.
 
index 260b12b34779ee308519e8e7e3cb2a1084403999..377c7238c4cc303c89ff039f58b2b45b2761a718 100644 (file)
@@ -26,7 +26,7 @@ obj-$(CONFIG_PPC32) += setup-irq.o
 obj-$(CONFIG_PPC64) += setup-bus.o
 obj-$(CONFIG_MIPS) += setup-bus.o setup-irq.o
 obj-$(CONFIG_X86_VISWS) += setup-irq.o
-obj-$(CONFIG_PCI_USE_VECTOR) += msi.o
+obj-$(CONFIG_PCI_MSI) += msi.o
 
 # Cardbus & CompactPCI use setup-bus
 obj-$(CONFIG_HOTPLUG) += setup-bus.o
index 37b969fe7f133f0b0d1cd6b55e628f7aa6cec775..a387a7f98459899fd1023e7d66cbc8d57f7dd522 100644 (file)
@@ -13,7 +13,7 @@
 
 #ifdef CONFIG_X86_IO_APIC
 
-#ifdef CONFIG_PCI_USE_VECTOR
+#ifdef CONFIG_PCI_MSI
 static inline int use_pci_vector(void) {return 1;}
 static inline void disable_edge_ioapic_vector(unsigned int vector) { }
 static inline void mask_and_ack_level_ioapic_vector(unsigned int vector) { }
index 78c30cbcede4478346891b48c60e7444b293a1b8..b330026e6f7ff2d95cdb8fb3ad8b0642462379aa 100644 (file)
@@ -1,7 +1,7 @@
 #ifndef _ASM_IRQ_VECTORS_LIMITS_H
 #define _ASM_IRQ_VECTORS_LIMITS_H
 
-#ifdef CONFIG_PCI_USE_VECTOR
+#ifdef CONFIG_PCI_MSI
 #define NR_IRQS FIRST_SYSTEM_VECTOR
 #define NR_IRQ_VECTORS NR_IRQS
 #else
index 5f31a27b09021553f36f74e74ca80e58ae7f4682..288296121af104636e12c4cd245488ccbf4255a7 100644 (file)
@@ -13,7 +13,7 @@
 
 #ifdef CONFIG_X86_IO_APIC
 
-#ifdef CONFIG_PCI_USE_VECTOR
+#ifdef CONFIG_PCI_MSI
 static inline int use_pci_vector(void) {return 1;}
 static inline void disable_edge_ioapic_vector(unsigned int vector) { }
 static inline void mask_and_ack_level_ioapic_vector(unsigned int vector) { }
index 37c9fd65c97fbdbe1990f2d8ef4d802729b1ab37..34bd00bfc64c9e3d63533c2fda72a92309eae406 100644 (file)
@@ -31,7 +31,7 @@
 
 #define FIRST_SYSTEM_VECTOR    0xef   /* duplicated in hw_irq.h */
 
-#ifdef CONFIG_PCI_USE_VECTOR
+#ifdef CONFIG_PCI_MSI
 #define NR_IRQS FIRST_SYSTEM_VECTOR
 #define NR_IRQ_VECTORS NR_IRQS
 #else
index ae511a7e11f39a81d57808a9a87a63270dd7e988..2ce5f957c072083ccc1a2bcbba2c4ee2dfacf6b6 100644 (file)
@@ -836,7 +836,7 @@ struct msix_entry {
        u16     entry;  /* driver uses to specify entry, OS writes */
 };
 
-#ifndef CONFIG_PCI_USE_VECTOR
+#ifndef CONFIG_PCI_MSI
 static inline void pci_scan_msi_device(struct pci_dev *dev) {}
 static inline int pci_enable_msi(struct pci_dev *dev) {return -1;}
 static inline void pci_disable_msi(struct pci_dev *dev) {}