linux/arch/x86/kernel/apic
Naga Chumbalkar 42f0efc5aa x86, ioapic: Print IR_IO_APIC_route_entry when IR is enabled
When IR (interrupt remapping) is enabled print_IO_APIC() displays output according
to legacy RTE (redirection table entry) definitons:

 NR Dst Mask Trig IRR Pol Stat Dmod Deli Vect:
 00 00  1    0    0   0   0    0    0    00
 01 00  0    0    0   0   0    0    0    01
 02 00  0    0    0   0   0    0    0    02
 03 00  1    0    0   0   0    0    0    03
 04 00  1    0    0   0   0    0    0    04
 05 00  1    0    0   0   0    0    0    05
 06 00  1    0    0   0   0    0    0    06
...

The above output is as per Sec 3.2.4 of the IOAPIC datasheet:
82093AA I/O Advanced Programmable Interrupt Controller (IOAPIC):
http://download.intel.com/design/chipsets/datashts/29056601.pdf

Instead the output should display the fields as discussed in Sec 5.5.1
of the VT-d specification:

(Intel Virtualization Technology for Directed I/O:
http://download.intel.com/technology/computing/vptech/Intel(r)_VT_for_Direct_IO.pdf)

After the fix:
 NR Indx Fmt Mask Trig IRR Pol Stat Indx2 Zero Vect:
 00 0000 0   1    0    0   0   0    0     0    00
 01 000F 1   0    0    0   0   0    0     0    01
 02 0001 1   0    0    0   0   0    0     0    02
 03 0002 1   1    0    0   0   0    0     0    03
 04 0011 1   1    0    0   0   0    0     0    04
 05 0004 1   1    0    0   0   0    0     0    05
 06 0005 1   1    0    0   0   0    0     0    06
...

Signed-off-by: Naga Chumbalkar <nagananda.chumbalkar@hp.com>
Link: http://lkml.kernel.org/r/20110712211658.2939.93123.sendpatchset@nchumbalkar.americas.cpqcorp.net
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
2011-07-12 20:17:58 -07:00
..
apic.c x86, x2apic: Preserve high 32-bits of IA32_APIC_BASE MSR 2011-07-12 14:33:49 -07:00
apic_flat_64.c x86, apic: Include module.h header in apic_flat_64.c 2011-05-23 21:27:35 +02:00
apic_noop.c x86-32, NUMA: Make apic->x86_32_numa_cpu_node() optional 2011-05-02 14:18:52 +02:00
bigsmp_32.c x86, apic: Make apic drivers static 2011-05-22 11:48:04 +02:00
es7000_32.c x86, apic: Make apic drivers static 2011-05-22 11:48:04 +02:00
hw_nmi.c watchdog: Change the default timeout and configure nmi watchdog period based on watchdog_thresh 2011-05-23 11:58:59 +02:00
io_apic.c x86, ioapic: Print IR_IO_APIC_route_entry when IR is enabled 2011-07-12 20:17:58 -07:00
ipi.c x86: Always use x86_cpu_to_logical_apicid for cpu -> logical apic id 2011-01-28 14:54:05 +01:00
Makefile x86, apic: Introduce .apicdrivers section to find the list of apic drivers 2011-05-22 11:48:03 +02:00
numaq_32.c x86, apic: Make apic drivers static 2011-05-22 11:48:04 +02:00
probe_32.c x86, apic: Make apic drivers static 2011-05-22 11:48:04 +02:00
probe_64.c x86, apic: Make apic drivers static 2011-05-22 11:48:04 +02:00
summit_32.c x86, apic: Make apic drivers static 2011-05-22 11:48:04 +02:00
x2apic_cluster.c x86, apic: Make apic drivers static 2011-05-22 11:48:04 +02:00
x2apic_phys.c x86, apic: Make apic drivers static 2011-05-22 11:48:04 +02:00
x2apic_uv_x.c x86/uv/x2apic: update for change in pci bridge handling. 2011-06-14 09:50:12 +10:00