Add methods to get/set ints acpi_EvaluateInteger only gets an int. Update api to
get/set so that every consumer does not end up defining their own. |
Mark Santcroos |
Fix getenv_string. Does not seem to work in sys/dev/acpica/Osd/OsdTable.c. Turned out
the name should not end in "_name". |
Mark Santcroos and Peter Grehan |
acpi_video manpage. See appendix B of the ACPI 2.0 spec for info on what this driver
does as well as look at the sysctls it exports. |
Mark Santcroos |
fd0 not working on Intel boards. The floppy device did not work due to the _CRS
object on some systems splitting the IO port into three 2 port resources (6 ports total).
Fix committed to sys/isa/fd.c to work with this type of resource specification. |
Nate Lawson and John Baldwin |
Some BIOSs use 0x3f2-0x3f5 as the port range -- the real range is 0x3f0-0x3f5, 0x3f7.
Workaround committed. |
Warner Losh |
ACPI Debugging Handbook Page -- Introduction to ACPI for new users as well as how to
assist us in fixing problems as they arise. |
Nate Lawson and Tom Rhodes |
acpi_video driver (njl) -- Imported. |
Nate Lawson and Taku YAMAMOTO (driver author) |
BIOS blacklist -- implement a mechanism and specific quirks to disable features or
ACPI entirely on known broken systems. If a custom DSDT is loaded, do not check it
against the blacklist (since a user may fix the DSDT without changing the vendor/revision
fields.) Add blacklist option for disabling acpi on certain systems. |
Nate Lawson |
acpi_toshiba man page -- Driver submitted by Hiroyuki Aizu and committed. All it
needs is someone to try it out and document the sysctls. |
Philip Paeps |
Invalid PBLK length workaround -- Accept a PBLK of length 5 (spec says 6). Only
enable C2 for this though. Some people may be using 7 to indicate another C3 state but we
do not support the extra state. |
Nate Lawson |
Check EcSpacehandler to make sure it is correct for multi-byte access. Found
off-by-one in that the last address (0xff) could never be written or read. |
|
Pick a default MS OS to claim -- Too much ASL depends on a MS OS string so we should
masquerade as the most accurate one. Picked Win2k™ ("Microsoft Windows NT™"),
then reverted once _OSI support was available. ACPI-CA still has a default of "Microsoft
Windows NT™". |
Nate Lawson |
Handle DPF resource types in acpi_pcib.c -- Some _PRS values are bracketed with
start/end dependent function resource descriptors. Parse/skip them to fix PCI IRQ
routing. |
Nate Lawson |
acpi_toshiba updates -- Implement support for DSSX which appears to be the only way
to do display switching (other than acpi_video). |
Nate Lawson |
ASUS driver -- Driver for ASUS ACPI extras (hotkeys). Similar to the acpi4asus.sf.net
Linux project. |
Philip Paeps |
Fix sysctls for debug layer/level -- setting from usermode via a sysctl did not
work. |
Nate Lawson |
Make lid and sleep button sysctls default to min(supported_states) -- lid switch now
defaults to NONE, sleep button to minimum sleep state available. |
Nate Lawson |
newbus attachments for cpu -- Get cpu devices under newbus so drivers like cpufreq
can probe/attach. |
Nate Lawson |
Make CPU cx_lowest sysctl more readable -- Use C[1-9] instead of the index
value. |
Nate Lawson |
Update EC GLK check -- Use the handle from the table to read _GLK instead of always
defaulting to using the global lock. |
Nate Lawson |
Merge ECDT/EC probe |
Nate Lawson |
_INI methods -- run for all devices, not just Device objects. ACPI-CA now calls _INI
for Devices, ThermalZones and Processors. |
|
Fix acpidump failing on several systems -- acpidump(8) fails on some systems. I
suspect this may be in how we search low memory for the RSDP. Changed to only search EBDA
(1 KB pointed to by 16 bit pointer at 0x40E) and high memory (0xE0000 - 0xFFFFF)
according to the spec (section 5.2.2). |
Nate Lawson |
Fix apm compat interface -- Hacked around this in the userland utility by marking
values >= 255 as "unknown". |
Nate Lawson |
Update GPE code to handle general device wake -- Also, disable GPEs that are not
valid when entering a new sleep state. Without this, GPEs for the lid left enabled on a
Thinkpad™ X22 restart the system after power off. Add userland interface for
enabling device wake (done as per-device sysctls). |
Nate Lawson |
Fix shutdown routines to not poke all the events (causes auto power on for some
people). Workaround is to set hw.acpi.disable_on_poweroff=0. Now that GPEs are properly
disabled based on _PRW during suspend and poweroff, we can hopefully remove the call to
acpi_Disable() in the poweroff path. We now handle the reboot case also by hooking
device_shutdown(). |
Nate Lawson |
Cleanup acpidump/boot EBDA lengths. |
Nate Lawson |
Fix acpi_cpu busy refcount -- We no longer use a refcount but instead avoid doing any
housekeeping after re-enabling interrupts at the end of acpi_cpu_idle(). Otherwise, the
context switch after unmasking ints could disrupt device state. |
Nate Lawson |
Do not print an error message for _PR0 method -- If not present, do not print an
error in switch_consumer. |
Nate Lawson |
acpi sysresource probing -- Probe/attach acpi resources in the acpi bus and then dole
it out to children as necessary. Requires rman(9). Includes more sophisticated handling
of device ordering in scan. |
Nate Lawson |
Update ACPI blacklist -- Read entries from various OS's and add them to our blacklist
table. |
Nate Lawson, Mark Santcroos |
Fix general wake code -- remove use of device_t flags as they may collide with the
driver. Use an acpi ivar instead. Fix for non-acpi devices as well by using a bus walk
routine instead of device_suspend. Add code to turn on appropriate power resources.
Disable EC in shutdown path. |
Nate Lawson |
Fix drivers and the apm compat interface -- Currently, the apm compat interface
expects byte values but the ABI used is a set of u_ints and an int. Either the apm or
acpi battery drivers (or both) are setting the value to -1, which results in 0xffffffff
being passed back as the current state. Really, only 255 should be returned in this case.
The apm userland utility marks values >= 255 as "unknown" to work around this. But
really the underlying drivers should be fixed. |
Warner Losh |
Fix EC timeouts -- move to a sx lock to cover EcWait instead of a mutex so we can
hold it across msleep. This fixed the timed out errors that occurred occasionally for
some users. |
Nate Lawson |
Package all info on how to do an ACPI import -- done and handed off to
Mark Santcroos for inclusion in the acpi projects website. |
Nate Lawson |
ACPI floppy driver probing -- Add a fdc_acpi_probe method to enumerate floppies using
_FDE, _FDI methods. |
Nate Lawson |
Rework ACPI PCI link support -- _DIS all links, ignore invalid _CRS, ignore _STA,
assume _SRS succeeds. |
Nate Lawson |
Fix EISA probe not to write to registers. Turns out an inb actually triggers the boot
hang. Patch committed to only probe the first slot; however, this breaks the Adaptec VLB
adapter (not EISA). Justin Gibbs is fixing that device's probe. Done. |
Nate Lawson |
Giant-free locking -- Remove dependency on Giant. |
Nate Lawson |
Add SSDT support to acpidump(8) -- Right now we only dump the fixed tables and DSDT.
Change acpidump(8) to dump the SSDT tables. It currently concatenates them with the
DSDT. |
Marcel Moolenaar |
Change shutdown path -- do not use smp_rendezvous() since it acquires a spinlock.
Instead, MI code should run the shutdown path only on the BSP and all other processors
should be halted. |
Peter Wemm |
Turn ACPI and PCI devices off or to a lower power state in suspend and back on again
in resume. Override the default of D3 with the value the BIOS specifies in _SxD, if
present. Skip serial devices (PNP05xx) since they seem to hang when set to D3 and may
require special driver support. Also skip non-type 0 PCI devices (i.e., bridges) since
they don't seem to handle being powered off. |
Nate Lawson |