Commit Graph

146 Commits

Author SHA1 Message Date
Jung-uk Kim
2272d05019 Merge ACPICA 20091112. 2009-11-16 21:47:12 +00:00
Jung-uk Kim
f556842ef6 Merge ACPICA 20091013. 2009-10-19 16:12:58 +00:00
Jung-uk Kim
bdc794c4f9 Catch up with ACPICA 20090903. 2009-09-11 22:50:15 +00:00
John Baldwin
986dffaf53 - Use the headers from ACPI-CA to define various constants and structures
for table layouts, etc. rather than homerolling our own structures and
  constants in acpidump.h.
- Verify the extended checksum on the RSDP.
- Handle new ACPI 3.0 fields in MADT including X2APIC entries and
  UIDs for local SAPICs.
- Add handling for new ACPI 3.0 flags in the FADT.

Reviewed by:	jkim
MFC after:	1 month
2009-08-25 20:35:57 +00:00
John Baldwin
a0333ad155 Parse the System Resource Affinity Table ('SRAT') used to describe affinity
relationships between CPUs and memory.

Reviewed by:	jkim
Approved by:	re (kib)
MFC after:	1 week
2009-07-29 19:07:24 +00:00
Jung-uk Kim
990651167b Import ACPICA 20090521. 2009-06-05 18:50:45 +00:00
Rui Paulo
76c586c6a1 Update to reflect reality:
* iasl(8) supports ACPI 3.0b.
	* Add new options.

MFC after:	1 week
2008-05-20 12:07:02 +00:00
John Birrell
0aad0f2282 These are the things that the tinderbox has problems with because it
doesn't use the default CFLAGS which contain -fno-strict-aliasing.

Until the code is cleaned up, just add -fno-strict-aliasing to the
CFLAGS of these for the tinderboxes' sake, allowing the rest of the
tree to have -Werror enabled again.
2007-11-20 02:07:30 +00:00
John Birrell
5fae240990 Use an explicit pointer cast since NULL isn't guaranteed to be defined
as a pointer type.

Submitted by: Christoph Mallon - christoph mallon at gmx de
2007-11-18 09:13:08 +00:00
John Birrell
347f22bec6 Use a NULL instead of a zero to avoid a compiler warning about a missing sentinel. 2007-11-18 03:45:55 +00:00
Marcel Moolenaar
c44b9f1811 Fix acpidump(8) on ia64. Revision 1.13 introduced an uninitialized
variable bug that's hidden by the precense of the hint_acpi_0_rsdp
hint on 386 and amd64. There's never a need for such hint on ia64.

Approved by: re (kensmith)
2007-07-28 17:46:04 +00:00
Nate Lawson
00a304487f Update the suspend/resume user API while maintaining backwards compat.
Improvements:
* /etc/rc.suspend,rc.resume are always run, no matter the source of the
  suspend request (user or kernel, apm or acpi)
* suspend now requires positive user acknowledgement.  If a user program
  wants to cancel the suspend, they can.  If one of the user programs
  hangs or doesn't respond within 10 seconds, the system suspends anyway.
* /dev/apm is clonable, allowing multiple listeners for suspend events.
  In the future, xorg-server can use this to be informed about suspend
  even if there are other listeners (i.e. apmd).

Changes:
* Two new ACPI ioctls:  REQSLPSTATE and ACKSLPSTATE.  Request begins the
  process of suspending by notifying all listeners.  acpi is monitored by
  devd(8) and /dev/apm listener(s) are also counted.  Users register their
  approval or disapproval via Ack.  If anyone disapproves, suspend is vetoed.
* Old user programs or kernel modules that used SETSLPSTATE continue to
  work.  A message is printed once that this interface is deprecated.
* acpiconf gains the -k flag to ack the suspend request.  This flag is
  undocumented on purpose since it's only used by /etc/rc.suspend.  It is
  not intended to be a permanent change and will be removed once a better
  power API is implemented.
* S5 (power off) is no longer supported via acpiconf -s 5 or apm -z/-Z.
  This restores previous behavior of halt/shutdown -p being the interface.
* Miscellaneous improvements to error reporting

Approved by:	re
2007-06-21 22:50:37 +00:00
Takanori Watanabe
87f9f09a13 Correct HPET header handling.
MFC after: 7 days
2007-03-27 17:03:52 +00:00
Jung-uk Kim
2be4e4713a Catch up with ACPI-CA 20070320 import. 2007-03-22 18:16:43 +00:00
Nate Lawson
ceb8cd6464 Document exact command preferred for sending ASL as part of bug reports. 2007-03-14 22:55:30 +00:00
Jung-uk Kim
e8d472a7af Catch up with ACPI-CA 20051021 import 2005-11-01 22:44:08 +00:00
Nate Lawson
0af442fbcf Correct column alignment. 2005-07-28 19:41:52 +00:00
Nate Lawson
7a20dc58a8 Fix nits in reporting battery information and add battery status reporting.
Rate units are mA/mW, not mAh/mWh.  Get full battery status and time
remaining from ACPIIO_BATT_GET_BATTINFO instead of BST.

PR:		bin/83672
MFC after:	2 days
2005-07-28 19:31:28 +00:00
Nate Lawson
d551ef2b72 Use the current BST/BIF ioctls, not the deprecated ones.
MFC after:	2 days
2005-07-22 19:19:00 +00:00
Scott Long
348c9a5668 Fix a small style problem and add a __packed pragma for safety. 2005-02-17 21:09:26 +00:00
Nate Lawson
24945e902d Note addition of MCFG support. 2005-02-14 16:32:32 +00:00
Scott Long
a47e681b24 Add support for parsing MCFG tables. 2005-02-14 11:21:48 +00:00
Ruslan Ermilov
6b806d21d1 Fixed the misplaced $FreeBSD$. 2005-02-09 18:07:17 +00:00
Ruslan Ermilov
59a3c79da6 Sort sections. 2005-01-18 20:02:45 +00:00
Nate Lawson
a41e7b6aa9 Catch up with the kernel and set any global variables we are using, in
particular, enabling interpreter workarounds for bad ASL.

MFC after:	1 day
2005-01-03 04:14:05 +00:00
Warner Losh
bfccea1e5d o Report charge/discharge rate and remaining capacity in the proper
units (as specified in _BIF). (noted by Bruno Ducrot)
o In looking in the standard, if the cap numbers are 0xffffffff, then acpi
  is reporting unknown for that field.  Report unknown numbers properly.
o Update the state to reflect charging, discharging and critical.
2004-11-24 16:02:20 +00:00
Warner Losh
95e583726f phk jumped the gun and posted what looks like a preliminary version of
my patches for this information.  Commit my more complete version.
This version isn't complete yet, since some details aren't handled
right just yet.

Poaching by: phk
2004-11-24 15:32:07 +00:00
Poul-Henning Kamp
fdcef74733 Dump current status of battery as well.
The -i code doesn't really belong here in the first place I would think,
but keep it together for now.
2004-11-24 12:49:39 +00:00
Warner Losh
46433fccd1 Minor style(9) before possible larger commits. 2004-11-16 06:25:02 +00:00
Philip Paeps
6af2c48a95 Somehow I missed this last night, acpi_init() doesn't return an int.
Spotted by:	Randy Bush <randy@psg.com>
2004-11-13 15:16:35 +00:00
Philip Paeps
413efd9141 With the addition of a proper prototype, this is now WARNS=6 clean. 2004-11-13 01:54:22 +00:00
Philip Paeps
9599d206a4 Two uint32_t casts crept in where they shouldn't have.
ACPI_TYPE_INTEGER can be 64 bits wide in acpi v2.
2004-11-13 01:49:22 +00:00
Philip Paeps
e18d08c9b0 Change some formats and add some casts to make this
WARNS=2 clean, and mark it as such.

PR:		71672 (partly)
Reviewed by:	njl
2004-11-13 01:34:51 +00:00
Nate Lawson
b64e1b6732 Update a comment that was outdated. 2004-10-05 21:24:20 +00:00
Nate Lawson
f7675a5634 Back out the -s flag and go back to dumping the SSDTs by default. 2004-10-05 20:45:05 +00:00
Nate Lawson
e840018e96 Update the man page for the -s flag and other changes that we've missed.
MFC after:	3 days
2004-10-05 02:19:30 +00:00
Nate Lawson
62c7bde198 Add the -s flag to make dumping SSDTs optional (disabled by default).
Since we can only override the DSDT, a custom ASL dumped previously that
contained SSDTs would result in lots of multiple definition errors.

A longer-term fix involves adding the ability to override SSDTs to ACPI-CA.

MFC after:	3 days
2004-10-05 02:18:53 +00:00
Nate Lawson
5cf6d493ab When one entry in the RSDT is corrupted, just skip it instead of bailing out.
This gets us the info we need on systems which have proprietary tables that
don't match the standard.  For instance, an AMI system has a table of type
"OEMB" with an invalid checksum.

Tested by:	Maxim Maximov <mcsi_at_mcsi.pp.ru>
MFC after:	1 day
2004-08-18 05:56:07 +00:00
Nate Lawson
64f3d62cda Update man page for supported table types.
MFC after:	1 day
2004-08-18 05:50:32 +00:00
Nate Lawson
e079f9491a Remove the ACPIIO_ENABLE and ACPIIO_DISABLE ioctls as well as all
callers.  These ioctls attempted to enable and disable the ACPI
interpreter at runtime.  In practice, it is not possible to boot with
ACPI and then disable it on many systems and trying to do so can cause
crashes, interrupt storms, etc.  Binary compatibility with userland is
retained.

MFC after:	2 days
2004-08-18 05:48:24 +00:00
Marcel Moolenaar
7611a6dcd6 We now handle SSDT tables. Remove a reference from the BUGS section
and explicitly mention SSDT when we talk about the DSDT so that people
don't have to guess whether it includes the SSDT.
While here, touch date.

Pointed out by: le@
2004-08-16 20:33:20 +00:00
Nate Lawson
c5fe547333 Comment out the ability to enable/disable ACPI at runtime. This appears
to not work reliably and crash some systems.  It is not supported at all
on others.  Pending discussion, the underlying ioctls will be removed.
2004-08-15 23:39:37 +00:00
Marcel Moolenaar
bfa3f012cd Add support for SSDT tables. Dumping or disassembling the DSDT will
now include the contents if any SSDT table as well. This makes use
of the property that one can concatenate the body of SSDT tables to
the DSDT, updating the DSDT header (length and checksum) and end up
with a larger and valid DSDT table. Hence, this also works with -f.

Reviewed by: njl@
2004-08-13 22:59:09 +00:00
Ruslan Ermilov
d37ea99837 Removed trailing whitespace. 2004-07-02 19:07:33 +00:00
Nate Lawson
2177d4e68d Also print out the standard header for FADT since it has one. 2004-06-30 03:23:51 +00:00
Ruslan Ermilov
9cdb6ee164 Assorted markup, grammar, and spelling fixes. 2004-06-13 18:03:44 +00:00
Ruslan Ermilov
037ac99f39 Tidy up markup. 2004-06-06 17:49:57 +00:00
Ruslan Ermilov
f4e1e42f4b Expand contraction. 2004-06-04 19:21:06 +00:00
Ruslan Ermilov
444d819f63 Markup nit: make the list of options look better. 2004-06-04 19:20:43 +00:00
Nate Lawson
a773b841f2 Unify the start/size parameters for the RSDP search area. Don't bother
trying to exclude the top end of the range since it should hurt to overlap
by 4 bytes in the off-chance the RSDP signature appears incorrectly at the
very top of our search space.
2004-05-28 07:25:23 +00:00