Blame view

Documentation/timers/hpet.txt 1.44 KB
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1
  		High Precision Event Timer Driver for Linux
64a76f667   David Brownell   hpet: /dev/hpet -...
2
  The High Precision Event Timer (HPET) hardware follows a specification
4e7f9df25   Michael S. Tsirkin   hpet: Drop stale ...
3
  by Intel and Microsoft, revision 1.
64a76f667   David Brownell   hpet: /dev/hpet -...
4
5
6
  
  Each HPET has one fixed-rate counter (at 10+ MHz, hence "High Precision")
  and up to 32 comparators.  Normally three or more comparators are provided,
19f594600   Matt LaPlante   trivial: Miscella...
7
  each of which can generate oneshot interrupts and at least one of which has
64a76f667   David Brownell   hpet: /dev/hpet -...
8
9
10
11
12
13
14
15
16
17
  additional hardware to support periodic interrupts.  The comparators are
  also called "timers", which can be misleading since usually timers are
  independent of each other ... these share a counter, complicating resets.
  
  HPET devices can support two interrupt routing modes.  In one mode, the
  comparators are additional interrupt sources with no particular system
  role.  Many x86 BIOS writers don't route HPET interrupts at all, which
  prevents use of that mode.  They support the other "legacy replacement"
  mode where the first two comparators block interrupts from 8254 timers
  and from the RTC.
8a0d49006   Randy Dunlap   [PATCH] Doc/hpet....
18
19
20
21
22
  
  The driver supports detection of HPET driver allocation and initialization
  of the HPET before the driver module_init routine is called.  This enables
  platform code which uses timer 0 or 1 as the main timer to intercept HPET
  initialization.  An example of this initialization can be found in
64a76f667   David Brownell   hpet: /dev/hpet -...
23
  arch/x86/kernel/hpet.c.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
24

64a76f667   David Brownell   hpet: /dev/hpet -...
25
  The driver provides a userspace API which resembles the API found in the
e61863099   Randy Dunlap   Documentation/tim...
26
27
  RTC driver framework.  An example user space program is provided in
  file:Documentation/timers/hpet_example.c