summaryrefslogtreecommitdiffstats
path: root/sys/dev/acpica/acpivar.h
Commit message (Collapse)AuthorAgeFilesLines
* Invoke 3 ACPI task threads as default if option ACPI_MAX_THREADS isiwasaki2002-10-311-1/+8
| | | | | | not defined. To make previous default behavior (ACPI_MAX_THREADS undefined), define option ACPI_MAX_THREADS as 0.
* - Include lock headers on current in this header instead of puttingjhb2002-10-161-3/+18
| | | | | | | #if's in all the other ACPI source files. - Use splhigh() for the ACPI subsystem lock on 4-stable. Sponsored by: The Weather Channel
* Add a helper routine acpi_SetIntrModel() to call the _PIC method to setjhb2002-09-061-0/+8
| | | | | the interrupt model in use so that ACPI can properly route interrupts for machines using APIC's or SAPIC's.
* Resolve conflicts arising from the ACPI CA 20020815 import.iwasaki2002-08-291-1/+1
|
* Add new sysctl MIB (hw.acpi.sleep_delay) to specify the delay (iniwasaki2002-08-251-0/+1
| | | | | seconds) before ACPI sleep. Some machines might need this to sleep by Hot-key.
* Add device(power/sleep button and lid) wake function from sleeping state.iwasaki2002-07-221-0/+3
| | | | | | | This is required for some Thinkpad (and maybe VAIO) machines to wake the system up from sleep. Currently partially implemented, more complete implementation will come later.
* Remove __P.alfred2002-03-201-1/+1
|
* Add generalized power profile code.iwasaki2002-03-041-15/+0
| | | | | | | | | | | | | This makes other power-management system (APM for now) to be able to generate power profile change events (ie. AC-line status changes), and other kernel components, not only the ACPI components, can be notified the events. - move subroutines in acpi_powerprofile.c (removed) to kern/subr_power.c - call power_profile_set_state() also from APM driver when AC-line status changes - add call-back function for Crusoe LongRun controlling on power profile changes for a example
* Add our own private defines for driver debug layers.msmith2002-02-231-7/+18
| | | | | | Obsolete the acpi_GetInto* interfaces. Fix a typo to be less appropriate.
* Fix irq/drq handling. IRQ and DRQ resource information can be gettakawata2002-01-311-2/+2
| | | | | in one object for one resource. Array of values in a object means possible values for the object.
* Staticise devclasses and some unnecessarily global variables.msmith2002-01-081-2/+0
|
* Oops, wrong option name. It's should be ACPI_MAX_THREADS,iwasaki2001-12-251-1/+1
| | | | not ACPI_NO_THREADS.
* Add OS layer ACPI mutex and threading support.iwasaki2001-12-221-0/+9
| | | | | | | | | | | | | | | | | | - Temporary fix a bug of Intel ACPI CA core code. - Add OS layer ACPI mutex support. This can be disabled by specifying option ACPI_NO_SEMAPHORES. - Add ACPI threading support. Now that we have a dedicate taskqueue for ACPI tasks and more ACPI task threads can be created by specifying option ACPI_MAX_THREADS. - Change acpi_EvaluateIntoBuffer() behavior slightly to reuse given caller's buffer unless AE_BUFFER_OVERFLOW occurs. Also CM battery's evaluations were changed to use acpi_EvaluateIntoBuffer(). - Add new utility function acpi_ConvertBufferToInteger(). - Add simple locking for CM battery and temperature updating. - Fix a minor problem on EC locking. - Make the thermal zone polling rate to be changeable. - Change minor things on AcpiOsSignal(); in ACPI_SIGNAL_FATAL case, entering Debugger is easier to investigate the problem rather than panic.
* Disable sleep requests for 5 sec after wakeup. This is needed foriwasaki2001-12-091-0/+1
| | | | | | | | some Toshiba and Thinkpad laptops. Wakeup event is generated by power button or sleep button on some laptops but this also generates SCI interrupt, and shutdown the system as result. So this is introduced so that acpi driver ignore given requests for certain period.
* Cleanups of verbose printing. All the messages for the debugging isiwasaki2001-11-181-0/+5
| | | | | | | disabled unless verbose flag is set. Also fix some messages in terms of English. The critical messages and error messages in probe/attach routine are unchanged by this commit.
* Add S4BIOS sleep (BIOS hibernation) and DSDT overriding support.iwasaki2001-11-061-0/+2
| | | | | | | | | | | | | | - Add S4BIOS sleep implementation. This will works well if MIB hw.acpi.s4bios is set (and of course BIOS supports it and hibernation is enabled correctly). - Add DSDT overriding support which is submitted by takawata originally. If loader tunable acpi_dsdt_load="YES" and DSDT file is set to acpi_dsdt_name (default DSDT file name is /boot/acpi_dsdt.aml), ACPI CA core loads DSDT from given file rather than BIOS memory block. DSDT file can be generated by iasl in ports/devel/acpicatools/. - Add new files so that we can add our proposed additional code to Intel ACPI CA into these files temporary. They will be removed when similar code is added into ACPI CA officially.
* Some improvements of control method battery driver.iwasaki2001-10-301-0/+1
| | | | | | | | | | | | | - Add a new MIB for battery info expire time in order to make it changeable. Battery info expire time can be specified by hw.acpi.battery.info_expire in sec. - Add own MALLOC type and fix some potential memory leakages. - Change some frequent printings to verbose printing. - Stop timeout during acpi_cmbat_get_bst() too. This should reduce the races with BIF evaluation. - Remove acpi_cmbat_get_bif() invocation from acpi_cmbat_attach(). This was redundant because this should be called from acpi_cmbat_timeout() now.
* Some small improvements of ACPI thermal driver.iwasaki2001-10-291-0/+10
| | | | | | | | | | - Give a guaranteed minimum cooling run time to avoid too frequent cooling system On/Off switching. The minimum cooling run time can be specified by hw.acpi.thermal.min_runtime in sec. - Refine message printing (_AC-1 -> NONE). - Add verbose mode enable/disable capability by hw.acpi.verbose in bool. Reviewed by: acpi-jp@ folks
* Add APM compatibility feature to ACPI.iwasaki2001-10-261-0/+15
| | | | | | | | | | | | | | | | | This emulates APM device node interface APIs (mainly ioctl) and provides APM services for the applications. The goal is to support most of APM applications without any changes. Implemented ioctls in this commit are: - APMIO_SUSPEND (mapped ACPI S3 as default but changable by sysctl) - APMIO_STANDBY (mapped ACPI S1 as default but changable by sysctl) - APMIO_GETINFO and APMIO_GETINFO_OLD - APMIO_GETPWSTATUS With above, many APM applications which get batteries, ac-line info. and transition the system into suspend/standby mode (such as wmapm, xbatt) should work with ACPI enabled kernel (if ACPI works well :-) Reviewed by: arch@, audit@ and some guys
* Fix some 64-bit uncleanliness.peter2001-10-061-7/+20
|
* Fix some style bugs before fixing some real bugs.peter2001-10-061-7/+17
|
* Note that now that some ISA devices will attach to ACPI, we need tomsmith2001-08-301-1/+6
| | | | keep the ivar indexes that ISA uses free.
* - Prevent the ACPI code from being loaded as a module other than atmsmith2001-07-301-1/+4
| | | | | | | | | | | boot time. Loading as a module once the system is up and running doesn't make any sense. - Fix acpi_FindIndexedResource (it would only check the first resource), changes the calling interface. - Add a new helper function (acpi_AppendBufferResource) to help building buffers containing resources.
* Convert from acpi_strerror() to AcpiFormatException()msmith2001-07-211-3/+0
| | | | Fix dangling include of the dear departed acpi_ecreg.h
* The API for loading tables changed (we no longer explicitly search for themsmith2001-07-211-2/+2
| | | | | | | | | | | RSDP, it's now found via a callback). AcpiOsSleepUsec() went away, use AcpiOsSleep() instead (we could use AcpiOsStall() too) AcpiFormatException() was changed to make more sense (it behaves like our old acpi_strerror() did), so throw acpi_strerror() away (still #defined in acpivar.h though, we need to sweep these seperately).
* Add ACPI S2-S4BIOS Suspend/Resume code.takawata2001-07-201-0/+11
| | | | | | Some problems may remain. Reviewed by:iwasaki
* Add acpi_GetTableIntoBuffer, to aid in fetching tables.msmith2001-07-071-0/+1
|
* Add support for system power profiles; select "performance" when AC powermsmith2001-07-071-2/+15
| | | | is available and "economy" when it is not.
* Add a new helper function for finding resources in resource buffers.msmith2001-07-051-0/+1
| | | | Move the ACPI generic battery code into a new file.
* Add ACPI subsystem mutex support, currently disabled. This implementsmsmith2001-06-291-1/+21
| | | | a private mutex we can use to wrap the ACPI subsystem proper.
* Sync to my work in progress:msmith2001-06-281-3/+15
| | | | | | | | | | | | - Reorder the acpi_* functions in a sensible fashion - Add acpi_ForeachPackageObject and acpi_GetHandleInScope - Use the new debugging layer/level names - Implement most of the guts of the acpi_thermal module; passive cooling isn't there yet, but active cooling should work. - Implement power resource handling (acpi_powerres.c) This compiles and mostly works, but my test coverage is small, so feedback is welcome.
* Add sysctl interface (Read-only) for temprature, AC-line and Battery.iwasaki2001-06-231-0/+12
| | | | Patches for acpi_cmbat.c submitted by Munehiro Matsuda.
* - Updates for new constant naming in the ACPI CA 20010518 update.msmith2001-05-291-0/+7
| | | | | | | | | | | - Use __func__ instead of __FUNCTION. - Support power-off to S3 or S5 (takawata) - Enable ACPI debugging earlier (with a sysinit) - Fix a deadlock in the EC code (takawata) - Improve arithmetic and reduce the risk of spurious wakeup in AcpiOsSleep. - Add AcpiOsGetThreadId. - Simplify mutex code (still disabled).
* ACPI_NUMBER becomes ACPI_INTEGER. acpi_EvaluateNumber becomesmsmith2001-01-311-1/+1
| | | | | | | | | | | acpi_EvaluateInteger. Use acpi_EvaluateInteger instead of doing things the hard way where possible. AcpiSetSystemSleepState (unofficial) becomes AcpiEnterSleepState. Use the AcpiGbl_FADT pointer rather than searching for the FADT.
* Add 3 new dynamic sysctl's to control the sleep states switched to on ajhb2001-01-131-0/+3
| | | | | | | power button, sleep button, or lid close event. The sysctl's use the ACPI sleep state names S0, S1, S2, S3, S4, S4B, and S5. Reviewed by: iwasaki
* - Convert a lot of homebrew debugging output to use the ACPI CA debuggingmsmith2000-12-081-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | infrastructure. It's not perfect, but it's a lot better than what we've been using so far. The following rules apply to this: o BSD component names should be capitalised o Layer names should be taken from the non-CA set for now. We may elect to add some new BSD-specific layers later. - Make it possible to turn off selective debugging flags or layers by listing them in debug.acpi.layer or debug.acpi.level prefixed with !. - Fully implement support for avoiding nodes in the ACPI namespace. Nodes may be listed in the debug.acpi.avoid environment variable; these nodes and all their children will be ignored (although still scanned over) by ACPI functions which scan the namespace. Multiple nodes can be specified, separated by whitespace. - Implement support for selectively disabling ACPI subsystem components via the debug.acpi.disable environment variable. The following components can be disabled: o bus creation/scanning of the ACPI 'bus' o children attachment of children to the ACPI 'bus' o button the acpi_button control-method button driver o ec the acpi_ec embedded-controller driver o isa acpi replacement of PnP BIOS for ISA device discovery o lid the control-method lid switch driver o pci pci root-bus discovery o processor CPU power/speed management o thermal system temperature detection and control o timer ACPI timecounter Multiple components may be disabled by specifying their name(s) separated by whitespace. - Add support for ioctl registration. ACPI subsystem components may register ioctl handlers with the /dev/acpi generic ioctl handler, allowing us to avoid the need for a multitude of /dev/acpi* control devices, etc.
* Initial FreeBSD OSPM (operating system power management) modules formsmith2000-10-281-0/+221
ACPICA. Most of these are still works in progress. Support exists for: - Fixed feature and control method power, lid and sleep buttons. - Detection of ISA PnP devices using ACPI namespace. - Detection of PCI root busses using ACPI namespace. - CPU throttling and sleep states (incomplete) - Thermal monitoring and cooling control (incomplete) - Interface to platform embedded controllers (mostly complete) - ACPI timer (incomplete) - Simple userland control of sleep states. - Shutdown and poweroff.
OpenPOWER on IntegriCloud