Commit a81a6a07 authored by Linus Torvalds's avatar Linus Torvalds

Fix APIC timer initialization.

We used to write fields that were marked RESERVED and that
are apparently some old stale timer base. Stop doing that.

Verified with Mikael Pettersson, and confirmed to fix ACPI
boot-time lockups for a few people. 
parent 2004bed7
...@@ -834,11 +834,10 @@ void (*wait_timer_tick)(void) = wait_8254_wraparound; ...@@ -834,11 +834,10 @@ void (*wait_timer_tick)(void) = wait_8254_wraparound;
void __setup_APIC_LVTT(unsigned int clocks) void __setup_APIC_LVTT(unsigned int clocks)
{ {
unsigned int lvtt1_value, tmp_value; unsigned int lvtt_value, tmp_value;
lvtt1_value = SET_APIC_TIMER_BASE(APIC_TIMER_BASE_DIV) | lvtt_value = APIC_LVT_TIMER_PERIODIC | LOCAL_TIMER_VECTOR;
APIC_LVT_TIMER_PERIODIC | LOCAL_TIMER_VECTOR; apic_write_around(APIC_LVTT, lvtt_value);
apic_write_around(APIC_LVTT, lvtt1_value);
/* /*
* Divide PICLK by 16 * Divide PICLK by 16
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment