Commit 38a1dfda8e77d7ba74c94d06d8bc41ba98a4bc8c
Committed by
Thomas Gleixner
1 parent
31bb772370
Exists in
ti-lsk-linux-4.1.y
and in
10 other branches
x86/apic: Re-enable PCI_MSI support for non-SMP X86_32
Commit 0dbc6078c06bc0 ('x86, build, pci: Fix PCI_MSI build on !SMP') introduced the dependency that X86_UP_APIC is only available when PCI_MSI is false. This effectively prevents PCI_MSI support on 32bit UP systems because it disables both APIC and IO-APIC. But APIC support is architecturally required for PCI_MSI. The intention of the patch was to enforce APIC support when PCI_MSI is enabled, but failed to do so. Remove the !PCI_MSI dependency from X86_UP_APIC and enforce X86_UP_APIC when PCI_MSI support is enabled on 32bit UP systems. [ tglx: Massaged changelog ] Fixes 0dbc6078c06bc0 'x86, build, pci: Fix PCI_MSI build on !SMP' Signed-off-by: Bryan O'Donoghue <pure.logic@nexus-software.ie> Suggested-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: stable@vger.kernel.org Link: http://lkml.kernel.org/r/1421967529-9037-1-git-send-email-pure.logic@nexus-software.ie Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Showing 1 changed file with 5 additions and 1 deletions Side-by-side Diff
arch/x86/Kconfig
... | ... | @@ -857,7 +857,7 @@ |
857 | 857 | |
858 | 858 | config X86_UP_APIC |
859 | 859 | bool "Local APIC support on uniprocessors" |
860 | - depends on X86_32 && !SMP && !X86_32_NON_STANDARD && !PCI_MSI | |
860 | + depends on X86_32 && !SMP && !X86_32_NON_STANDARD | |
861 | 861 | ---help--- |
862 | 862 | A local APIC (Advanced Programmable Interrupt Controller) is an |
863 | 863 | integrated interrupt controller in the CPU. If you have a single-CPU |
... | ... | @@ -867,6 +867,10 @@ |
867 | 867 | all. The local APIC supports CPU-generated self-interrupts (timer, |
868 | 868 | performance counters), and the NMI watchdog which detects hard |
869 | 869 | lockups. |
870 | + | |
871 | +config X86_UP_APIC_MSI | |
872 | + def_bool y | |
873 | + select X86_UP_APIC if X86_32 && !SMP && !X86_32_NON_STANDARD && PCI_MSI | |
870 | 874 | |
871 | 875 | config X86_UP_IOAPIC |
872 | 876 | bool "IO-APIC support on uniprocessors" |