From: Sascha Wildner Date: Wed, 11 Nov 2009 21:12:52 +0000 (+0100) Subject: acpi*.4: Update manual pages for the recent ACPI update. X-Git-Url: https://gitweb.dragonflybsd.org/~polachok/dragonfly.git/commitdiff_plain/2f5aa587405538a7a967b8f279ece825decb4d67 acpi*.4: Update manual pages for the recent ACPI update. Taken-from: FreeBSD --- diff --git a/share/man/man4/Makefile b/share/man/man4/Makefile index 617881ab7c..b28f26b3f7 100644 --- a/share/man/man4/Makefile +++ b/share/man/man4/Makefile @@ -5,6 +5,10 @@ MAN= aac.4 \ acpi.4 \ acpi_asus.4 \ + acpi_fujitsu.4 \ + acpi_hp.4 \ + acpi_panasonic.4 \ + acpi_sony.4 \ acpi_thermal.4 \ acpi_thinkpad.4 \ acpi_toshiba.4 \ diff --git a/share/man/man4/acpi.4 b/share/man/man4/acpi.4 index 97bf78cb6f..e346ea621c 100644 --- a/share/man/man4/acpi.4 +++ b/share/man/man4/acpi.4 @@ -23,10 +23,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/acpi.4,v 1.50 2005/02/23 07:23:35 trhodes Exp $ -.\" $DragonFly: src/share/man/man4/acpi.4,v 1.8 2008/08/28 16:38:59 swildner Exp $ +.\" $FreeBSD: src/share/man/man4/acpi.4,v 1.61.8.1 2009/04/15 03:14:26 kensmith Exp $ .\" -.Dd September 29, 2007 +.Dd November 11, 2009 .Dt ACPI 4 .Os .Sh NAME @@ -36,6 +35,7 @@ .Cd "device acpi" .Pp .Cd "options ACPI_DEBUG" +.Cd "options DDB" .Sh DESCRIPTION The .Nm @@ -53,17 +53,17 @@ driver is automatically loaded by the .Xr loader 8 , and should only be compiled into the kernel on platforms where ACPI is mandatory. -.Sh SYSCTLS +.Sh SYSCTL VARIABLES The .Nm driver is intended to provide power management without user intervention. -Thus, some of these sysctls are controlled automatically by the -.Pa power_profile -.Xr rc 8 -script, which can be configured via -.Xr rc.conf 5 . -If values are specified manually, they may be overridden. +If the default settings are not optimal, the following sysctls can be +used to modify or monitor +.Nm +behavior. .Bl -tag -width indent +.It Va hw.acpi.acline +AC line state (1 means online, 0 means on battery power). .It Va hw.acpi.cpu.cx_usage Debugging information listing the percent of total usage for each sleep state. The values are reset when @@ -71,7 +71,9 @@ The values are reset when is modified. .It Va hw.acpi.cpu.cx_lowest Lowest Cx state to use for idling the CPU. -A scheduling algorithm will select states between C1 and this setting +A scheduling algorithm will select states between +.Li C1 +and this setting as system load dictates. To enable ACPI CPU idling control, .Va machdep.cpu_idle_hlt @@ -79,20 +81,115 @@ must be set to 1. .It Va hw.acpi.cpu.cx_supported List of supported CPU idle states and their transition latency in microseconds. -Each state has a type (e.g., C2). -C1 is equivalent to the ia32 HLT instruction, C2 provides a deeper -sleep with the same semantics, and C3 provides the deepest sleep +Each state has a type (e.g., +.Li C2 ) . +.Li C1 +is equivalent to the ia32 +.Li HLT +instruction, +.Li C2 +provides a deeper +sleep with the same semantics, and +.Li C3 +provides the deepest sleep but additionally requires bus mastering to be disabled. -States greater than C3 provide even more power savings with the same -semantics as the C3 state. +States greater than +.Li C3 +provide even more power savings with the same +semantics as the +.Li C3 +state. Deeper sleeps provide more power savings but increased transition latency when an interrupt occurs. +.It Va hw.acpi.disable_on_reboot +Disable ACPI during the reboot process. +Most systems reboot fine with ACPI still enabled, but some require +exiting to legacy mode first. +Default is 0, leave ACPI enabled. +.It Va hw.acpi.handle_reboot +Use the ACPI Reset Register capability to reboot the system. +Default is 0, use legacy reboot support. +Some newer systems require use of this register, while some only work +with legacy rebooting support. +.It Va hw.acpi.lid_switch_state +Suspend state +.Pq Li S1 Ns \[en] Ns Li S5 +to enter when the lid switch (i.e., a notebook screen) is closed. +Default is +.Dq Li NONE +(do nothing). +.It Va hw.acpi.power_button_state +Suspend state +.Pq Li S1 Ns \[en] Ns Li S5 +to enter when the power button is pressed. +Default is +.Li S5 +(power-off nicely). +.It Va hw.acpi.reset_video +Reset the video adapter from real mode during the resume path. +Some systems need this help, others have display problems if it is enabled. +Default is 0 (disabled). +.It Va hw.acpi.s4bios +Indicate whether the system supports +.Li S4BIOS . +This means that the BIOS can handle all the functions of suspending the +system to disk. +Otherwise, the OS is responsible for suspending to disk +.Pq Li S4OS . +Most current systems do not support +.Li S4BIOS . +.It Va hw.acpi.sleep_button_state +Suspend state +.Pq Li S1 Ns \[en] Ns Li S5 +to enter when the sleep button is pressed. +This is usually a special function button on the keyboard. +Default is +.Li S3 +(suspend-to-RAM). +.It Va hw.acpi.sleep_delay +Wait this number of seconds between preparing the system to suspend and +actually entering the suspend state. +Default is 1 second. +.It Va hw.acpi.supported_sleep_state +Suspend states +.Pq Li S1 Ns \[en] Ns Li S5 +supported by the BIOS. +.Bl -tag -width indent +.It Li S1 +Quick suspend to RAM. +The CPU enters a lower power state, but most peripherals are left running. +.It Li S2 +Lower power state than +.Li S1 , +but with the same basic characteristics. +Not supported by many systems. +.It Li S3 +Suspend to RAM. +Most devices are powered off, and the system stops running except for +memory refresh. +.It Li S4 +Suspend to disk. +All devices are powered off, and the system stops running. +When resuming, the system starts as if from a cold power on. +Not yet supported by +.Fx +unless +.Li S4BIOS +is available. +.It Li S5 +System shuts down cleanly and powers off. +.El +.It Va hw.acpi.verbose +Enable verbose printing from the various ACPI subsystems. .El -.Sh TUNABLES +.Sh LOADER TUNABLES Tunables can be set at the .Xr loader 8 prompt before booting the kernel or stored in .Pa /boot/loader.conf . +Many of these tunables also have a matching +.Xr sysctl 8 +entry for access after boot. .Bl -tag -width indent .It Va acpi_dsdt_load Enables loading of a custom ACPI DSDT. @@ -104,8 +201,17 @@ debugging purposes. .It Va debug.acpi.enabled Selectively enables portions of ACPI that are disabled by default, for debugging purposes. +.It Va debug.acpi.max_threads +Specify the number of task threads that are started on boot. +Limiting this to 1 may help work around various BIOSes that cannot +handle parallel requests. +The default value is 3. .It Va debug.acpi.quirks Override any automatic quirks completely. +.It Va debug.acpi.resume_beep +Beep the PC speaker on resume. +This can help diagnose suspend/resume problems. +Default is 0 (disabled). .It Va hint.acpi.0.disabled Set this to 1 to disable all of ACPI. If ACPI has been disabled on your system due to a blacklist entry for your @@ -116,12 +222,11 @@ Try increasing this number if you get the error .Qq Li AE_NO_HARDWARE_RESPONSE . .It Va hw.acpi.host_mem_start Override the assumed memory starting address for PCI host bridges. -.It Va hw.acpi.pci.link.%d.%d.%d.irq -Override the interrupt to use. .It Va hw.acpi.reset_video Enables calling the VESA reset BIOS vector on the resume path. -Some graphic chips have problems such as LCD white-out after resume. -Try setting this to 0 if this causes problems for you. +This can fix some graphics cards that have problems such as LCD white-out +after resume. +Default is 0 (disabled). .It Va hw.acpi.serialize_methods Allow override of whether methods execute in parallel or not. Enable this for serial behavior, which fixes @@ -132,6 +237,25 @@ It is off by default since this breaks recursive methods and some IBMs use such code. .It Va hw.acpi.verbose Turn on verbose debugging information about what ACPI is doing. +.It Va hw.pci.link.%s.%d.irq +Override the interrupt to use for this link and index. +This capability should be used carefully, and only if a device is not +working with +.Nm +enabled. +.Qq %s +is the name of the link (e.g., LNKA). +.Qq %d +is the resource index when the link supports multiple IRQs. +Most PCI links only have one IRQ resource, so the below form should be used. +.It Va hw.pci.link.%s.irq +Override the interrupt to use. +This capability should be used carefully, and only if a device is not +working with +.Nm +enabled. +.Qq %s +is the name of the link (e.g., LNKA). .El .Sh DISABLING ACPI Since ACPI support on different platforms varies greatly, there are many @@ -249,7 +373,11 @@ Supports system cooling and heat management. Implements a timecounter using the ACPI fixed-frequency timer. .It Li video .Pq Vt device -Supports acpi_video which may conflict with agp device. +Supports +.Xr acpi_video 4 +which may conflict with +.Xr agp 4 +device. .El .Pp The @@ -272,11 +400,7 @@ Supports HPET. It is also possible to avoid portions of the ACPI namespace which may be causing problems, by listing the full path of the root of the region to be avoided in the kernel environment variable -.Va debug.acpi.avoid.paths , -or .Va debug.acpi.avoid . -The latter also disables initialization of ACPI namespace as a -workaround for systems where not doing so crashes interpreter. The object and all of its children will be ignored during the bus/children scan of the namespace. The ACPI CA code will still know about the avoided region. @@ -492,7 +616,21 @@ and many other contributors. This manual page was written by .An Michael Smith Aq msmith@FreeBSD.org . .Sh BUGS -If the -.Nm -driver is loaded as a module when it is already linked as part of the -kernel, odd things may happen. +Many BIOS versions have serious bugs that may cause system instability, +break suspend/resume, or prevent devices from operating properly due to +IRQ routing problems. +Upgrade your BIOS to the latest version available from the vendor before +deciding it is a problem with +.Nm . +.\".Pp +.\"The +.\".Nm +.\"CPU idle power management drive conflicts with the local APIC (LAPIC) +.\"timer. +.\"Disable APIC mode with +.\".Va hint.apic.0.disabled +.\"or do not use the +.\".Li C2 +.\"and +.\".Li C3 +.\"states if APIC mode is enabled. diff --git a/share/man/man4/acpi_asus.4 b/share/man/man4/acpi_asus.4 index 62fbdef2c4..7d8a3e442b 100644 --- a/share/man/man4/acpi_asus.4 +++ b/share/man/man4/acpi_asus.4 @@ -26,7 +26,7 @@ .\" $FreeBSD: src/share/man/man4/acpi_asus.4,v 1.3 2008/08/21 00:40:55 rpaulo Exp $ .\" .Dd August 20, 2008 -.Dt ACPI_ASUS 4 i386 +.Dt ACPI_ASUS 4 .Os .Sh NAME .Nm acpi_asus diff --git a/share/man/man4/acpi_fujitsu.4 b/share/man/man4/acpi_fujitsu.4 new file mode 100644 index 0000000000..cff28251e1 --- /dev/null +++ b/share/man/man4/acpi_fujitsu.4 @@ -0,0 +1,177 @@ +.\" +.\" Copyright (c) 2005 Philip Paeps +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD: src/share/man/man4/acpi_fujitsu.4,v 1.1 2008/08/21 00:40:55 rpaulo Exp $ +.\" +.Dd November 11, 2009 +.Dt ACPI_FUJITSU 4 +.Os +.Sh NAME +.Nm acpi_fujitsu +.Nd Fujitsu Laptop Extras +.Sh SYNOPSIS +To compile this driver into the kernel, +place the following line in your +kernel configuration file: +.Bd -ragged -offset indent +.Cd "device acpi_fujitsu" +.Ed +.Pp +Alternatively, to load the driver as a +module at boot time, place the following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +acpi_fujitsu_load="YES" +.Ed +.Sh DESCRIPTION +The +.Nm +driver enables the ACPI-controlled buttons on Fujitsu notebooks. +The button events are sent to userspace via +.Xr devd 8 , +and a +.Xr sysctl 8 +interface is provided to simulate the hardware events. +.Pp +Using this driver, one can control the brightness of the display, the volume +of the speakers, and the internal (eraserhead) mouse pointer. +.Sh SYSCTL VARIABLES +These sysctls are currently implemented: +.Bl -tag -width indent +.It Va hw.acpi.fujitsu.lcd_brightness +Makes the LCD backlight brighter or dimmer. +.It Va hw.acpi.fujitsu.pointer_enable +Enables or disables the internal mouse pointer. +.It Va hw.acpi.fujitsu.volume +Controls the speaker volume. +.It Va hw.acpi.fujitsu.mute +Mutes the speakers. +.El +.Pp +Defaults for these sysctls can be set in +.Xr sysctl.conf 5 . +.Sh EXAMPLES +The following can be added to +.Xr devd.conf 5 +in order to pass button events to a +.Pa /usr/local/sbin/acpi_oem_exec.sh +script: +.Bd -literal -offset indent +notify 10 { + match "system" "ACPI"; + match "subsystem" "FUJITSU"; + action "/usr/local/sbin/acpi_oem_exec.sh $notify fujitsu"; +}; +.Ed +.Pp +A possible +.Pa /usr/local/sbin/acpi_oem_exec.sh +script might look like: +.Bd -literal -offset indent +#!/bin/sh +# +if [ "$1" = "" -o "$2" = "" ] +then + echo "usage: $0 notify oem_name" + exit 1 +fi +NOTIFY=`echo $1` +LOGGER="logger" +CALC="bc" +BC_PRECOMMANDS="scale=2" +ECHO="echo" +CUT="cut" +MAX_LCD_BRIGHTNESS=7 +MAX_VOLUME=16 +OEM=$2 +DISPLAY_PIPE=/tmp/acpi_${OEM}_display + +case ${NOTIFY} in + 0x00) + LEVEL=`sysctl -n hw.acpi.${OEM}.mute` + if [ "$LEVEL" = "1" ] + then + MESSAGE="volume muted" + else + MESSAGE="volume unmuted" + fi + ;; + 0x01) + LEVEL=`sysctl -n hw.acpi.${OEM}.pointer_enable` + if [ "$LEVEL" = "1" ] + then + MESSAGE="pointer enabled" + else + MESSAGE="pointer disabled" + fi + ;; + 0x02) + LEVEL=`sysctl -n hw.acpi.${OEM}.lcd_brightness` + PERCENT=`${ECHO} "${BC_PRECOMMANDS} ; \\ + ${LEVEL} / ${MAX_LCD_BRIGHTNESS} * 100" |\\ + ${CALC} | ${CUT} -d . -f 1` + MESSAGE="brightness level ${PERCENT}%" + ;; + 0x03) + LEVEL=`sysctl -n hw.acpi.${OEM}.volume` + PERCENT=`${ECHO} "${BC_PRECOMMANDS} ; \\ + ${LEVEL} / ${MAX_VOLUME} * 100" | \\ + ${CALC} | ${CUT} -d . -f 1` + MESSAGE="volume level ${PERCENT}%" + ;; + *) + ;; + esac + ${LOGGER} ${MESSAGE} + if [ -p ${DISPLAY_PIPE} ] + then + ${ECHO} ${MESSAGE} >> ${DISPLAY_PIPE} & + fi +exit 0 +.Ed +.Sh SEE ALSO +.Xr acpi 4 , +.Xr sysctl.conf 5 , +.Xr devd 8 , +.Xr sysctl 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Fx 5.4 . +It was then ported to +.Dx 2.5 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Sean Bullington Aq shegget@gmail.com , +.An Anish Mistry Aq mistry.7@osu.edu , +and +.An Marc Santcroos Aq marks@ripe.net . +.Pp +This manual page was written by +.An Philip Paeps Aq philip@FreeBSD.org . diff --git a/share/man/man4/acpi_hp.4 b/share/man/man4/acpi_hp.4 new file mode 100644 index 0000000000..0dd1a5d352 --- /dev/null +++ b/share/man/man4/acpi_hp.4 @@ -0,0 +1,292 @@ +.\" Copyright (c) 2009 Michael Gmelin +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD: src/share/man/man4/acpi_hp.4,v 1.4 2009/07/03 21:12:37 rpaulo Exp $ +.\" +.Dd November 11, 2009 +.Dt ACPI_HP 4 +.Os +.Sh NAME +.Nm acpi_hp +.Nd "ACPI extras driver for HP laptops" +.Sh SYNOPSIS +To compile this driver into the kernel, +place the following line in your +kernel configuration file: +.Bd -ragged -offset indent +.Cd "device acpi_hp" +.Ed +.Pp +Alternatively, to load the driver as a +module at boot time, place the following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +acpi_hp_load="YES" +.Ed +.Sh DESCRIPTION +The +.Nm +driver provides support for ACPI-controlled features found on HP laptops +that use a WMI enabled BIOS (e.g. HP Compaq 8510p and 6510p). +.Pp +The main purpose of this driver is to provide an interface, +accessible via +.Xr sysctl 8 , +.Xr devd 8 +and +.Xr devfs 5 , +through which applications can determine and change the status of +various laptop components and BIOS settings. +.Pp +.Ss Xr devd 8 Ss Events +Devd events received by +.Xr devd 8 +provide the following information: +.Pp +.Bl -tag -width "subsystem" -offset indent -compact +.It system +.Qq Li ACPI +.It subsystem +.Qq Li HP +.It type +The source of the event in the ACPI namespace. +The value depends on the model. +.It notify +Event code (see below). +.El +.Pp +Event codes: +.Pp +.Bl -tag -width "0xc0" -offset indent -compact +.It Li 0xc0 +WLAN on air status changed to 0 (not on air) +.It Li 0xc1 +WLAN on air status changed to 1 (on air) +.It Li 0xd0 +Bluetooth on air status changed to 0 (not on air) +.It Li 0xd1 +Bluetooth on air status changed to 1 (on air) +.It Li 0xe0 +WWAN on air status changed to 0 (not on air) +.It Li 0xe1 +WWAN on air status changed to 1 (on air) +.El +.Ss Xr devfs 8 Ss Device +You can read /dev/hpcmi to see your current BIOS settings. +The detail level can be adjusted by setting the sysctl +.Va cmi_detail +as described below. +.Sh SYSCTL VARIABLES +The following sysctls are currently implemented: +.Ss WLAN: +.Bl -tag -width indent +.It Va dev.acpi_hp.0.wlan_enabled +Toggle WLAN chip activity. +.It Va dev.acpi_hp.0.wlan_radio +(read-only) +WLAN radio status (controlled by hardware switch) +.It Va dev.acpi_hp.0.wlan_on_air +(read-only) +WLAN on air (chip enabled, hardware switch enabled + enabled in BIOS) +.It Va dev.acpi_hp.0.wlan_enabled_if_radio_on +If set to 1, the WLAN chip will be enabled if the radio is turned on +.It Va dev.acpi_hp.0.wlan_disable_if_radio_off +If set to 1, the WLAN chip will be disabled if the radio is turned off +.El +.Ss Bluetooth: +.Bl -tag -width indent +.It Va dev.acpi_hp.0.bt_enabled +Toggle Bluetooth chip activity. +.It Va dev.acpi_hp.0.bt_radio +(read-only) +Bluetooth radio status (controlled by hardware switch) +.It Va dev.acpi_hp.0.bt_on_air +(read-only) +Bluetooth on air (chip enabled, hardware switch enabled + enabled in BIOS) +.It Va dev.acpi_hp.0.bt_enabled_if_radio_on +If set to 1, the Bluetooth chip will be enabled if the radio is turned on +.It Va dev.acpi_hp.0.bt_disable_if_radio_off +If set to 1, the Bluetooth chip will be disabled if the radio is turned off +.El +.Ss WWAN: +.Bl -tag -width indent +.It Va dev.acpi_hp.0.wwan_enabled +Toggle WWAN chip activity. +.It Va dev.acpi_hp.0.wwan_radio +(read-only) +WWAN radio status (controlled by hardware switch) +.It Va dev.acpi_hp.0.wwan_on_air +(read-only) +WWAN on air (chip enabled, hardware switch enabled + enabled in BIOS) +.It Va dev.acpi_hp.0.wwan_enabled_if_radio_on +If set to 1, the WWAN chip will be enabled if the radio is turned on +.It Va dev.acpi_hp.0.wwan_disable_if_radio_off +If set to 1, the WWAN chip will be disabled if the radio is turned off +.El +.Ss Misc: +.Bl -tag -width indent +.It Va dev.acpi_hp.0.als_enabled +Toggle ambient light sensor (ALS) +.It Va dev.acpi_hp.0.display +(read-only) +Display status (bitmask) +.It Va dev.acpi_hp.0.hdd_temperature +(read-only) +HDD temperature +.It Va dev.acpi_hp.0.is_docked +(read-only) +Docking station status (1 if docked) +.It Va dev.acpi_hp.0.cmi_detail +Bitmask to control detail level in /dev/hpcmi output (values can be ORed). +.Bl -tag -width "0x01" -offset indent -compact +.It Li 0x01 +Show path component of BIOS setting +.It Li 0x02 +Show a list of valid options for the BIOS setting +.It Li 0x04 +Show additional flags of BIOS setting (ReadOnly etc.) +.It Li 0x08 +Query highest BIOS entry instance. +This is broken on many HP models and therefore disabled by default. +.El +.It Va dev.acpi_hp.0.verbose +(read-only) +Set verbosity level +.El +.Pp +Defaults for these sysctls can be set in +.Xr sysctl.conf 5 . +.Sh HARDWARE +The +.Nm +driver has been reported to support the following hardware: +.Pp +.Bl -bullet -compact +.It +HP Compaq 8510p +.It +HP Compaq nx7300 +.El +.Pp +It should work on most HP laptops that feature a WMI enabled BIOS. +.Sh FILES +.Bl -tag -width ".Pa /dev/hpcmi" +.It Pa /dev/hpcmi +Interface to read BIOS settings +.El +.Sh EXAMPLES +The following can be added to +.Xr devd.conf 5 +in order disable the LAN interface when WLAN on air and reenable if it's +not: +.Bd -literal -offset indent +notify 0 { + match "system" "ACPI"; + match "subsystem" "HP"; + match "notify" "0xc0"; + action "ifconfig em0 up"; +}; + +notify 0 { + match "system" "ACPI"; + match "subsystem" "HP"; + match "notify" "0xc1"; + action "ifconfig em0 down"; +}; +.Ed +.Pp +Enable the ambient light sensor: +.Bd -literal -offset indent +sysctl dev.acpi_hp.0.als_enabled=1 +.Ed +.Pp +Enable Bluetooth: +.Bd -literal -offset indent +sysctl dev.acpi_hp.0.bt_enabled=1 +.Ed +.Pp +Get BIOS settings: +.Bd -literal -offset indent +cat /dev/hpcmi + +Serial Port Disable +Infrared Port Enable +Parallel Port Disable +Flash Media Reader Disable +USB Ports including Express Card slot Enable +1394 Port Enable +Cardbus Slot Disable +Express Card Slot Disable +(...) +.Ed +.Pp +Set maximum detail level for /dev/hpcmi output: +.Bd -literal -offset indent +sysctl dev.acpi_hp.0.cmi_detail=7 +.Ed +.Pp +.Sh SEE ALSO +.Xr acpi 4 , +.\".Xr acpi_wmi 4 , +.Xr sysctl.conf 5 , +.Xr devd 8 , +.Xr devfs 8 , +.Xr sysctl 8 +.Sh HISTORY +The +.Nm +device driver was ported from +.Fx +to +.Dx 2.5 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver was written by +.An Michael Gmelin Aq freebsd@grem.de +.Pp +It has been inspired by hp-wmi driver, which implements a subset of these +features (hotkeys) on Linux. +.Pp +.Bl -tag -width indent +.It HP CMI whitepaper: +http://h20331.www2.hp.com/Hpsub/downloads/cmi_whitepaper.pdf +.It wmi-hp for Linux: +http://www.kernel.org +.It WMI and ACPI: +http://www.microsoft.com/whdc/system/pnppwr/wmi/wmi-acpi.mspx +.El +.Pp +This manual page was written by +.An Michael Gmelin Aq freebsd@grem.de +.Sh BUGS +This driver is experimental and has only been tested on CURRENT i386 on an +HP Compaq 8510p which featured all supported wireless devices (WWAN/BT/WLAN). +Expect undefined results when operating on different hardware. +.Pp +Loading the driver is slow. Reading from /dev/hpcmi is even slower. +.Pp +Additional features like HP specific sensor readings or writing BIOS +settings are not supported. diff --git a/share/man/man4/acpi_panasonic.4 b/share/man/man4/acpi_panasonic.4 new file mode 100644 index 0000000000..aac6db0df7 --- /dev/null +++ b/share/man/man4/acpi_panasonic.4 @@ -0,0 +1,180 @@ +.\" +.\" Copyright (c) 2004 OGAWA Takaya +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD: src/share/man/man4/acpi_panasonic.4,v 1.2 2009/09/17 13:12:24 brueffer Exp $ +.\" +.Dd November 11, 2009 +.Dt ACPI_PANASONIC 4 +.Os +.Sh NAME +.Nm acpi_panasonic +.Nd "ACPI hotkey driver for Panasonic laptops" +.Sh SYNOPSIS +To compile this driver into the kernel, +place the following line in your +kernel configuration file: +.Bd -ragged -offset indent +.Cd "device acpi_panasonic" +.Ed +.Pp +Alternatively, to load the driver as a +module at boot time, place the following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +acpi_panasonic_load="YES" +.Ed +.Sh DESCRIPTION +The +.Nm +driver enables such hotkey facilities of various Panasonic laptops as +changing LCD brightness, controlling mixer volumes, entering sleep or +suspended state and so on. +On the following models it is reported to work: Let's note (or +Toughbook, outside Japan) CF-R1N, CF-R2A and CF-R3. +It may also work on other models as well. +.Pp +The driver consists of three functionalities. +The first is to detect hotkey events and take corresponding actions, +which include changing LCD luminance and speaker mute state. +The second role is to notify occurrences of the event by way of +.Xr devctl 4 +and eventually to +.Xr devd 8 . +The third and last is to provide a way to adjust LCD brightness and +sound mute state via +.Xr sysctl 8 . +.Ss Hotkeys +There are 9 hotkeys available on the supported hardwares: +.Pp +.Bl -tag -compact -offset indent +.It Sy Fn+F1 +Make LCD backlight darker. +.It Sy Fn+F2 +Make LCD backlight brighter. +.It Sy Fn+F3 +Switch video output between LCD and CRT. +Not supported by the +.Nm +driver. +.It Sy Fn+F4 +Toggle muting the speaker. +.It Sy Fn+F5 +Turn the mixer volume down. +.It Sy Fn+F6 +Turn the mixer volume up. +.It Sy Fn+F7 +Enter suspend-to-RAM state. +.It Sy Fn+F9 +Show battery status. +.It Sy Fn+F10 +Enter suspend-to-disk state. +.El +.Pp +Actions are automatically taken within the driver for +.Sy Fn+F1 , Fn+F2 +and +.Sy Fn+F4 . +For the other events such as +mixer control and showing battery status, +.Xr devd 8 +should take the role as described below. +.Ss Xr devd 8 Ss Events +When notified to +.Xr devd 8 , +the hotkey event provides the following information: +.Pp +.Bl -tag -compact -offset indent +.It system +.Qq Li ACPI +.It subsystem +.Qq Li Panasonic +.It type +The source of the event in ACPI namespace. +The value depends on the model but typically +.Qq Li \e_SB_.HKEY . +.It notify +Event code (see below). +.El +.Pp +Event codes to be generated are assigned as follows: +.Bl -tag -offset indent +.It 0x81-0x86, 0x89 +.Sy Fn+F +pressed. +0x81 corresponds to +.Sy Fn+F1 , +0x82 corresponds to +.Sy Fn+F2 , +and so on. +.It 0x01-0x07, 0x09, 0x1a +.Sy Fn+F +released. +0x01 corresponds to +.Sy Fn+F1 , +0x02 corresponds to +.Sy Fn+F2 , +and so on. +.El +.Sh SYSCTL VARIABLES +The following MIBs are available: +.Bl -tag -width indent +.It Va hw.acpi.panasonic.lcd_brightness_max +The maximum level of brightness. +The value is read only and +automatically set according to hardware model. +.It Va hw.acpi.panasonic.lcd_brightness_min +The minimum level of brightness. +The value is read only and +automatically set according to hardware model. +.It Va hw.acpi.panasonic.lcd_brightness +Current brightness level of the LCD (read-write). +The value ranges from +.Va hw.acpi.panasonic.lcd_brightness_min +to +.Va hw.acpi.panasonic.lcd_brightness_max . +.It Va hw.acpi.panasonic.sound_mute +A read-write boolean flag to control whether to mute the speaker. +The value 1 means to mute and 0 not. +.El +.Sh SEE ALSO +.Xr acpi 4 , +.Xr devd.conf 5 , +.Xr devd 8 , +.Xr sysctl 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Fx 5.3 . +It was then ported to +.Dx 2.5 . +.Sh AUTHORS +.An -nosplit +The +.Nm +driver and this manual page were written by +.An OGAWA Takaya Aq t\-ogawa@triaez.kaisei.org +and +.An TAKAHASHI Yoshihiro Aq nyan@FreeBSD.org . diff --git a/share/man/man4/acpi_sony.4 b/share/man/man4/acpi_sony.4 new file mode 100644 index 0000000000..1d9ca4240f --- /dev/null +++ b/share/man/man4/acpi_sony.4 @@ -0,0 +1,75 @@ +.\" Copyright (c) 2005 Christian Brueffer +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD: src/share/man/man4/acpi_sony.4,v 1.1 2008/08/21 00:40:55 rpaulo Exp $ +.\" +.Dd November 11, 2009 +.Dt ACPI_SONY 4 +.Os +.Sh NAME +.Nm acpi_sony +.Nd "ACPI notebook controller driver for Sony laptops" +.Sh SYNOPSIS +To compile this driver into the kernel, +place the following line in your +kernel configuration file: +.Bd -ragged -offset indent +.Cd "device acpi_sony" +.Ed +.Pp +Alternatively, to load the driver as a +module at boot time, place the following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +acpi_sony_load="YES" +.Ed +.Sh DESCRIPTION +The +.Nm +driver provides support for the notebook controller in Sony laptops. +.Sh SYSCTLS +The following sysctl is currently implemented: +.Bl -tag -width indent +.It Va dev.acpi_sony.0.brightness +Current brightness level of the display. +.It Va dev.acpi_sony.0.cdp +Turns the CD power on or off. +.It Va dev.acpi_sony.0.azp +Turns the audio power on or off. +.El +.Sh SEE ALSO +.Xr acpi 4 , +.Xr sysctl 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Fx 6.0 . +It was then ported to +.Dx 2.5 . +.Sh AUTHORS +The +.Nm +driver was written by +.An Takanori Watanabe Aq takawata@FreeBSD.org . diff --git a/share/man/man4/acpi_thermal.4 b/share/man/man4/acpi_thermal.4 index 9613cc14fd..81c27d8e3a 100644 --- a/share/man/man4/acpi_thermal.4 +++ b/share/man/man4/acpi_thermal.4 @@ -22,10 +22,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/acpi_thermal.4,v 1.6 2004/02/03 04:18:55 njl Exp $ -.\" $DragonFly: src/share/man/man4/acpi_thermal.4,v 1.3 2008/10/03 10:33:49 swildner Exp $ +.\" $FreeBSD: src/share/man/man4/acpi_thermal.4,v 1.11.8.1 2009/04/15 03:14:26 kensmith Exp $ .\" -.Dd October 3, 2008 +.Dd November 11, 2009 .Dt ACPI_THERMAL 4 .Os .Sh NAME @@ -54,13 +53,29 @@ The .Nm driver also activates the active cooling system according to each thermal zone's setpoints. -.Sh SYSCTLS +.Sh SYSCTL VARIABLES .Bl -tag -width indent +.It Va hw.acpi.thermal.min_runtime +Number of seconds to continue active cooling once started. +A new active cooling level will not be selected until this interval expires. +.It Va hw.acpi.thermal.polling_rate +Number of seconds between polling the current temperature. +.It Va hw.acpi.thermal.user_override +If set to 1, allow user override of various setpoints (below). +The original values for these settings are obtained from the BIOS and +system overheating and possible damage could occur if changed. +Default is 0 (no override). .It Va hw.acpi.thermal.tz%d.active Current active cooling system state. If this is non-negative, the appropriate _AC%d object is running. Set this value to the desired active cooling level to force the corresponding fan object to the appropriate level. +.It Va hw.acpi.thermal.tz%d.passive_cooling +If set to 1, passive cooling is enabled. +It does cooling without fans using +.Xr cpufreq 4 +as the mechanism for controlling CPU speed. +Default is enabled for tz0 where it is available. .It Va hw.acpi.thermal.tz%d.thermal_flags Current thermal zone status. These are bit-masked values. @@ -68,25 +83,26 @@ These are bit-masked values. Current temperature for this zone. .It Va hw.acpi.thermal.tz%d._PSV Temperature to start passive cooling by throttling down CPU, etc. +This value can be overridden by the user. .It Va hw.acpi.thermal.tz%d._HOT Temperature to start critical suspend to disk (S4). +This value can be overridden by the user. .It Va hw.acpi.thermal.tz%d._CRT Temperature to start critical shutdown (S5). +This value can be overridden by the user. .It Va hw.acpi.thermal.tz%d._ACx Temperatures at which to switch to the corresponding active cooling level. -For instance, values of -.Qq Li "3200 3100" -mean to switch on _AC0 at 320.0K -and _AC1 at 310.0K. The lower the _ACx value, the higher the cooling power. .El .Pp -All temperatures are represented in tenths of a Kelvin. -For example, 300.0K is represented by the integer 3000. -To convert to units of Centigrade, -the formula is -.Li "(x - 2731.5) / 10" . +All temperatures are printed in Celsius. +Values can be set in Celsius (by providing a trailing +.Qq C ) +or Kelvin (by leaving off any trailing letter). +When setting a value by +.Xr sysctl 8 , +do not specify a trailing decimal (i.e., 90C instead of 90.0C). .Sh NOTIFIES Notifies are passed to userland via .Xr devd 8 . @@ -123,6 +139,7 @@ stays above _CRT or _HOT for one more poll cycle. .El .Sh SEE ALSO .Xr acpi 4 , +.\".Xr cpufreq 4 , .Xr acpidump 8 .Sh AUTHORS .An -nosplit diff --git a/share/man/man4/acpi_thinkpad.4 b/share/man/man4/acpi_thinkpad.4 index f183f646ff..086fae6a12 100644 --- a/share/man/man4/acpi_thinkpad.4 +++ b/share/man/man4/acpi_thinkpad.4 @@ -23,10 +23,9 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD$ -.\" $DragonFly: src/share/man/man4/acpi_thinkpad.4,v 1.6 2008/10/03 10:32:10 swildner Exp $ +.\" $FreeBSD: src/share/man/man4/man4.i386/acpi_ibm.4,v 1.15.8.1 2009/04/15 03:14:26 kensmith Exp $ .\" -.Dd October 2, 2008 +.Dd November 11, 2009 .Dt ACPI_THINKPAD 4 .Os .Sh NAME @@ -146,17 +145,17 @@ Mute .It Li 0x18 Access IBM Button .El -.\" .Ss Xr led 4 Ss Interface -.\" The -.\" .Nm -.\" driver provides a -.\" .Xr led 4 -.\" interface for the ThinkLight. -.\" The ThinkLight can be made to blink by writing -.\" .Tn ASCII -.\" strings to the -.\" .Pa /dev/led/thinklight -.\" device. +.\".Ss Xr led 4 Ss Interface +.\"The +.\".Nm +.\"driver provides a +.\".Xr led 4 +.\"interface for the ThinkLight. +.\"The ThinkLight can be made to blink by writing +.\".Tn ASCII +.\"strings to the +.\".Pa /dev/led/thinklight +.\"device. .Sh SYSCTL VARIABLES The following sysctls are currently implemented: .Bl -tag -width indent @@ -178,9 +177,7 @@ Without the driver being loaded, only the Fn+F4 button generates an ACPI event. .It Va dev.acpi_thinkpad.0.eventmask Sets the ACPI events which are reported to -.Xr devd 8 -(not yet available in -.Dx ) . +.Xr devd 8 . Fn+F3, Fn+F4 and Fn+F12 always generate ACPI events, regardless which value .Va eventmask has. @@ -307,8 +304,14 @@ off .It Li 6, 7 ~4300 RPM .El -.It Va hw.sensors.acpi_thinkpad0.tempX -Show the readings of up to eight different temperature sensors. +.It Va dev.acpi_ibm.0.fan_speed +(read-only) +Fan speed in rounds per minute. +A few older ThinkPads report the fan speed in levels ranging from 0 (off) +to 7 (max). +.It Va dev.acpi_ibm.0.thermal +(read-only) +Shows the readings of up to eight different temperature sensors. Most ThinkPads include six or more temperature sensors but only expose the CPU temperature through .Xr acpi_thermal 4 . @@ -333,6 +336,8 @@ Built-in battery .It UltraBay battery .El +.It Va hw.sensors.acpi_thinkpad0.tempX +Show the readings of up to eight different temperature sensors. .It Va hw.sensors.acpi_thinkpad0.fan0 Fan speed in rounds per minute. .\" A few older ThinkPads report the fan speed in levels ranging from 0 (off) @@ -343,13 +348,13 @@ Defaults for these sysctls can be set in .Xr sysctl.conf 5 . Sensors can be monitored by .Xr sensorsd 8 . -.\" .Sh FILES -.\" .Bl -tag -width ".Pa /dev/led/thinklight" -.\" .It Pa /dev/led/thinklight -.\" ThinkLight -.\" .Xr led 4 -.\" device node -.\" .El +.\".Sh FILES +.\".Bl -tag -width ".Pa /dev/led/thinklight" +.\".It Pa /dev/led/thinklight +.\"ThinkLight +.\".Xr led 4 +.\"device node +.\".El .Sh EXAMPLES The following can be added to .Xr devd.conf 5 diff --git a/share/man/man4/acpi_toshiba.4 b/share/man/man4/acpi_toshiba.4 index 58ff610c48..b5109a5a49 100644 --- a/share/man/man4/acpi_toshiba.4 +++ b/share/man/man4/acpi_toshiba.4 @@ -23,17 +23,28 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/man/man4/man4.i386/acpi_toshiba.4,v 1.5 2004/04/14 00:23:58 njl Exp $ -.\" $DragonFly: src/share/man/man4/acpi_toshiba.4,v 1.1 2008/08/28 09:47:04 hasso Exp $ +.\" $FreeBSD: src/share/man/man4/man4.i386/acpi_toshiba.4,v 1.7.8.1 2009/04/15 03:14:26 kensmith Exp $ .\" -.Dd February 19, 2004 -.Dt ACPI_TOSHIBA 4 i386 +.Dd November 11, 2009 +.Dt ACPI_TOSHIBA 4 .Os .Sh NAME .Nm acpi_toshiba .Nd Toshiba HCI interface .Sh SYNOPSIS +To compile this driver into the kernel, +place the following line in your +kernel configuration file: +.Bd -ragged -offset indent .Cd "device acpi_toshiba" +.Ed +.Pp +Alternatively, to load the driver as a +module at boot time, place the following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +acpi_toshiba_load="YES" +.Ed .Sh DESCRIPTION HCI is Toshiba's .Em "Hardware Control Interface" @@ -43,7 +54,7 @@ The driver allows the user to manipulate HCI-controlled hardware using a number of .Xr sysctl 8 variables. -.Sh SYSCTLS +.Sh SYSCTL VARIABLES The following sysctls are currently implemented: .Bl -tag -width indent .It Va hw.acpi.toshiba.force_fan @@ -86,7 +97,7 @@ Higher sysctl values mean lower CPU speeds. Defaults for these variables can be set in .Xr sysctl.conf 5 , which is parsed at boot-time. -.Sh TUNABLES +.Sh LOADER TUNABLES The .Va hw.acpi.toshiba.enable_fn_keys tunable enables or disables the function keys on the keyboard.