aboutsummaryrefslogtreecommitdiffstats
path: root/xen/include/asm-x86/io_apic.h
diff options
context:
space:
mode:
authorAndrew Cooper <andrew.cooper3@citrix.com>2011-09-13 10:33:10 +0100
committerAndrew Cooper <andrew.cooper3@citrix.com>2011-09-13 10:33:10 +0100
commitac710413f6f4e63a41906b37be8f90e33e4b7e8f (patch)
tree62f44c8a2bab72aae23498d48b9316cc1476e89a /xen/include/asm-x86/io_apic.h
parent2569814496e2c7e61a06d9ddc48defd28759dd96 (diff)
downloadxen-ac710413f6f4e63a41906b37be8f90e33e4b7e8f.tar.gz
xen-ac710413f6f4e63a41906b37be8f90e33e4b7e8f.tar.bz2
xen-ac710413f6f4e63a41906b37be8f90e33e4b7e8f.zip
IRQ: IO-APIC support End Of Interrupt for older IO-APICs
The old io_apic_eoi() function using the EOI register only works for IO-APICs with a version of 0x20. Older IO-APICs do not have an EOI register so line level interrupts have to be EOI'd by flipping the mode to edge and back, which clears the IRR and Delivery Status bits. This patch replaces the current io_apic_eoi() function with one which takes into account the version of the IO-APIC and EOI's appropriately. v2: make recursive call to __io_apic_eoi() to reduce code size. Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Diffstat (limited to 'xen/include/asm-x86/io_apic.h')
-rw-r--r--xen/include/asm-x86/io_apic.h5
1 files changed, 0 insertions, 5 deletions
diff --git a/xen/include/asm-x86/io_apic.h b/xen/include/asm-x86/io_apic.h
index 066a00cd07..a32daa139a 100644
--- a/xen/include/asm-x86/io_apic.h
+++ b/xen/include/asm-x86/io_apic.h
@@ -157,11 +157,6 @@ static inline void io_apic_write(unsigned int apic, unsigned int reg, unsigned i
__io_apic_write(apic, reg, value);
}
-static inline void io_apic_eoi(unsigned int apic, unsigned int vector)
-{
- *(IO_APIC_BASE(apic)+16) = vector;
-}
-
/*
* Re-write a value: to be used for read-modify-write
* cycles where the read already set up the index register.