diff options
author | Andi Kleen <ak@suse.de> | 2006-02-03 15:51:41 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-02-04 19:43:15 -0500 |
commit | 0c3749c41f5eee0da36bbf92b2793338b4d8574f (patch) | |
tree | 3af004c5533ab04297004f5ec40da4c6801b8fda /include | |
parent | 099f318b8d97490e58c595eb1b6d3415da5ccc03 (diff) |
[PATCH] x86_64: Calibrate APIC timer using PM timer
On some broken motherboards (at least one NForce3 based AMD64 laptop)
the PIT timer runs at a incorrect frequency. This patch adds a new
option "apicpmtimer" that allows to use the APIC timer and calibrate it
using the PMTimer. It requires the earlier patch that allows to run the
main timer from the APIC.
Specifying apicpmtimer implies apicmaintimer.
The option defaults to off for now.
I tested it on a few systems and the resulting APIC timer frequencies
were usually a bit off, but always <1%, which should be tolerable.
TBD figure out heuristic to enable this automatically on the affected
systems TBD perhaps do it on all NForce3s or using DMI?
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/asm-x86_64/proto.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/asm-x86_64/proto.h b/include/asm-x86_64/proto.h index a6748b9568fe..c99832e7bf3f 100644 --- a/include/asm-x86_64/proto.h +++ b/include/asm-x86_64/proto.h | |||
@@ -42,6 +42,7 @@ extern void iommu_hole_init(void); | |||
42 | extern void time_init_gtod(void); | 42 | extern void time_init_gtod(void); |
43 | extern int pmtimer_mark_offset(void); | 43 | extern int pmtimer_mark_offset(void); |
44 | extern void pmtimer_resume(void); | 44 | extern void pmtimer_resume(void); |
45 | extern void pmtimer_wait(unsigned); | ||
45 | extern unsigned int do_gettimeoffset_pm(void); | 46 | extern unsigned int do_gettimeoffset_pm(void); |
46 | #ifdef CONFIG_X86_PM_TIMER | 47 | #ifdef CONFIG_X86_PM_TIMER |
47 | extern u32 pmtmr_ioport; | 48 | extern u32 pmtmr_ioport; |