aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/io_apic_32.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2008-06-16 05:17:50 -0400
committerIngo Molnar <mingo@elte.hu>2008-06-16 05:17:50 -0400
commit1791a78c0b10fe548bf08a2ed7f84a4ea1385430 (patch)
tree3bc3e71a900a364aaaaf28d553ce44e5dc27092b /arch/x86/kernel/io_apic_32.c
parentbf07dc864902b3e788de5ab50dc62d5677da90f2 (diff)
parent066519068ad2fbe98c7f45552b1f592903a9c8c8 (diff)
Merge branch 'linus' into x86/cleanups
Diffstat (limited to 'arch/x86/kernel/io_apic_32.c')
-rw-r--r--arch/x86/kernel/io_apic_32.c12
1 files changed, 2 insertions, 10 deletions
diff --git a/arch/x86/kernel/io_apic_32.c b/arch/x86/kernel/io_apic_32.c
index 4fbf656b08b4..3808b7ff93ea 100644
--- a/arch/x86/kernel/io_apic_32.c
+++ b/arch/x86/kernel/io_apic_32.c
@@ -2131,14 +2131,10 @@ static inline void __init check_timer(void)
2131{ 2131{
2132 int apic1, pin1, apic2, pin2; 2132 int apic1, pin1, apic2, pin2;
2133 int vector; 2133 int vector;
2134 unsigned int ver;
2135 unsigned long flags; 2134 unsigned long flags;
2136 2135
2137 local_irq_save(flags); 2136 local_irq_save(flags);
2138 2137
2139 ver = apic_read(APIC_LVR);
2140 ver = GET_APIC_VERSION(ver);
2141
2142 /* 2138 /*
2143 * get/set the timer IRQ vector: 2139 * get/set the timer IRQ vector:
2144 */ 2140 */
@@ -2151,15 +2147,11 @@ static inline void __init check_timer(void)
2151 * mode for the 8259A whenever interrupts are routed 2147 * mode for the 8259A whenever interrupts are routed
2152 * through I/O APICs. Also IRQ0 has to be enabled in 2148 * through I/O APICs. Also IRQ0 has to be enabled in
2153 * the 8259A which implies the virtual wire has to be 2149 * the 8259A which implies the virtual wire has to be
2154 * disabled in the local APIC. Finally timer interrupts 2150 * disabled in the local APIC.
2155 * need to be acknowledged manually in the 8259A for
2156 * timer_interrupt() and for the i82489DX when using
2157 * the NMI watchdog.
2158 */ 2151 */
2159 apic_write_around(APIC_LVT0, APIC_LVT_MASKED | APIC_DM_EXTINT); 2152 apic_write_around(APIC_LVT0, APIC_LVT_MASKED | APIC_DM_EXTINT);
2160 init_8259A(1); 2153 init_8259A(1);
2161 timer_ack = !cpu_has_tsc; 2154 timer_ack = 1;
2162 timer_ack |= (nmi_watchdog == NMI_IO_APIC && !APIC_INTEGRATED(ver));
2163 if (timer_over_8254 > 0) 2155 if (timer_over_8254 > 0)
2164 enable_8259A_irq(0); 2156 enable_8259A_irq(0);
2165 2157