I have server PowerEdge R710 with two Xeon E560 CPUs on board. But when i check x2apic presence using CPUID(EAX=1) i got 0x29ee3ff value in ECX register which tells me that local x2apic functionality is not available (bit 10 is not set). This check is made right after entering into a protected mode. Is it a correct way to determine x2apic presence? Does mentioned processors have this functionality?
It seems that Xeon 5620 CPU have strange behaviour: while cpuid tells that x2apic is not available it still report that directed EOI support is present. So all what i have to do is just check x2apic presence and do not try to enable directed EOI with disabled x2apic even if APIC version register report that directed EOI is supported.