• Suresh Siddha's avatar
    x64, x2apic/intr-remap: add x2apic support, including enabling interrupt-remapping · 6e1cb38a
    Suresh Siddha authored
    x2apic support.  Interrupt-remapping must be enabled before enabling x2apic,
    this is needed to ensure that IO interrupts continue to work properly after the
    cpu mode is changed to x2apic(which uses 32bit extended physical/cluster
    apic id).
    
    On systems where apicid's are > 255, BIOS can handover the control to OS in
    x2apic mode. Or if the OS handover was in legacy xapic mode, check
    if it is capable of x2apic mode. And if we succeed in enabling
    Interrupt-remapping, then we can enable x2apic mode in the CPU.
    Signed-off-by: default avatarSuresh Siddha <suresh.b.siddha@intel.com>
    Cc: akpm@linux-foundation.org
    Cc: arjan@linux.intel.com
    Cc: andi@firstfloor.org
    Cc: ebiederm@xmission.com
    Cc: jbarnes@virtuousgeek.org
    Cc: steiner@sgi.com
    Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
    6e1cb38a
boot.c 43.8 KB