X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=include%2Fasm-x86%2Fapic.h;h=ef1d72dbdfe02b74d389c2067af12373db2cd3de;hb=a11b5abef50722e42a7d13f6b799c4f606fcb797;hp=d76a0839abe932c789738f0b0ec5b81c79f96b6c;hpb=fd048088306656824958e7783ffcee27e241b361;p=deliverable%2Flinux.git diff --git a/include/asm-x86/apic.h b/include/asm-x86/apic.h index d76a0839abe9..ef1d72dbdfe0 100644 --- a/include/asm-x86/apic.h +++ b/include/asm-x86/apic.h @@ -40,8 +40,6 @@ extern void generic_apic_probe(void); extern unsigned int apic_verbosity; extern int local_apic_timer_c2_ok; -extern int ioapic_force; - extern int disable_apic; /* * Basic functions accessing APICs. @@ -100,6 +98,20 @@ extern void check_x2apic(void); extern void enable_x2apic(void); extern void enable_IR_x2apic(void); extern void x2apic_icr_write(u32 low, u32 id); +static inline int x2apic_enabled(void) +{ + int msr, msr2; + + if (!cpu_has_x2apic) + return 0; + + rdmsr(MSR_IA32_APICBASE, msr, msr2); + if (msr & X2APIC_ENABLE) + return 1; + return 0; +} +#else +#define x2apic_enabled() 0 #endif struct apic_ops {