xref: /dflybsd-src/share/man/man4/acpi_hp.4 (revision d8cda59e8c86784d37df653fa3d1fdb2d6270d98)
12f5aa587SSascha Wildner.\" Copyright (c) 2009 Michael Gmelin
22f5aa587SSascha Wildner.\" All rights reserved.
32f5aa587SSascha Wildner.\"
42f5aa587SSascha Wildner.\" Redistribution and use in source and binary forms, with or without
52f5aa587SSascha Wildner.\" modification, are permitted provided that the following conditions
62f5aa587SSascha Wildner.\" are met:
72f5aa587SSascha Wildner.\" 1. Redistributions of source code must retain the above copyright
82f5aa587SSascha Wildner.\"    notice, this list of conditions and the following disclaimer.
92f5aa587SSascha Wildner.\" 2. Redistributions in binary form must reproduce the above copyright
102f5aa587SSascha Wildner.\"    notice, this list of conditions and the following disclaimer in the
112f5aa587SSascha Wildner.\"    documentation and/or other materials provided with the distribution.
122f5aa587SSascha Wildner.\"
132f5aa587SSascha Wildner.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
142f5aa587SSascha Wildner.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
152f5aa587SSascha Wildner.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
162f5aa587SSascha Wildner.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
172f5aa587SSascha Wildner.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
182f5aa587SSascha Wildner.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
192f5aa587SSascha Wildner.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
202f5aa587SSascha Wildner.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
212f5aa587SSascha Wildner.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
222f5aa587SSascha Wildner.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
232f5aa587SSascha Wildner.\" SUCH DAMAGE.
242f5aa587SSascha Wildner.\"
25554257bcSSascha Wildner.\" $FreeBSD: src/share/man/man4/acpi_hp.4,v 1.7 2010/10/08 12:40:16 uqs Exp $
262f5aa587SSascha Wildner.\"
27*d8cda59eSSascha Wildner.Dd April 10, 2012
282f5aa587SSascha Wildner.Dt ACPI_HP 4
292f5aa587SSascha Wildner.Os
302f5aa587SSascha Wildner.Sh NAME
312f5aa587SSascha Wildner.Nm acpi_hp
322f5aa587SSascha Wildner.Nd "ACPI extras driver for HP laptops"
332f5aa587SSascha Wildner.Sh SYNOPSIS
342f5aa587SSascha WildnerTo compile this driver into the kernel,
352f5aa587SSascha Wildnerplace the following line in your
362f5aa587SSascha Wildnerkernel configuration file:
372f5aa587SSascha Wildner.Bd -ragged -offset indent
382f5aa587SSascha Wildner.Cd "device acpi_hp"
392f5aa587SSascha Wildner.Ed
402f5aa587SSascha Wildner.Pp
412f5aa587SSascha WildnerAlternatively, to load the driver as a
422f5aa587SSascha Wildnermodule at boot time, place the following line in
432f5aa587SSascha Wildner.Xr loader.conf 5 :
442f5aa587SSascha Wildner.Bd -literal -offset indent
452f5aa587SSascha Wildneracpi_hp_load="YES"
462f5aa587SSascha Wildner.Ed
472f5aa587SSascha Wildner.Sh DESCRIPTION
482f5aa587SSascha WildnerThe
492f5aa587SSascha Wildner.Nm
502f5aa587SSascha Wildnerdriver provides support for ACPI-controlled features found on HP laptops
512f5aa587SSascha Wildnerthat use a WMI enabled BIOS (e.g. HP Compaq 8510p and 6510p).
522f5aa587SSascha Wildner.Pp
532f5aa587SSascha WildnerThe main purpose of this driver is to provide an interface,
542f5aa587SSascha Wildneraccessible via
552f5aa587SSascha Wildner.Xr sysctl 8 ,
562f5aa587SSascha Wildner.Xr devd 8
572f5aa587SSascha Wildnerand
582f5aa587SSascha Wildner.Xr devfs 5 ,
592f5aa587SSascha Wildnerthrough which applications can determine and change the status of
602f5aa587SSascha Wildnervarious laptop components and BIOS settings.
612f5aa587SSascha Wildner.Ss Xr devd 8 Ss Events
622f5aa587SSascha WildnerDevd events received by
632f5aa587SSascha Wildner.Xr devd 8
642f5aa587SSascha Wildnerprovide the following information:
652f5aa587SSascha Wildner.Pp
662f5aa587SSascha Wildner.Bl -tag -width "subsystem" -offset indent -compact
672f5aa587SSascha Wildner.It system
682f5aa587SSascha Wildner.Qq Li ACPI
692f5aa587SSascha Wildner.It subsystem
702f5aa587SSascha Wildner.Qq Li HP
712f5aa587SSascha Wildner.It type
722f5aa587SSascha WildnerThe source of the event in the ACPI namespace.
732f5aa587SSascha WildnerThe value depends on the model.
742f5aa587SSascha Wildner.It notify
752f5aa587SSascha WildnerEvent code (see below).
762f5aa587SSascha Wildner.El
772f5aa587SSascha Wildner.Pp
782f5aa587SSascha WildnerEvent codes:
792f5aa587SSascha Wildner.Pp
802f5aa587SSascha Wildner.Bl -tag -width "0xc0" -offset indent -compact
812f5aa587SSascha Wildner.It Li 0xc0
822f5aa587SSascha WildnerWLAN on air status changed to 0 (not on air)
832f5aa587SSascha Wildner.It Li 0xc1
842f5aa587SSascha WildnerWLAN on air status changed to 1 (on air)
852f5aa587SSascha Wildner.It Li 0xd0
862f5aa587SSascha WildnerBluetooth on air status changed to 0 (not on air)
872f5aa587SSascha Wildner.It Li 0xd1
882f5aa587SSascha WildnerBluetooth on air status changed to 1 (on air)
892f5aa587SSascha Wildner.It Li 0xe0
902f5aa587SSascha WildnerWWAN on air status changed to 0 (not on air)
912f5aa587SSascha Wildner.It Li 0xe1
922f5aa587SSascha WildnerWWAN on air status changed to 1 (on air)
932f5aa587SSascha Wildner.El
94507a4eebSSascha Wildner.Ss Xr devfs 5 Ss Device
952f5aa587SSascha WildnerYou can read /dev/hpcmi to see your current BIOS settings.
962f5aa587SSascha WildnerThe detail level can be adjusted by setting the sysctl
972f5aa587SSascha Wildner.Va cmi_detail
982f5aa587SSascha Wildneras described below.
992f5aa587SSascha Wildner.Sh SYSCTL VARIABLES
1002f5aa587SSascha WildnerThe following sysctls are currently implemented:
1012f5aa587SSascha Wildner.Ss WLAN:
1022f5aa587SSascha Wildner.Bl -tag -width indent
10308e18065SSascha Wildner.It Va hw.acpi.hp.wlan_enabled
1042f5aa587SSascha WildnerToggle WLAN chip activity.
10508e18065SSascha Wildner.It Va hw.acpi.hp.wlan_radio
1062f5aa587SSascha Wildner(read-only)
1072f5aa587SSascha WildnerWLAN radio status (controlled by hardware switch)
10808e18065SSascha Wildner.It Va hw.acpi.hp.wlan_on_air
1092f5aa587SSascha Wildner(read-only)
1102f5aa587SSascha WildnerWLAN on air (chip enabled, hardware switch enabled + enabled in BIOS)
11108e18065SSascha Wildner.It Va hw.acpi.hp.wlan_enabled_if_radio_on
1122f5aa587SSascha WildnerIf set to 1, the WLAN chip will be enabled if the radio is turned on
11308e18065SSascha Wildner.It Va hw.acpi.hp.wlan_disable_if_radio_off
1142f5aa587SSascha WildnerIf set to 1, the WLAN chip will be disabled if the radio is turned off
1152f5aa587SSascha Wildner.El
1162f5aa587SSascha Wildner.Ss Bluetooth:
1172f5aa587SSascha Wildner.Bl -tag -width indent
11808e18065SSascha Wildner.It Va hw.acpi.hp.bt_enabled
1192f5aa587SSascha WildnerToggle Bluetooth chip activity.
12008e18065SSascha Wildner.It Va hw.acpi.hp.bt_radio
1212f5aa587SSascha Wildner(read-only)
1222f5aa587SSascha WildnerBluetooth radio status (controlled by hardware switch)
12308e18065SSascha Wildner.It Va hw.acpi.hp.bt_on_air
1242f5aa587SSascha Wildner(read-only)
1252f5aa587SSascha WildnerBluetooth on air (chip enabled, hardware switch enabled + enabled in BIOS)
12608e18065SSascha Wildner.It Va hw.acpi.hp.bt_enabled_if_radio_on
1272f5aa587SSascha WildnerIf set to 1, the Bluetooth chip will be enabled if the radio is turned on
12808e18065SSascha Wildner.It Va hw.acpi.hp.bt_disable_if_radio_off
1292f5aa587SSascha WildnerIf set to 1, the Bluetooth chip will be disabled if the radio is turned off
1302f5aa587SSascha Wildner.El
1312f5aa587SSascha Wildner.Ss WWAN:
1322f5aa587SSascha Wildner.Bl -tag -width indent
13308e18065SSascha Wildner.It Va hw.acpi.hp.wwan_enabled
1342f5aa587SSascha WildnerToggle WWAN chip activity.
13508e18065SSascha Wildner.It Va hw.acpi.hp.wwan_radio
1362f5aa587SSascha Wildner(read-only)
1372f5aa587SSascha WildnerWWAN radio status (controlled by hardware switch)
13808e18065SSascha Wildner.It Va hw.acpi.hp.wwan_on_air
1392f5aa587SSascha Wildner(read-only)
1402f5aa587SSascha WildnerWWAN on air (chip enabled, hardware switch enabled + enabled in BIOS)
14108e18065SSascha Wildner.It Va hw.acpi.hp.wwan_enabled_if_radio_on
1422f5aa587SSascha WildnerIf set to 1, the WWAN chip will be enabled if the radio is turned on
14308e18065SSascha Wildner.It Va hw.acpi.hp.wwan_disable_if_radio_off
1442f5aa587SSascha WildnerIf set to 1, the WWAN chip will be disabled if the radio is turned off
1452f5aa587SSascha Wildner.El
1462f5aa587SSascha Wildner.Ss Misc:
1472f5aa587SSascha Wildner.Bl -tag -width indent
14808e18065SSascha Wildner.It Va hw.acpi.hp.als_enabled
1492f5aa587SSascha WildnerToggle ambient light sensor (ALS)
15008e18065SSascha Wildner.It Va hw.acpi.hp.display
1512f5aa587SSascha Wildner(read-only)
1522f5aa587SSascha WildnerDisplay status (bitmask)
15308e18065SSascha Wildner.It Va hw.acpi.hp.hdd_temperature
1542f5aa587SSascha Wildner(read-only)
1552f5aa587SSascha WildnerHDD temperature
15608e18065SSascha Wildner.It Va hw.acpi.hp.is_docked
1572f5aa587SSascha Wildner(read-only)
1582f5aa587SSascha WildnerDocking station status (1 if docked)
15908e18065SSascha Wildner.It Va hw.acpi.hp.cmi_detail
1602f5aa587SSascha WildnerBitmask to control detail level in /dev/hpcmi output (values can be ORed).
1612f5aa587SSascha Wildner.Bl -tag -width "0x01" -offset indent -compact
1622f5aa587SSascha Wildner.It Li 0x01
1632f5aa587SSascha WildnerShow path component of BIOS setting
1642f5aa587SSascha Wildner.It Li 0x02
1652f5aa587SSascha WildnerShow a list of valid options for the BIOS setting
1662f5aa587SSascha Wildner.It Li 0x04
1672f5aa587SSascha WildnerShow additional flags of BIOS setting (ReadOnly etc.)
1682f5aa587SSascha Wildner.It Li 0x08
1692f5aa587SSascha WildnerQuery highest BIOS entry instance.
1702f5aa587SSascha WildnerThis is broken on many HP models and therefore disabled by default.
1712f5aa587SSascha Wildner.El
17208e18065SSascha Wildner.It Va hw.acpi.hp.verbose
1732f5aa587SSascha Wildner(read-only)
1742f5aa587SSascha WildnerSet verbosity level
1752f5aa587SSascha Wildner.El
1762f5aa587SSascha Wildner.Pp
1772f5aa587SSascha WildnerDefaults for these sysctls can be set in
1782f5aa587SSascha Wildner.Xr sysctl.conf 5 .
1792f5aa587SSascha Wildner.Sh HARDWARE
1802f5aa587SSascha WildnerThe
1812f5aa587SSascha Wildner.Nm
1822f5aa587SSascha Wildnerdriver has been reported to support the following hardware:
1832f5aa587SSascha Wildner.Pp
1842f5aa587SSascha Wildner.Bl -bullet -compact
1852f5aa587SSascha Wildner.It
1862f5aa587SSascha WildnerHP Compaq 8510p
1872f5aa587SSascha Wildner.It
1882f5aa587SSascha WildnerHP Compaq nx7300
1892f5aa587SSascha Wildner.El
1902f5aa587SSascha Wildner.Pp
1912f5aa587SSascha WildnerIt should work on most HP laptops that feature a WMI enabled BIOS.
1922f5aa587SSascha Wildner.Sh FILES
1932f5aa587SSascha Wildner.Bl -tag -width ".Pa /dev/hpcmi"
1942f5aa587SSascha Wildner.It Pa /dev/hpcmi
1952f5aa587SSascha WildnerInterface to read BIOS settings
1962f5aa587SSascha Wildner.El
1972f5aa587SSascha Wildner.Sh EXAMPLES
1982f5aa587SSascha WildnerThe following can be added to
1992f5aa587SSascha Wildner.Xr devd.conf 5
2002f5aa587SSascha Wildnerin order disable the LAN interface when WLAN on air and reenable if it's
2012f5aa587SSascha Wildnernot:
2022f5aa587SSascha Wildner.Bd -literal -offset indent
2032f5aa587SSascha Wildnernotify 0 {
2042f5aa587SSascha Wildner	match "system"          "ACPI";
2052f5aa587SSascha Wildner	match "subsystem"       "HP";
2062f5aa587SSascha Wildner	match "notify"          "0xc0";
2072f5aa587SSascha Wildner	action                  "ifconfig em0 up";
2082f5aa587SSascha Wildner};
2092f5aa587SSascha Wildner
2102f5aa587SSascha Wildnernotify 0 {
2112f5aa587SSascha Wildner	match "system"          "ACPI";
2122f5aa587SSascha Wildner	match "subsystem"       "HP";
2132f5aa587SSascha Wildner	match "notify"          "0xc1";
2142f5aa587SSascha Wildner	action                  "ifconfig em0 down";
2152f5aa587SSascha Wildner};
2162f5aa587SSascha Wildner.Ed
2172f5aa587SSascha Wildner.Pp
2182f5aa587SSascha WildnerEnable the ambient light sensor:
2192f5aa587SSascha Wildner.Bd -literal -offset indent
22008e18065SSascha Wildnersysctl hw.acpi.hp.als_enabled=1
2212f5aa587SSascha Wildner.Ed
2222f5aa587SSascha Wildner.Pp
2232f5aa587SSascha WildnerEnable Bluetooth:
2242f5aa587SSascha Wildner.Bd -literal -offset indent
22508e18065SSascha Wildnersysctl hw.acpi.hp.bt_enabled=1
2262f5aa587SSascha Wildner.Ed
2272f5aa587SSascha Wildner.Pp
2282f5aa587SSascha WildnerGet BIOS settings:
2292f5aa587SSascha Wildner.Bd -literal -offset indent
2302f5aa587SSascha Wildnercat /dev/hpcmi
2312f5aa587SSascha Wildner
2322f5aa587SSascha WildnerSerial Port                                Disable
2332f5aa587SSascha WildnerInfrared Port                              Enable
2342f5aa587SSascha WildnerParallel Port                              Disable
2352f5aa587SSascha WildnerFlash Media Reader                         Disable
2362f5aa587SSascha WildnerUSB Ports including Express Card slot      Enable
2372f5aa587SSascha Wildner1394 Port                                  Enable
2382f5aa587SSascha WildnerCardbus Slot                               Disable
2392f5aa587SSascha WildnerExpress Card Slot                          Disable
2402f5aa587SSascha Wildner(...)
2412f5aa587SSascha Wildner.Ed
2422f5aa587SSascha Wildner.Pp
2432f5aa587SSascha WildnerSet maximum detail level for /dev/hpcmi output:
2442f5aa587SSascha Wildner.Bd -literal -offset indent
24508e18065SSascha Wildnersysctl hw.acpi.hp.cmi_detail=7
2462f5aa587SSascha Wildner.Ed
2472f5aa587SSascha Wildner.Sh SEE ALSO
2482f5aa587SSascha Wildner.Xr acpi 4 ,
249554257bcSSascha Wildner.Xr acpi_wmi 4 ,
250507a4eebSSascha Wildner.Xr devfs 5 ,
2512f5aa587SSascha Wildner.Xr sysctl.conf 5 ,
2522f5aa587SSascha Wildner.Xr devd 8 ,
2532f5aa587SSascha Wildner.Xr sysctl 8
2542f5aa587SSascha Wildner.Sh HISTORY
2552f5aa587SSascha WildnerThe
2562f5aa587SSascha Wildner.Nm
2572f5aa587SSascha Wildnerdevice driver was ported from
2582f5aa587SSascha Wildner.Fx
2592f5aa587SSascha Wildnerto
2602f5aa587SSascha Wildner.Dx 2.5 .
2612f5aa587SSascha Wildner.Sh AUTHORS
2622f5aa587SSascha Wildner.An -nosplit
2632f5aa587SSascha WildnerThe
2642f5aa587SSascha Wildner.Nm
2652f5aa587SSascha Wildnerdriver was written by
2662f5aa587SSascha Wildner.An Michael Gmelin Aq freebsd@grem.de
2672f5aa587SSascha Wildner.Pp
2682f5aa587SSascha WildnerIt has been inspired by hp-wmi driver, which implements a subset of these
2692f5aa587SSascha Wildnerfeatures (hotkeys) on Linux.
2702f5aa587SSascha Wildner.Bl -tag -width indent
2712f5aa587SSascha Wildner.It HP CMI whitepaper:
2722f5aa587SSascha Wildnerhttp://h20331.www2.hp.com/Hpsub/downloads/cmi_whitepaper.pdf
2732f5aa587SSascha Wildner.It wmi-hp for Linux:
2742f5aa587SSascha Wildnerhttp://www.kernel.org
2752f5aa587SSascha Wildner.It WMI and ACPI:
2762f5aa587SSascha Wildnerhttp://www.microsoft.com/whdc/system/pnppwr/wmi/wmi-acpi.mspx
2772f5aa587SSascha Wildner.El
2782f5aa587SSascha Wildner.Pp
2792f5aa587SSascha WildnerThis manual page was written by
2802f5aa587SSascha Wildner.An Michael Gmelin Aq freebsd@grem.de
2812f5aa587SSascha Wildner.Sh BUGS
282*d8cda59eSSascha WildnerThis driver is experimental and has only been tested on an
283*d8cda59eSSascha Wildner.Tn HP Compaq 8510p
284*d8cda59eSSascha Wildner(i386) and an
285*d8cda59eSSascha Wildner.Tn HP Compaq nc6320
286*d8cda59eSSascha Wildner(x86_64) which featured all supported wireless devices (WWAN/BT/WLAN).
2872f5aa587SSascha WildnerExpect undefined results when operating on different hardware.
2882f5aa587SSascha Wildner.Pp
2892f5aa587SSascha WildnerLoading the driver is slow. Reading from /dev/hpcmi is even slower.
2902f5aa587SSascha Wildner.Pp
2912f5aa587SSascha WildnerAdditional features like HP specific sensor readings or writing BIOS
2922f5aa587SSascha Wildnersettings are not supported.
293