freebsd-dev/sys/i386
Nate Lawson 76f6fe4f31 Rewrite the acpi_battery interface to allow for other battery types
(i.e., smart battery) and fix various bugs found during the cleanup.

API changes:
* kernel access:
Access to individual batteries is now via devclass_find("battery").
Introduce new methods ACPI_BATT_GET_STATUS (for _BST-formatted data) and
ACPI_BATT_GET_INFO (for _BIF-formatted data).  The helper function
acpi_battery_get_battinfo() now takes a device_t instead of a unit #
argument.  If dev is NULL, this signifies all batteries.

* ioctl access:
The ACPIIO_BATT_GET_TYPE and ACPIIO_BATT_GET_BATTDESC ioctls have been
removed.  Since there is now no need for a mapping between "virtual" unit
and physical unit, usermode programs can just specify the unit directly and
skip the old translation steps.  In fact, acpiconf(8) was actually already
doing this and virtual unit was the same as physical unit in all cases
since there was previously only one battery type (acpi_cmbat).  Additionally,
we now map the ACPIIO_BATT_GET_BIF and ACPIIO_BATT_GET_BST ioctls for all
batteries, if they provide the associated methods.

* apm compatibility device/ioctls:  no change
* sysctl:  no change

Since most third-party applications use the apm(4) compat interface, there
should be very few affected applications (if any).

Reviewed by:	bruno
MFC after:	5 days
2005-07-23 19:36:00 +00:00
..
acpica Rewrite the acpi_battery interface to allow for other battery types 2005-07-23 19:36:00 +00:00
bios Fix build (including both asm.h and asmacros.h is evil). 2005-07-22 15:01:07 +00:00
compile
conf Add the latest r300 code from r300.sf.net. This is based on the patch supplied 2005-07-20 21:10:57 +00:00
cpufreq
i386 Make the facility for recognizing BIOS-signatures more general 2005-07-21 09:48:37 +00:00
ibcs2 Regen. 2005-07-13 20:35:09 +00:00
include Make the facility for recognizing BIOS-signatures more general 2005-07-21 09:48:37 +00:00
isa Fixup some more fallout from the lapic/i8254 changes: 2005-07-13 15:43:21 +00:00
linux Regen. 2005-07-13 20:35:09 +00:00
pci - Ignore BIOS IRQs (that is, IRQ settings left by the BIOS or a previous OS 2005-07-13 15:41:16 +00:00
svr4
Makefile