Home | History | Annotate | Download | only in acpi
History log of /src/sys/dev/acpi/acpi_timer.c
RevisionDateAuthorComments
 1.27  25-Jul-2021  jmcneill acpi_timer: use ACPI-Fast if WAET timer one read flag is set

The Windows ACPI Emulated Devices Table (WAET) has a hint to inform the OS
that a single read of the PM timer is reliable. Honour this flag.
 1.26  29-May-2020  rin branches: 1.26.6;
For struct timecounter, use C99 initializers.
Compile tested. No functional changes intended.
 1.25  16-Oct-2018  jmcneill Rename options ACPI_REDUCED_HARDWARE to ACPI_REDUCED_HW. The former is
a boolean in the acpica build, so use the latter to select the correct
value.
 1.24  16-Oct-2018  jmcneill Add ACPI_REDUCED_HARDWARE defflag (used by ACPICA) and fix acpi build with this option set.
 1.23  15-Oct-2018  jmcneill Do not attach a timecounter when PM_TMR_LEN is 0. According to ACPI 6.2
section 5.2.9 ("Fixed ACPI Description Table (FADT)"), a value of zero
here means that the PM timer is not supported.
 1.22  27-Dec-2013  christos branches: 1.22.28; 1.22.30;
constant changed name
 1.21  08-Aug-2011  jmcneill branches: 1.21.2; 1.21.12; 1.21.16;
The absence of USE_PLATFORM_CLOCK does not imply that the PM Timer is
unreliable; in fact, the PM Timer has to be reliable by definition! Remove
the incorrect warning message that was added in r1.19
 1.20  04-Jan-2011  jruoho Fix previous.
 1.19  02-Jan-2011  jruoho Print a warning if the BIOS thinks that the timer is unreliable. However, do
not touch the quality of the timecounter(9) based on this information.
 1.18  10-Jul-2010  jruoho Export also the delta function.
 1.17  10-Jul-2010  jruoho Export the wrapper functions that read from the ACPI PM timer.
Needed for ACPI CPUs. Also KNF, cosmetics. No functional change.
 1.16  05-Mar-2010  jruoho branches: 1.16.2;
Add missing license.

ok drochner@
 1.15  05-Mar-2010  jruoho Remove <dev/acpi/acpica.h> from all files. It is included from
<dev/acpi/acpivar.h>. Ditto for <dev/sysmon/sysmonvar.h>, <sys/bus.h>,
<dev/pci/pcivar.h>, and <dev/isa/isavar.h>.

Also nuke a lot of unused and invalid headers. Some of these are audibly
provided by standard headers (namely <sys/param.h> and <sys/device.h>), some
have nothing to do with ACPI devices (e.g. <sys/syslog.h>), and some are
nonexistent local includes (e.g. "mpu_ym.h"). Moreoever, try to group the
includes into their respective blocks.

Tested with GENERIC and ALL (i386). No functional change.
 1.14  08-Apr-2009  dyoung branches: 1.14.2;
Add acpitimer_detach() to eventually support acpi(4) detachment.
 1.13  15-Mar-2009  cegger ansify function definitions
 1.12  14-Mar-2009  jmcneill Don't assume ACPI == x86, from kiyohara@kk.iij4u.or.jp
 1.11  11-May-2008  ad branches: 1.11.6; 1.11.12;
Noisy printf.
 1.10  20-Jan-2008  joerg branches: 1.10.6; 1.10.8; 1.10.10; 1.10.12;
Now that __HAVE_TIMECOUNTER and __HAVE_GENERIC_TODR are invariants,
remove the conditionals and the code associated with the undef case.
 1.9  26-Sep-2007  ad branches: 1.9.4; 1.9.10;
x86 changes for pcc and LKMs.

- Replace most inline assembly with proper functions. As a side effect
this reduces the size of amd64 GENERIC by about 120kB, and i386 by a
smaller amount. Nearly all of the inlines did something slow, or something
that does not need to be fast.
- Make curcpu() and curlwp functions proper, unless __GNUC__ && _KERNEL.
In that case make them inlines. Makes curlwp LKM and preemption safe.
- Make bus_space and bus_dma more LKM friendly.
- Share a few more files between the ports.
- Other minor changes.
 1.8  16-Nov-2006  christos branches: 1.8.4; 1.8.10; 1.8.24; 1.8.26; 1.8.28;
__unused removal on arguments; approved by core.
 1.7  12-Oct-2006  christos - sprinkle __unused on function decls.
- fix a couple of unused bugs
- no more -Wno-unused for i386
 1.6  27-Aug-2006  christos branches: 1.6.2; 1.6.4; 1.6.6;
Complete the declaration.
 1.5  02-Jul-2006  bouyer branches: 1.5.2;
Move acpi_timer.h outside of __HAVE_TIMECOUNTER, as we need acpitimer_init()
for the non-timecounter case too.
 1.4  30-Jun-2006  xtraeme Add __KERNEL_RCSID().
 1.3  30-Jun-2006  xtraeme Remove a debug printf.
 1.2  26-Jun-2006  drochner branches: 1.2.2;
test the PM timer for glitches (using the algorithm from FreeBSD)
and use a single read if the timer looks good,
patch from Juan RP, with minor simplification by me
 1.1  21-Jun-2006  drochner First cut on an implementation of an ACPI power management counter
backend for timecounters.
Due to known bugs in some chipsets, always read until we get 3 successive
samples which are monotonic, as FreeBSD does in its "safe" variant.
This can be refined later, either by chipset quirks or by a test (as
FreeBSD does).
 1.2.2.4  03-Sep-2006  yamt sync with head.
 1.2.2.3  11-Aug-2006  yamt sync with head
 1.2.2.2  26-Jun-2006  yamt sync with head.
 1.2.2.1  26-Jun-2006  yamt file acpi_timer.c was added on branch yamt-pdpolicy on 2006-06-26 12:50:37 +0000
 1.5.2.2  13-Jul-2006  gdamore Merge from HEAD.
 1.5.2.1  02-Jul-2006  gdamore file acpi_timer.c was added on branch gdamore-uart on 2006-07-13 17:49:17 +0000
 1.6.6.2  10-Dec-2006  yamt sync with head.
 1.6.6.1  22-Oct-2006  yamt sync with head
 1.6.4.2  09-Sep-2006  rpaulo sync with head
 1.6.4.1  27-Aug-2006  rpaulo file acpi_timer.c was added on branch rpaulo-netinet-merge-pcb on 2006-09-09 02:49:29 +0000
 1.6.2.1  18-Nov-2006  ad Sync with head.
 1.8.28.1  06-Oct-2007  yamt sync with head.
 1.8.26.2  23-Mar-2008  matt sync with HEAD
 1.8.26.1  06-Nov-2007  matt sync with HEAD
 1.8.24.1  02-Oct-2007  joerg Sync with HEAD.
 1.8.10.1  09-Oct-2007  ad Sync with head.
 1.8.4.4  21-Jan-2008  yamt sync with head
 1.8.4.3  27-Oct-2007  yamt sync with head.
 1.8.4.2  30-Dec-2006  yamt sync with head.
 1.8.4.1  16-Nov-2006  yamt file acpi_timer.c was added on branch yamt-lazymbuf on 2006-12-30 20:47:54 +0000
 1.9.10.1  23-Jan-2008  bouyer Sync with HEAD.
 1.9.4.1  18-Feb-2008  mjf Sync with HEAD.
 1.10.12.1  23-Jun-2008  wrstuden Sync w/ -current. 34 merge conflicts to follow.
 1.10.10.4  11-Aug-2010  yamt sync with head.
 1.10.10.3  11-Mar-2010  yamt sync with head
 1.10.10.2  04-May-2009  yamt sync with head.
 1.10.10.1  16-May-2008  yamt sync with head.
 1.10.8.1  18-May-2008  yamt sync with head.
 1.10.6.1  02-Jun-2008  mjf Sync with HEAD.
 1.11.12.1  13-May-2009  jym Sync with HEAD.

Commit is split, to avoid a "too many arguments" protocol error.
 1.11.6.1  28-Apr-2009  skrll Sync with HEAD.
 1.14.2.2  17-Aug-2010  uebayasi Sync with HEAD.
 1.14.2.1  30-Apr-2010  uebayasi Sync with HEAD.
 1.16.2.1  05-Mar-2011  rmind sync with head
 1.21.16.1  18-May-2014  rmind sync with head
 1.21.12.1  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.21.2.1  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.22.30.1  10-Jun-2019  christos Sync with HEAD
 1.22.28.1  20-Oct-2018  pgoyette Sync with head
 1.26.6.1  01-Aug-2021  thorpej Sync with HEAD.

RSS XML Feed