|
@@ -1751,21 +1751,30 @@ __apicdebuginit(void) print_local_APIC(void *dummy)
|
|
|
printk(KERN_DEBUG "... APIC TASKPRI: %08x (%02x)\n", v, v & APIC_TPRI_MASK);
|
|
|
|
|
|
if (APIC_INTEGRATED(ver)) { /* !82489DX */
|
|
|
- v = apic_read(APIC_ARBPRI);
|
|
|
- printk(KERN_DEBUG "... APIC ARBPRI: %08x (%02x)\n", v,
|
|
|
- v & APIC_ARBPRI_MASK);
|
|
|
+ if (!APIC_XAPIC(ver)) {
|
|
|
+ v = apic_read(APIC_ARBPRI);
|
|
|
+ printk(KERN_DEBUG "... APIC ARBPRI: %08x (%02x)\n", v,
|
|
|
+ v & APIC_ARBPRI_MASK);
|
|
|
+ }
|
|
|
v = apic_read(APIC_PROCPRI);
|
|
|
printk(KERN_DEBUG "... APIC PROCPRI: %08x\n", v);
|
|
|
}
|
|
|
|
|
|
- v = apic_read(APIC_EOI);
|
|
|
- printk(KERN_DEBUG "... APIC EOI: %08x\n", v);
|
|
|
- v = apic_read(APIC_RRR);
|
|
|
- printk(KERN_DEBUG "... APIC RRR: %08x\n", v);
|
|
|
+ /*
|
|
|
+ * Remote read supported only in the 82489DX and local APIC for
|
|
|
+ * Pentium processors.
|
|
|
+ */
|
|
|
+ if (!APIC_INTEGRATED(ver) || maxlvt == 3) {
|
|
|
+ v = apic_read(APIC_RRR);
|
|
|
+ printk(KERN_DEBUG "... APIC RRR: %08x\n", v);
|
|
|
+ }
|
|
|
+
|
|
|
v = apic_read(APIC_LDR);
|
|
|
printk(KERN_DEBUG "... APIC LDR: %08x\n", v);
|
|
|
- v = apic_read(APIC_DFR);
|
|
|
- printk(KERN_DEBUG "... APIC DFR: %08x\n", v);
|
|
|
+ if (!x2apic_enabled()) {
|
|
|
+ v = apic_read(APIC_DFR);
|
|
|
+ printk(KERN_DEBUG "... APIC DFR: %08x\n", v);
|
|
|
+ }
|
|
|
v = apic_read(APIC_SPIV);
|
|
|
printk(KERN_DEBUG "... APIC SPIV: %08x\n", v);
|
|
|
|