Re: [RFC v1 1/2] x86: kconfig: simplify enabling [IO]APIC for PCI_MSI

From: David Rientjes
Date: Tue Mar 10 2015 - 20:49:21 EST


On Tue, 10 Mar 2015, Luis R. Rodriguez wrote:

> diff --git a/Documentation/PCI/MSI-HOWTO.txt b/Documentation/PCI/MSI-HOWTO.txt
> index 0d920d5..7306d2c 100644
> --- a/Documentation/PCI/MSI-HOWTO.txt
> +++ b/Documentation/PCI/MSI-HOWTO.txt
> @@ -71,10 +71,7 @@ will simply fail and the device will continue to use pin-based interrupts.
> 4.1 Include kernel support for MSIs
>
> To support MSI or MSI-X, the kernel must be built with the CONFIG_PCI_MSI
> -option enabled. This option is only available on some architectures,
> -and it may depend on some other options also being set. For example,
> -on x86, you must also enable X86_UP_APIC or SMP in order to see the
> -CONFIG_PCI_MSI option.
> +option enabled. This option is only available on some architectures.
>
> 4.2 Using MSI
>
> diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
> index d038475..0ecdeb1 100644
> --- a/arch/x86/Kconfig
> +++ b/arch/x86/Kconfig
> @@ -902,10 +902,6 @@ config X86_UP_APIC
> performance counters), and the NMI watchdog which detects hard
> lockups.
>
> -config X86_UP_APIC_MSI
> - def_bool y
> - select X86_UP_APIC if X86_32 && !SMP && !X86_32_NON_STANDARD && PCI_MSI
> -
> config X86_UP_IOAPIC
> bool "IO-APIC support on uniprocessors"
> depends on X86_UP_APIC
> @@ -924,7 +920,7 @@ config X86_LOCAL_APIC
> select GENERIC_IRQ_LEGACY_ALLOC_HWIRQ
>
> config X86_IO_APIC
> - def_bool X86_64 || SMP || X86_32_NON_STANDARD || X86_UP_IOAPIC
> + def_bool X86_64 || SMP || X86_32_NON_STANDARD || X86_UP_IOAPIC || PCI_MSI
> depends on X86_LOCAL_APIC
> select IRQ_DOMAIN
>
> diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
> index 7a8f1c5..01370c0 100644
> --- a/drivers/pci/Kconfig
> +++ b/drivers/pci/Kconfig
> @@ -5,6 +5,8 @@ config PCI_MSI
> bool "Message Signaled Interrupts (MSI and MSI-X)"
> depends on PCI
> select GENERIC_MSI_IRQ
> + select X86_LOCAL_APIC if X86_32 && !SMP && !X86_32_NON_STANDARD
> + select X86_IO_APIC if X86_32 && !SMP && !X86_32_NON_STANDARD
> help
> This allows device drivers to enable MSI (Message Signaled
> Interrupts). Message Signaled Interrupts enable a device to

This conflicts with commit 50849eefea3b ("x86/Kconfig: Simplify
X86_UP_APIC handling"), which has already been merged for the 4.0 release
cycle, and I think I prefer the simplification done there over the
additional "select"s for PCI_MSI.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/