jruoho
303587c62f
ACPICA 20100915:
...
Removed the AcpiOsDerivePciId OSL interface. The various host
implementations of this function were not OS-dependent and are now obsolete
and can be removed from all host OSLs. This function has been replaced by
AcpiHwDerivePciId, which is now part of the ACPICA core code.
AcpiHwDerivePciId has been implemented without recursion. Adds one new
module, hwpci.c. ACPICA BZ 857.
2011-02-17 10:20:32 +00:00
jruoho
3b274ab6bf
Switch acpi(4) to use the new location of ACPICA.
2011-02-17 07:34:42 +00:00
jruoho
3993e0d154
Make the WMI modules depend on the parent mapper.
2011-02-16 13:15:49 +00:00
jruoho
5f852a8424
Change the preprocessor defines around the module(9)'s modcmd() calls such
...
that the modules show in modstat(8) even though these are "builtin".
2011-02-16 09:05:12 +00:00
jruoho
2b0b13f21f
Use ioconf for the module declarations.
2011-02-16 08:35:51 +00:00
jruoho
b9f301d5a2
Convert the homegrown module declarations to use ioconf.
2011-02-16 08:19:56 +00:00
jruoho
7e0b5b7921
Add a skeleton driver for Asus EeePC acpiwmi(4) mappings.
2011-02-16 07:30:26 +00:00
jruoho
2e742e4a77
Reset the firmware waking vector on resume. Adapted from FreeBSD and Linux.
...
No functional change intended.
2011-02-15 20:24:11 +00:00
jruoho
23501c315c
Fix small negligence mistake.
2011-02-14 18:51:44 +00:00
jruoho
512cae94de
Improve error reporting.
2011-01-30 08:55:52 +00:00
jmcneill
c93b203331
If the thermal zone has a _PSL method, print a list of processors
...
associated with the zone at attach time.
acpitz0 at acpi0 (THM0)
acpitz0: levels: critical 127.0 C, passive cooling
acpitz1 at acpi0 (THM1): cpu0 cpu1
acpitz1: levels: critical 100.0 C, passive 95.5 C, passive cooling
2011-01-18 21:15:54 +00:00
jmcneill
2dd19c519d
Use AcpiOsReadPort/AcpiOsWritePort instead of inb/outb so I can get rid of
...
of the i386 and x86_64 ifdefs.
2011-01-18 18:56:25 +00:00
jmcneill
138a9407d2
use PRIx64 instead of llx, fixes build on amd64
2011-01-17 17:32:11 +00:00
jmcneill
8ddcdc25a9
acpiwdrt needs sysmon_wdog
2011-01-17 15:55:24 +00:00
jmcneill
27686d11fe
Add a driver for ACPI "Watchdog Resource Table" devices.
...
acpiwdrt0 at acpi0: mem 0xfed01000,0xfed01004
acpiwdrt0: PCI 0:000:00:0 vendor 0x1106 product 0x3337
acpiwdrt0: watchdog interval 1-1023 sec.
2011-01-17 15:49:13 +00:00
jruoho
f82830f374
Postpone the sensor update with sysmon_taskq(9).
2011-01-13 14:25:33 +00:00
jruoho
3c51ce4b05
Upon request from jmcneill@, put the check back that prevents unnecessary
...
readings during the sysmon_envsys(9) poll cycle. Some systems (notably,
Asus EeePC) have so badly implemented AML that reading the values via
envstat(8) alone can cause considerable delays.
2011-01-13 13:05:13 +00:00
jruoho
f861d1bc75
Clean-up acpi_print(). XXX: The 'acpiverbose' module is still broken...
2011-01-13 05:58:05 +00:00
jruoho
710112e7c7
Scan for docking stations.
2011-01-13 05:14:48 +00:00
jruoho
3dd22c3c2c
Do not try to attach more ACPI CPUs than the amount of "real" CPUs.
2011-01-13 04:18:19 +00:00
jruoho
99d6864d21
Move the function that counts the CPUs from acpicpu(4) to the MD layer.
2011-01-13 03:40:50 +00:00
jruoho
c2df94f224
Disable all GPEs when entering S5. Also add a comment that the function
...
acpi_enter_sleep_state() must be called with interrupts enabled.
2011-01-11 20:35:24 +00:00
jruoho
322f6c439c
Regen.
2011-01-10 17:04:55 +00:00
jruoho
93da29999d
Add SMO1200 (yet another TPM chip). From ThinkPad x201i.
2011-01-10 17:04:22 +00:00
jruoho
2304727048
Small clean-up in the match and attach functions. Namely, use the attach
...
args instead of referencing the global softc. No functional change.
2011-01-10 09:07:27 +00:00
jruoho
f640132d0b
Convert aprint_error(9) to ACPI_DEBUG_PRINT.
2011-01-09 16:22:07 +00:00
jruoho
1b00e79140
Remove also rest of the ACPI_DEVICE_POWER checks.
2011-01-09 16:15:25 +00:00
jruoho
930b9f2eb4
After consulting jmcneill@, set the state to D0 ("on") upon shutdown and
...
detach. A safety measure so that we do not accidentally fry anything.
2011-01-09 15:43:20 +00:00
jruoho
37f5de3ab8
Add a dummy-driver for ACPI fans.
2011-01-09 15:12:33 +00:00
jruoho
019ba6b902
Use acpi_power_register() for consistency. No functional change.
2011-01-09 14:58:10 +00:00
jruoho
1dee4ee9e2
We use config_defer(9) now when scanning power resource and wake-up
...
capabilities, so do not fail in acpi_power_register() if ACPI_DEVICE_POWER is
not set in struct acpi_devnode::ad_flags.
2011-01-09 14:56:06 +00:00
jruoho
c40255f958
Print a message if ACPI 4.0 functionality is present (in which case the
...
driver should be updated).
2011-01-09 09:47:55 +00:00
jruoho
74a4ee7fc0
Rearrange (use two tabs).
2011-01-09 05:06:17 +00:00
jruoho
f422341f8e
Regen.
2011-01-09 04:59:00 +00:00
jruoho
04e39f05b5
Add INTC0102 (Intel TPM chip). From ThinkPad T500.
2011-01-09 04:58:34 +00:00
cegger
21fd508d09
use aprint_error_dev
2011-01-07 14:08:29 +00:00
jruoho
ef2b108701
Fix a comment.
2011-01-06 18:57:22 +00:00
jruoho
0af1ebd4ab
Split the code that makes a string from ACPI_DEVICE_INFO::Name to a function.
2011-01-06 07:05:00 +00:00
jruoho
1bb3132df6
Move the ACPI_ACTIVATE_DEV block around for clarity.
2011-01-06 06:49:12 +00:00
jruoho
e067d18bf0
Add a driver for ACPI power meters.
2011-01-05 20:08:12 +00:00
jruoho
d982261b67
Adjust previous slightly.
2011-01-05 08:08:47 +00:00
jruoho
740a9e0c0e
Make a two-pass scan for acpinodebus. This should ensure that devices such
...
as acpiec(4) are attached before anything else. Numerous bugs are expected
to be fixed with this change.
2011-01-05 07:58:04 +00:00
jruoho
c96fe4ba5e
Revert the changes made in the commit:
...
"Do not queue functions via sysmon_taskq(9) in the pmf(9) resume hooks.
There is a small and unlikely race when the drivers are loaded as modules;
suspend, resume, queue a function, and immediately unload the module."
Queueing the checks in the resume hooks was observed to improve the resume
time by several seconds (!) on a system with poorly implemented AML code.
The observed race condition is a wider issue related to modules; things like
sysmon_taskq(9) should be modified to allow cancelling of queued functions.
2011-01-04 05:48:48 +00:00
jruoho
a26fa60e11
Fix previous.
2011-01-04 04:28:48 +00:00
jruoho
6a3b9e2cde
Scan for devices that are "hot-pluggable".
2011-01-03 08:50:23 +00:00
jruoho
6248a51d8a
Adjust error messages for the previous commit.
2011-01-02 12:06:02 +00:00
jruoho
e008cf160e
Use "real" device names for the hw.acpi.wake and hw.acpi.power sysctl(8)
...
trees. For instance, instead of hw.acpi.wake.DURT, we have hw.acpi.wake.wm0
for wm(4). This is a temporary solution, but without solving the big
abstraction questions, this is the best we can do.
2011-01-02 06:05:47 +00:00
jruoho
9a11653a7b
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.
2011-01-02 05:48:55 +00:00
jruoho
8aaffbf4e9
Include <dev/acpi/acpi_pci.h>.
2010-12-31 14:05:15 +00:00
jruoho
396210649d
acpi_pcidev_find_dev(): take struct acpi_devnode as a parameter.
2010-12-31 10:56:39 +00:00
jruoho
aa705fc95d
Move the function that finds a device_t for the corresponding ACPI device
...
node from ACPIVERBOSE to the ACPI PCI code.
2010-12-31 10:23:44 +00:00
jruoho
b99cdd8ef8
Move the ACPI sleep-specific sysctl variables to hw.acpi.sleep. The old
...
machdep-variables are provided for backwards compatibility (eventually these
should be removed). All ACPI sysctl variables are now under hw.acpi.
2010-12-31 09:19:43 +00:00
jruoho
77f707c929
Use "temperature #" and "fan speed #" rather than "TMP#" and "FAN#" for the
...
sensor names. Remove white space. No functional change.
2010-12-31 08:17:54 +00:00
jruoho
3dc9396c46
Regen.
2010-12-30 19:38:03 +00:00
jruoho
47c7d9897b
Add IBM0079.
2010-12-30 19:37:39 +00:00
jruoho
a5a73b2a05
Change the default behavior to enforce the maximum frequency when the
...
firmware requests to do so. This cures severe overhating (> 120 C) observed
on many laptops, being also on par with the specification(s). This can be
reverted by using the new "hw.acpi.cpu.dynamic" sysctl variable.
2010-12-30 12:05:02 +00:00
jruoho
82e1351b37
Regen.
2010-12-22 22:29:19 +00:00
jruoho
e3cfc8ab23
Add IPI0001, an identifier for ipmi(4). From Dell M710.
2010-12-22 22:28:35 +00:00
jruoho
8e53b1ce30
Use branch annotations in couple of places. Add two comments.
2010-12-20 08:13:04 +00:00
jruoho
e1de74391b
Add AMD C1E quirk. Tested by cegger@.
...
(a) This should be removed once C-states are supported.
(b) As there seems to be no reliable way to detect whether C1E is present,
the quirk blindly assumes that C1E is used on families 10h and 11h.
2010-11-30 04:31:00 +00:00
gsutre
4e1e5c3604
Replace ACPI_UINT64 by ACPICA's ACPI_INTEGER. Remove superfluous casts.
...
No functional change.
2010-11-07 16:36:26 +00:00
gsutre
64448b4070
Hm, the warning sign was not big enough.
2010-11-05 10:35:00 +00:00
gsutre
e0b5016656
Merge ACPI Fujitsu Driver. Provides support for hotkeys and other
...
built-in components through vendor-specific ACPI devices.
ok jruoho@
2010-11-05 10:28:20 +00:00
jruoho
01720ae0de
Initialize pointers to NULL to avoid accidentally free(9)'ing garbage.
...
Should address the panic reported by Alan Bueno in PR # 44042. The root
cause (an empty _DOD) is yet to be determined.
2010-11-04 20:08:12 +00:00
gsutre
678179dfe4
acpi_eval_integer: check that the evaluation produced a result.
...
ok jruoho@
2010-11-02 16:45:48 +00:00
gsutre
027c57ec40
Lock the _DGS values (desired output state) during the display
...
output switch.
ok jruoho@
2010-10-29 09:04:38 +00:00
gsutre
a9f3b6413d
Simplify the sysctl variable for BIOS switch policy, and document it
...
in acpivga(4). The previous hw.acpi.acpivga0.policy variable is
renamed into bios_policy for consistency, and is for ACPI_DEBUG only.
ok jruoho@
2010-10-28 21:45:02 +00:00
jruoho
b6050c6897
Be silent if we get a notification to tell us that we woke up the system.
2010-10-28 18:03:11 +00:00
jruoho
639d1b9782
Install EC space handler and pass everything to acpiec(4).
...
Should fix PR # 43659.
2010-10-28 15:55:04 +00:00
jruoho
fcd284181f
Fix a comment typo.
2010-10-28 04:28:29 +00:00
jruoho
a4915ab4db
Only override data from XPSS if the conventional _PSS did not contain the
...
required information. Problem found and diagnosed by jakllsch@; on some AMD
systems vendors fill _PSS correctly, but do not duplicate the data in XPSS.
2010-10-28 04:27:40 +00:00
gsutre
f32ca0cfec
Make acpi(4) debug aware of ACPI_DISPLAY_COMPONENT.
2010-10-27 14:39:26 +00:00
gsutre
af565a28d4
An _ADR object is not required for PCI root bridges. To solve
...
this, the structure acpi_pciinfo now tells whether the ACPI
device node is a PCI bridge, a regular PCI device, or both.
Problem reported by jmcneill@, who also suggested the solution.
ok jmcneill@, jruoho@
2010-10-26 22:27:44 +00:00
jruoho
85aafab84b
Add LEN0014. (And to the previous commit; a driver for this, not PNP0C32, is
...
possibly coming.)
2010-10-26 09:13:54 +00:00
jruoho
4e313088ed
Regen.
2010-10-26 08:59:06 +00:00
jruoho
91c0c3fd42
Add more identifiers for ATM chips.
...
Also add PNP0C32 for "quickstart buttons". A driver for this comes later.
2010-10-26 08:57:46 +00:00
jruoho
6fdfbe79c2
Add support for module(9).
2010-10-26 05:28:29 +00:00
jruoho
8eae6f006a
Bump WARNS to 4.
2010-10-26 04:37:33 +00:00
jruoho
a953788eba
Use kmem(9) instead of malloc(9).
2010-10-26 04:24:21 +00:00
jruoho
6b1e267f66
Refactor slightly and bump WARNS to 4.
2010-10-26 03:11:10 +00:00
jruoho
9fad28a567
Add support for module(9).
2010-10-25 17:06:58 +00:00
jruoho
a60aadf22e
Fix build failure.
2010-10-25 15:38:05 +00:00
jruoho
70e14dc983
Bump WARNS to 4.
2010-10-25 07:48:03 +00:00
jmcneill
9750ca2f9c
add support for building as a module
2010-10-24 18:26:29 +00:00
jmcneill
4e44999554
add support for building as modules
2010-10-24 16:25:31 +00:00
jmcneill
5991cdfeba
add rescan support
2010-10-24 15:07:20 +00:00
jruoho
117351d1b6
Add acpiwmi(4) mappings for MSI laptops.
...
XXX: It may be necessary to fix PR # 43659 before this works on all models.
2010-10-24 08:54:14 +00:00
jruoho
c99562cb83
Simplify acpi_enter_sleep_state() and guard it against NULL pointer
...
dereferences. Try to avoid referencing the global acpi_softc, which should
really be static or at least internal to acpi(4).
2010-10-24 07:53:04 +00:00
gsutre
e28e04ce32
Merge ACPI display driver. Provides generic support for brightness
...
control and output switching, through ACPI video extensions.
TODO: use wsconsctl(8) instead of sysctl(8) for brightness control.
ok jruoho@
also discussed with cegger@ and jmcneill@
2010-10-12 19:10:49 +00:00
gsutre
646cb7e223
Store sysctl MIBs instead of a pointer to the root of the sysctl
...
sub-tree (because the pointer may be invalid at the time we use it).
ok jruoho@
2010-10-08 07:04:31 +00:00
gsutre
92e792e4a4
Drop _HID requirement for attachment under acpi(4). From now on,
...
drivers attaching to the acpinodebus interface should not assume
that the passed acpi_devnode has a valid _HID.
ok jruoho@
2010-10-02 18:06:47 +00:00
gsutre
a9c0568376
Do not discard ACPI PCI addresses with function number 0xFFFF: the
...
ACPI specification allows them (ACPI 4.0a, p. 200).
ok jruoho@
2010-09-24 07:48:59 +00:00
jmcneill
eb0e82d870
Add support for blacklisting ACPI BIOS implementations by year. By default,
...
don't use ACPI on BIOS which advertise release years <= 2000. This
can be changed by setting option ACPI_BLACKLIST_YEAR=0 or by setting
acpi_force_load=1.
2010-09-06 15:54:26 +00:00
jakllsch
eb044d2951
Remove quirk added in rev 1.14. Even after the change of 1.16, it
...
still matches more boards that just the one with the problem.
Interrupts from the SATA controllers on my MSI K8N Neo3 boards
(which both versions of this quirk matched) are broken when ACPI
is disabled. My board does not exhibit AE_AML_INFINITE_LOOP
problems.
If we want to avoid manually specifying RB_MD2 in boothowto on
pgoyette@'s board, we're going to have to find another way; perhaps
with the DMI strings available from pmf(9).
Anyhow, some boards needing RB_MD2 during boot(8) is in my opinion
better than others needing to set acpi_force_load in ddb or gdb.
2010-09-06 14:09:54 +00:00
jruoho
40ac1b9f62
Use FADT instead of DSDT in the quirk added in the revision 1.14.
2010-09-04 17:48:26 +00:00
jruoho
a8cdc50f5d
Fix PR kern/43765 from Scott Ellis.
...
Note that the solution is not optimal. If ichlpcib(4) provides SpeedStep
support, possible I/O resource conflicts may occur with acpicpu(4). Ideally,
as noted for instance in Windows design documents, ichlpcib(4) should never
expose SpeedStep when ACPI is being used. The probability for potential race
conditions is however very small, being limited to few P4-era machines and
being dependent on user actions.
2010-08-27 03:05:26 +00:00
jruoho
9d3272e78a
From jmcneill@: fix and rework the obscure _OSC evaluation.
2010-08-27 02:44:05 +00:00
jruoho
8c53a12242
Bypass ACPI_NOTIFY_DEVICE_WAKE also in acpilid(4). Use aprint_debug_dev(9)
...
for an unknown notify. (The ACPI drivers should really not print anything
as we now have a global notify handler that can catch the debug information.)
2010-08-24 15:03:34 +00:00
jruoho
22be5f8eda
Remove phony spl(9). XXX: This driver needs to be cleaned up.
2010-08-24 14:53:45 +00:00
jruoho
42a7d04b04
Add native support for AMD family 0Fh processors. This is the furthest we
...
will go backwards; K7 will not be supported already due doubts about
availability and reliability of ACPI during that era. Some unfortunate code
duplication is present (but not overly much). Thanks to cegger@ and jakllsch@
for patiently testing this.
2010-08-24 07:27:59 +00:00