Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
HPET(4)		       FreeBSD Kernel Interfaces Manual		       HPET(4)

NAME
     hpet -- High Precision Event Timer	driver

SYNOPSIS
     To	compile	this driver into the kernel, place the following lines in your
     kernel configuration file:

	   device acpi

     The following tunables are	settable from the loader(8):

     hint.hpet.X.allowed_irqs
     is	a 32bit	mask. Each set bit allows driver to use	respective IRQ,	if
     BIOS also set respective capability bit in	comparator's configuration
     register.	Default	value is 0xffff0000, except some known broken hard-
     ware.

     hint.hpet.X.clock
     controls event timers functionality support. Setting to 0,	disables it.
     Default value is 1.

     hint.hpet.X.legacy_route
     controls "LegacyReplacement Route"	mode. If enabled, HPET will steal IRQ0
     of	i8254 timer and	IRQ8 of	RTC. Before using it, make sure	that respec-
     tive drivers are not using	interrupts, by setting also:

     hint.attimer.0.clock=0
     hint.atrtc.0.clock=0
     Default value is 0.

     hint.hpet.X.per_cpu
     controls how much per-CPU event timers should driver attempt to register.
     This functionality	requires every comparator in a group to	have own
     unshared IRQ, so it depends on hardware capabilities and interrupts con-
     figuration.  Default value	is 1.

DESCRIPTION
     This driver uses High Precision Event Timer hardware (part	of the
     chipset, usually enumerated via ACPI) to supply kernel with one time
     counter and several (usually from 3 to 8) event timers.  This hardware
     includes single main counter with known increment frequency (10MHz	or
     more), and	several	programmable comparators (optionally with automatic
     reload feature).  When value of the main counter matches current value of
     any comparator, interrupt can be generated.  Depending on hardware	capa-
     bilities and configuration, interrupt can be delivered as regular I/O
     APIC interrupt (ISA or PCI) in range from 0 to 31,	or as Front Side Bus
     interrupt,	alike to PCI MSI interrupts, or	in so called "LegacyReplace-
     ment Route" HPET can steal	IRQ0 of	i8254 and IRQ8 of the RTC.  Interrupt
     can be either edge- or level-triggered. In	last case they could be	safely
     shared with PCI IRQs.  Driver prefers to use FSB interrupts, if sup-
     ported, to	avoid sharing.	If it is not possible, it uses single sharable
     IRQ from PCI range.  Other	modes (LegacyReplacement and ISA IRQs) require
     special care to setup, but	could be configured manually via device	hints.

     Event timers provided by the driver support both one-shot an periodic
     modes and irrelevant to CPU power states.

     Depending on hardware capabilities	and configuration, driver can expose
     each comparator as	separate event timer or	group them into	one or several
     per-CPU event timers. In last case	interrupt of every of those compara-
     tors within group is bound	to specific CPU	core. This is possible only
     when each of these	comparators has	own unsharable IRQ.

SEE ALSO
     acpi(4), apic(4), atrtc(4), attimer(4), eventtimers(4), timecounters(4)

HISTORY
     The hpet driver first appeared in FreeBSD 6.3.  Support for event timers
     was added in FreeBSD 9.0.

FreeBSD	10.1		      September	14, 2010		  FreeBSD 10.1

NAME | SYNOPSIS | DESCRIPTION | SEE ALSO | HISTORY

Want to link to this manual page? Use this URL:
<http://www.freebsd.org/cgi/man.cgi?query=hpet&sektion=4&manpath=FreeBSD+10.0-RELEASE>

home | help