[PATCH] x86_64: fix hpet for systems that don't support legacy replacement
authorjohn stultz <johnstul@us.ibm.com>
Thu, 23 Jun 2005 07:08:36 +0000 (00:08 -0700)
committerLinus Torvalds <torvalds@ppc970.osdl.org>
Thu, 23 Jun 2005 16:45:12 +0000 (09:45 -0700)
commita3a00751ad8970c13d0563c2e92ee68c655a8e6b
treea351e629e1e29e2fef7d82ef53548d575f4a1fc4
parentc0a88c987878e533fc21fbf684198021a3b2c279
[PATCH] x86_64: fix hpet for systems that don't support legacy replacement

Currently the x86-64 HPET code assumes the entire HPET implementation from
the spec is present.  This breaks on boxes that do not implement the
optional legacy timer replacement functionality portion of the spec.

This patch fixes this issue, allowing x86-64 systems that cannot use the
HPET for the timer interrupt and RTC to still use the HPET as a time
source.  I've tested this patch on a system systems without HPET, with HPET
but without legacy timer replacement, as well as HPET with legacy timer
replacement.

This version adds a minor check to cap the HPET counter value in
gettimeoffset_hpet to avoid possible time inconsistencies.  Please ignore
the A2 version I sent to you earlier.

Acked-by: Andi Kleen <ak@muc.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
arch/x86_64/kernel/time.c