summaryrefslogtreecommitdiffstats
path: root/sys/contrib/dev/acpica/hwtimer.c
diff options
context:
space:
mode:
authormsmith <msmith@FreeBSD.org>2001-03-05 02:15:19 +0000
committermsmith <msmith@FreeBSD.org>2001-03-05 02:15:19 +0000
commitcc64c75258cdd65688e8a27806ad0417bec44bb0 (patch)
tree5cc07fb8c5f739592d70f3af7590f2a0722a9a5a /sys/contrib/dev/acpica/hwtimer.c
parent7948a3a80426e7bdc0728814e72cf46852c46576 (diff)
downloadFreeBSD-src-cc64c75258cdd65688e8a27806ad0417bec44bb0.zip
FreeBSD-src-cc64c75258cdd65688e8a27806ad0417bec44bb0.tar.gz
Belated vendor update to the Intel ACPI CA 20010208 snapshot.
Diffstat (limited to 'sys/contrib/dev/acpica/hwtimer.c')
-rw-r--r--sys/contrib/dev/acpica/hwtimer.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/sys/contrib/dev/acpica/hwtimer.c b/sys/contrib/dev/acpica/hwtimer.c
index 197c65c..52139ed 100644
--- a/sys/contrib/dev/acpica/hwtimer.c
+++ b/sys/contrib/dev/acpica/hwtimer.c
@@ -2,7 +2,7 @@
/******************************************************************************
*
* Name: hwtimer.c - ACPI Power Management Timer Interface
- * $Revision: 4 $
+ * $Revision: 5 $
*
*****************************************************************************/
@@ -235,7 +235,7 @@ AcpiGetTimerDuration (
/*
* Compute Tick Delta:
* -------------------
- * Handle timer rollovers on 24- versus 32-bit timers.
+ * Handle (max one) timer rollovers on 24- versus 32-bit timers.
*/
if (StartTicks < EndTicks)
{
@@ -246,7 +246,7 @@ AcpiGetTimerDuration (
/* 24-bit Timer */
if (0 == AcpiGbl_FADT->TmrValExt)
{
- DeltaTicks = (0x00FFFFFF - StartTicks) + EndTicks;
+ DeltaTicks = (((0x00FFFFFF - StartTicks) + EndTicks) & 0x00FFFFFF);
}
/* 32-bit Timer */
else
@@ -254,6 +254,11 @@ AcpiGetTimerDuration (
DeltaTicks = (0xFFFFFFFF - StartTicks) + EndTicks;
}
}
+ else
+ {
+ *TimeElapsed = 0;
+ return_ACPI_STATUS (AE_OK);
+ }
/*
* Compute Duration:
OpenPOWER on IntegriCloud