Commit fd495471 authored by john stultz's avatar john stultz Committed by Linus Torvalds

[PATCH] x86_64: Fix collision between pmtimer and pit/hpet

On systems that do not support the HPET legacy functions (basically the IBM
x460, but there could be others), in time_init() we accidentally fall into a
PM timer conditional and set the vxtime_hz value to the PM timer's frequency.
We then use this value with the HPET for timekeeping.

This patch (which mimics the behavior in time_init_gtod) corrects the
collision.
Signed-off-by: default avatarAndi Kleen <ak@suse.de>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent df818a52
...@@ -915,7 +915,7 @@ void __init time_init(void) ...@@ -915,7 +915,7 @@ void __init time_init(void)
cpu_khz = hpet_calibrate_tsc(); cpu_khz = hpet_calibrate_tsc();
timename = "HPET"; timename = "HPET";
#ifdef CONFIG_X86_PM_TIMER #ifdef CONFIG_X86_PM_TIMER
} else if (pmtmr_ioport) { } else if (pmtmr_ioport && !vxtime.hpet_address) {
vxtime_hz = PM_TIMER_FREQUENCY; vxtime_hz = PM_TIMER_FREQUENCY;
timename = "PM"; timename = "PM";
pit_init(); pit_init();
......
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