xref: /freebsd/share/man/man4/acpi_hp.4 (revision df849145b5f98e0d2667cf7775fc1cab7c001640)
1df849145SRui Paulo.\" Copyright (c) 2009 Michael Gmelin
2df849145SRui Paulo.\" All rights reserved.
3df849145SRui Paulo.\"
4df849145SRui Paulo.\" Redistribution and use in source and binary forms, with or without
5df849145SRui Paulo.\" modification, are permitted provided that the following conditions
6df849145SRui Paulo.\" are met:
7df849145SRui Paulo.\" 1. Redistributions of source code must retain the above copyright
8df849145SRui Paulo.\"    notice, this list of conditions and the following disclaimer.
9df849145SRui Paulo.\" 2. Redistributions in binary form must reproduce the above copyright
10df849145SRui Paulo.\"    notice, this list of conditions and the following disclaimer in the
11df849145SRui Paulo.\"    documentation and/or other materials provided with the distribution.
12df849145SRui Paulo.\"
13df849145SRui Paulo.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
14df849145SRui Paulo.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15df849145SRui Paulo.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16df849145SRui Paulo.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
17df849145SRui Paulo.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18df849145SRui Paulo.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19df849145SRui Paulo.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20df849145SRui Paulo.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21df849145SRui Paulo.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22df849145SRui Paulo.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23df849145SRui Paulo.\" SUCH DAMAGE.
24df849145SRui Paulo.\"
25df849145SRui Paulo.\" $FreeBSD$
26df849145SRui Paulo.\"
27df849145SRui Paulo.Dd June 21, 2009
28df849145SRui Paulo.Dt ACPI_HP 4 i386
29df849145SRui Paulo.Os
30df849145SRui Paulo.Sh NAME
31df849145SRui Paulo.Nm acpi_hp
32df849145SRui Paulo.Nd "ACPI extras driver for HP laptops"
33df849145SRui Paulo.Sh SYNOPSIS
34df849145SRui PauloTo compile this driver into the kernel,
35df849145SRui Pauloplace the following line in your
36df849145SRui Paulokernel configuration file:
37df849145SRui Paulo.Bd -ragged -offset indent
38df849145SRui Paulo.Cd "device acpi_hp"
39df849145SRui Paulo.Ed
40df849145SRui Paulo.Pp
41df849145SRui PauloAlternatively, to load the driver as a
42df849145SRui Paulomodule at boot time, place the following line in
43df849145SRui Paulo.Xr loader.conf 5 :
44df849145SRui Paulo.Bd -literal -offset indent
45df849145SRui Pauloacpi_hp_load="YES"
46df849145SRui Paulo.Ed
47df849145SRui Paulo.Sh DESCRIPTION
48df849145SRui PauloThe
49df849145SRui Paulo.Nm
50df849145SRui Paulodriver provides support for ACPI-controlled features found on HP laptops
51df849145SRui Paulothat use a WMI enabled BIOS (e.g. HP Compaq 8510p and 6510p).
52df849145SRui Paulo.Pp
53df849145SRui PauloThe main purpose of this driver is to provide an interface,
54df849145SRui Pauloaccessible via
55df849145SRui Paulo.Xr sysctl 8 ,
56df849145SRui Paulo.Xr devd 8 and
57df849145SRui Paulo.Xr devfs 8 ,
58df849145SRui Paulothrough which applications can determine and change the status of
59df849145SRui Paulovarious laptop components and BIOS settings.
60df849145SRui Paulo.Pp
61df849145SRui Paulo.Ss Xr devd 8 Ss Events
62df849145SRui PauloDevd events received by
63df849145SRui Paulo.Xr devd 8
64df849145SRui Pauloprovide the following information:
65df849145SRui Paulo.Pp
66df849145SRui Paulo.Bl -tag -width "subsystem" -offset indent -compact
67df849145SRui Paulo.It system
68df849145SRui Paulo.Qq Li ACPI
69df849145SRui Paulo.It subsystem
70df849145SRui Paulo.Qq Li HP
71df849145SRui Paulo.It type
72df849145SRui PauloThe source of the event in the ACPI namespace.
73df849145SRui PauloThe value depends on the model.
74df849145SRui Paulo.It notify
75df849145SRui PauloEvent code (see below).
76df849145SRui Paulo.El
77df849145SRui Paulo.Pp
78df849145SRui PauloEvent codes:
79df849145SRui Paulo.Pp
80df849145SRui Paulo.Bl -tag -width "0xc0" -offset indent -compact
81df849145SRui Paulo.It Li 0xc0
82df849145SRui PauloWLAN on air status changed to 0 (not on air)
83df849145SRui Paulo.It Li 0xc1
84df849145SRui PauloWLAN on air status changed to 1 (on air)
85df849145SRui Paulo.It Li 0xd0
86df849145SRui PauloBluetooth on air status changed to 0 (not on air)
87df849145SRui Paulo.It Li 0xd1
88df849145SRui PauloBluetooth on air status changed to 1 (on air)
89df849145SRui Paulo.It Li 0xe0
90df849145SRui PauloWWAN on air status changed to 0 (not on air)
91df849145SRui Paulo.It Li 0xe1
92df849145SRui PauloWWAN on air status changed to 1 (on air)
93df849145SRui Paulo.El
94df849145SRui Paulo.Ss Xr devfs 8 Ss Device
95df849145SRui PauloYou can read /dev/hpcmi to see your current BIOS settings. The detail level
96df849145SRui Paulocan be adjusted by setting the sysctl
97df849145SRui Paulo.Va cmi_detail
98df849145SRui Pauloas described below.
99df849145SRui Paulo.Sh SYSCTL VARIABLES
100df849145SRui PauloThe following sysctls are currently implemented:
101df849145SRui Paulo.Ss WLAN:
102df849145SRui Paulo.Bl -tag -width indent
103df849145SRui Paulo.It Va dev.acpi_hp.0.wlan_enabled
104df849145SRui PauloToggle WLAN chip activity.
105df849145SRui Paulo.It Va dev.acpi_hp.0.wlan_radio
106df849145SRui Paulo(read-only)
107df849145SRui PauloWLAN radio status (controlled by hardware switch)
108df849145SRui Paulo.It Va dev.acpi_hp.0.wlan_on_air
109df849145SRui Paulo(read-only)
110df849145SRui PauloWLAN on air (chip enabled, hardware switch enabled + enabled in BIOS)
111df849145SRui Paulo.It Va dev.acpi_hp.0.wlan_enabled_if_radio_on
112df849145SRui PauloIf set to 1, the WLAN chip will be enabled if the radio is turned on
113df849145SRui Paulo.It Va dev.acpi_hp.0.wlan_disable_if_radio_off
114df849145SRui PauloIf set to 1, the WLAN chip will be disabled if the radio is turned off
115df849145SRui Paulo.El
116df849145SRui Paulo.Ss Bluetooth:
117df849145SRui Paulo.Bl -tag -width indent
118df849145SRui Paulo.It Va dev.acpi_hp.0.bt_enabled
119df849145SRui PauloToggle Bluetooth chip activity.
120df849145SRui Paulo.It Va dev.acpi_hp.0.bt_radio
121df849145SRui Paulo(read-only)
122df849145SRui PauloBluetooth radio status (controlled by hardware switch)
123df849145SRui Paulo.It Va dev.acpi_hp.0.bt_on_air
124df849145SRui Paulo(read-only)
125df849145SRui PauloBluetooth on air (chip enabled, hardware switch enabled + enabled in BIOS)
126df849145SRui Paulo.It Va dev.acpi_hp.0.bt_enabled_if_radio_on
127df849145SRui PauloIf set to 1, the Bluetooth chip will be enabled if the radio is turned on
128df849145SRui Paulo.It Va dev.acpi_hp.0.bt_disable_if_radio_off
129df849145SRui PauloIf set to 1, the Bluetooth chip will be disabled if the radio is turned off
130df849145SRui Paulo.El
131df849145SRui Paulo.Ss WWAN:
132df849145SRui Paulo.Bl -tag -width indent
133df849145SRui Paulo.It Va dev.acpi_hp.0.wwan_enabled
134df849145SRui PauloToggle WWAN chip activity.
135df849145SRui Paulo.It Va dev.acpi_hp.0.wwan_radio
136df849145SRui Paulo(read-only)
137df849145SRui PauloWWAN radio status (controlled by hardware switch)
138df849145SRui Paulo.It Va dev.acpi_hp.0.wwan_on_air
139df849145SRui Paulo(read-only)
140df849145SRui PauloWWAN on air (chip enabled, hardware switch enabled + enabled in BIOS)
141df849145SRui Paulo.It Va dev.acpi_hp.0.wwan_enabled_if_radio_on
142df849145SRui PauloIf set to 1, the WWAN chip will be enabled if the radio is turned on
143df849145SRui Paulo.It Va dev.acpi_hp.0.wwan_disable_if_radio_off
144df849145SRui PauloIf set to 1, the WWAN chip will be disabled if the radio is turned off
145df849145SRui Paulo.El
146df849145SRui Paulo.Ss Misc:
147df849145SRui Paulo.Bl -tag -width indent
148df849145SRui Paulo.It Va dev.acpi_hp.0.als_enabled
149df849145SRui PauloToggle ambient light sensor (ALS)
150df849145SRui Paulo.It Va dev.acpi_hp.0.display
151df849145SRui Paulo(read-only)
152df849145SRui PauloDisplay status (bitmask)
153df849145SRui Paulo.It Va dev.acpi_hp.0.hdd_temperature
154df849145SRui Paulo(read-only)
155df849145SRui PauloHDD temperature
156df849145SRui Paulo.It Va dev.acpi_hp.0.is_docked
157df849145SRui Paulo(read-only)
158df849145SRui PauloDocking station status (1 if docked)
159df849145SRui Paulo.It Va dev.acpi_hp.0.cmi_detail
160df849145SRui PauloBitmask to control detail level in /dev/hpcmi output (values can be ORed).
161df849145SRui Paulo.Bl -tag -width "0x01" -offset indent -compact
162df849145SRui Paulo.It Li 0x01
163df849145SRui PauloShow path component of BIOS setting
164df849145SRui Paulo.It Li 0x02
165df849145SRui PauloShow a list of valid options for the BIOS setting
166df849145SRui Paulo.It Li 0x04
167df849145SRui PauloShow additional flags of BIOS setting (ReadOnly etc.)
168df849145SRui Paulo.El
169df849145SRui Paulo.El
170df849145SRui Paulo.Pp
171df849145SRui PauloDefaults for these sysctls can be set in
172df849145SRui Paulo.Xr sysctl.conf 5 .
173df849145SRui Paulo.Sh FILES
174df849145SRui Paulo.Bl -tag -width ".Pa /dev/hpcmi"
175df849145SRui Paulo.It Pa /dev/hpcmi
176df849145SRui PauloInterface to read BIOS settings
177df849145SRui Paulo.El
178df849145SRui Paulo.Sh EXAMPLES
179df849145SRui PauloThe following can be added to
180df849145SRui Paulo.Xr devd.conf 5
181df849145SRui Pauloin order disable the LAN interface when WLAN on air and reenable if it's
182df849145SRui Paulonot:
183df849145SRui Paulo.Bd -literal -offset indent
184df849145SRui Paulonotify 0 {
185df849145SRui Paulo	match "system"          "ACPI";
186df849145SRui Paulo	match "subsystem"       "HP";
187df849145SRui Paulo	match "notify"          "0xc0";
188df849145SRui Paulo	action                  "ifconfig em0 up";
189df849145SRui Paulo};
190df849145SRui Paulo
191df849145SRui Paulonotify 0 {
192df849145SRui Paulo	match "system"          "ACPI";
193df849145SRui Paulo	match "subsystem"       "HP";
194df849145SRui Paulo	match "notify"          "0xc1";
195df849145SRui Paulo	action                  "ifconfig em0 down";
196df849145SRui Paulo};
197df849145SRui Paulo.Ed
198df849145SRui Paulo.Pp
199df849145SRui PauloEnable the ambient light sensor:
200df849145SRui Paulo.Bd -literal -offset indent
201df849145SRui Paulosysctl dev.acpi_hp.0.als_enabled=1
202df849145SRui Paulo.Ed
203df849145SRui Paulo.Pp
204df849145SRui PauloEnable Bluetooth:
205df849145SRui Paulo.Bd -literal -offset indent
206df849145SRui Paulosysctl dev.acpi_hp.0.bt_enabled=1
207df849145SRui Paulo.Ed
208df849145SRui Paulo.Pp
209df849145SRui PauloGet BIOS settings:
210df849145SRui Paulo.Bd -literal -offset indent
211df849145SRui Paulocat /dev/hpcmi
212df849145SRui Paulo
213df849145SRui PauloSerial Port                                Disable
214df849145SRui PauloInfrared Port                              Enable
215df849145SRui PauloParallel Port                              Disable
216df849145SRui PauloFlash Media Reader                         Disable
217df849145SRui PauloUSB Ports including Express Card slot      Enable
218df849145SRui Paulo1394 Port                                  Enable
219df849145SRui PauloCardbus Slot                               Disable
220df849145SRui PauloExpress Card Slot                          Disable
221df849145SRui Paulo(...)
222df849145SRui Paulo.Ed
223df849145SRui Paulo.Pp
224df849145SRui PauloSet maximum detail level for /dev/hpcmi output:
225df849145SRui Paulo.Bd -literal -offset indent
226df849145SRui Paulosysctl dev.acpi_hp.0.cmi_detail=7
227df849145SRui Paulo.Ed
228df849145SRui Paulo.Pp
229df849145SRui Paulo
230df849145SRui Paulo
231df849145SRui Paulo
232df849145SRui Paulo.Sh SEE ALSO
233df849145SRui Paulo.Xr acpi 4 ,
234df849145SRui Paulo.Xr acpi_wmi 4 ,
235df849145SRui Paulo.Xr sysctl.conf 5 ,
236df849145SRui Paulo.Xr devd 8 ,
237df849145SRui Paulo.Xr devfs 8 ,
238df849145SRui Paulo.Xr sysctl 8
239df849145SRui Paulo.Sh HISTORY
240df849145SRui PauloThe
241df849145SRui Paulo.Nm
242df849145SRui Paulodevice driver first appeared in
243df849145SRui Paulo.Fx CURRENT .
244df849145SRui Paulo.Sh AUTHORS
245df849145SRui Paulo.An -nosplit
246df849145SRui PauloThe
247df849145SRui Paulo.Nm
248df849145SRui Paulodriver was written by
249df849145SRui Paulo.An Michael Gmelin Aq freebsd@grem.de
250df849145SRui Paulo.Pp
251df849145SRui PauloIt has been inspired by hp-wmi driver, which implements a subset of these
252df849145SRui Paulofeatures (hotkeys) on Linux.
253df849145SRui Paulo.Pp
254df849145SRui Paulo.Bl -tag -width indent
255df849145SRui Paulo.It HP CMI whitepaper:
256df849145SRui Paulohttp://h20331.www2.hp.com/Hpsub/downloads/cmi_whitepaper.pdf
257df849145SRui Paulo.It wmi-hp for Linux:
258df849145SRui Paulohttp://www.kernel.org
259df849145SRui Paulo.It WMI and ACPI:
260df849145SRui Paulohttp://www.microsoft.com/whdc/system/pnppwr/wmi/wmi-acpi.mspx
261df849145SRui Paulo.El
262df849145SRui Paulo.Pp
263df849145SRui PauloThis manual page was written by
264df849145SRui Paulo.An Michael Gmelin Aq freebsd@grem.de
265df849145SRui Paulo.Sh BUGS
266df849145SRui PauloThis driver is experimental and has only been tested on CURRENT i386 on an
267df849145SRui PauloHP Compaq 8510p which featured all supported wireless devices (WWAN/BT/WLAN).
268df849145SRui PauloExpect undefined results when operating on different hardware.
269df849145SRui Paulo.Pp
270df849145SRui PauloLoading the driver is slow. Reading from /dev/hpcmi is even slower.
271df849145SRui Paulo.Pp
272df849145SRui PauloAdditional features like HP specific sensor readings or writing BIOS
273df849145SRui Paulosettings are not supported.
274df849145SRui Paulo.\" Copyright (c) 2009 Michael Gmelin
275df849145SRui Paulo.\" All rights reserved.
276df849145SRui Paulo.\"
277df849145SRui Paulo.\" Redistribution and use in source and binary forms, with or without
278df849145SRui Paulo.\" modification, are permitted provided that the following conditions
279df849145SRui Paulo.\" are met:
280df849145SRui Paulo.\" 1. Redistributions of source code must retain the above copyright
281df849145SRui Paulo.\"    notice, this list of conditions and the following disclaimer.
282df849145SRui Paulo.\" 2. Redistributions in binary form must reproduce the above copyright
283df849145SRui Paulo.\"    notice, this list of conditions and the following disclaimer in the
284df849145SRui Paulo.\"    documentation and/or other materials provided with the distribution.
285df849145SRui Paulo.\"
286df849145SRui Paulo.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
287df849145SRui Paulo.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
288df849145SRui Paulo.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
289df849145SRui Paulo.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
290df849145SRui Paulo.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
291df849145SRui Paulo.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
292df849145SRui Paulo.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
293df849145SRui Paulo.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
294df849145SRui Paulo.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
295df849145SRui Paulo.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
296df849145SRui Paulo.\" SUCH DAMAGE.
297df849145SRui Paulo.\"
298df849145SRui Paulo.\" $FreeBSD$
299df849145SRui Paulo.\"
300df849145SRui Paulo.Dd June 21, 2009
301df849145SRui Paulo.Dt ACPI_HP 4 i386
302df849145SRui Paulo.Os
303df849145SRui Paulo.Sh NAME
304df849145SRui Paulo.Nm acpi_hp
305df849145SRui Paulo.Nd "ACPI extras driver for HP laptops"
306df849145SRui Paulo.Sh SYNOPSIS
307df849145SRui PauloTo compile this driver into the kernel,
308df849145SRui Pauloplace the following line in your
309df849145SRui Paulokernel configuration file:
310df849145SRui Paulo.Bd -ragged -offset indent
311df849145SRui Paulo.Cd "device acpi_hp"
312df849145SRui Paulo.Ed
313df849145SRui Paulo.Pp
314df849145SRui PauloAlternatively, to load the driver as a
315df849145SRui Paulomodule at boot time, place the following line in
316df849145SRui Paulo.Xr loader.conf 5 :
317df849145SRui Paulo.Bd -literal -offset indent
318df849145SRui Pauloacpi_hp_load="YES"
319df849145SRui Paulo.Ed
320df849145SRui Paulo.Sh DESCRIPTION
321df849145SRui PauloThe
322df849145SRui Paulo.Nm
323df849145SRui Paulodriver provides support for ACPI-controlled features found on HP laptops
324df849145SRui Paulothat use a WMI enabled BIOS (e.g. HP Compaq 8510p and 6510p).
325df849145SRui Paulo.Pp
326df849145SRui PauloThe main purpose of this driver is to provide an interface,
327df849145SRui Pauloaccessible via
328df849145SRui Paulo.Xr sysctl 8 ,
329df849145SRui Paulo.Xr devd 8 and
330df849145SRui Paulo.Xr devfs 8 ,
331df849145SRui Paulothrough which applications can determine and change the status of
332df849145SRui Paulovarious laptop components and BIOS settings.
333df849145SRui Paulo.Pp
334df849145SRui Paulo.Ss Xr devd 8 Ss Events
335df849145SRui PauloDevd events received by
336df849145SRui Paulo.Xr devd 8
337df849145SRui Pauloprovide the following information:
338df849145SRui Paulo.Pp
339df849145SRui Paulo.Bl -tag -width "subsystem" -offset indent -compact
340df849145SRui Paulo.It system
341df849145SRui Paulo.Qq Li ACPI
342df849145SRui Paulo.It subsystem
343df849145SRui Paulo.Qq Li HP
344df849145SRui Paulo.It type
345df849145SRui PauloThe source of the event in the ACPI namespace.
346df849145SRui PauloThe value depends on the model.
347df849145SRui Paulo.It notify
348df849145SRui PauloEvent code (see below).
349df849145SRui Paulo.El
350df849145SRui Paulo.Pp
351df849145SRui PauloEvent codes:
352df849145SRui Paulo.Pp
353df849145SRui Paulo.Bl -tag -width "0xc0" -offset indent -compact
354df849145SRui Paulo.It Li 0xc0
355df849145SRui PauloWLAN on air status changed to 0 (not on air)
356df849145SRui Paulo.It Li 0xc1
357df849145SRui PauloWLAN on air status changed to 1 (on air)
358df849145SRui Paulo.It Li 0xd0
359df849145SRui PauloBluetooth on air status changed to 0 (not on air)
360df849145SRui Paulo.It Li 0xd1
361df849145SRui PauloBluetooth on air status changed to 1 (on air)
362df849145SRui Paulo.It Li 0xe0
363df849145SRui PauloWWAN on air status changed to 0 (not on air)
364df849145SRui Paulo.It Li 0xe1
365df849145SRui PauloWWAN on air status changed to 1 (on air)
366df849145SRui Paulo.El
367df849145SRui Paulo.Ss Xr devfs 8 Ss Device
368df849145SRui PauloYou can read /dev/hpcmi to see your current BIOS settings. The detail level
369df849145SRui Paulocan be adjusted by setting the sysctl
370df849145SRui Paulo.Va cmi_detail
371df849145SRui Pauloas described below.
372df849145SRui Paulo.Sh SYSCTL VARIABLES
373df849145SRui PauloThe following sysctls are currently implemented:
374df849145SRui Paulo.Ss WLAN:
375df849145SRui Paulo.Bl -tag -width indent
376df849145SRui Paulo.It Va dev.acpi_hp.0.wlan_enabled
377df849145SRui PauloToggle WLAN chip activity.
378df849145SRui Paulo.It Va dev.acpi_hp.0.wlan_radio
379df849145SRui Paulo(read-only)
380df849145SRui PauloWLAN radio status (controlled by hardware switch)
381df849145SRui Paulo.It Va dev.acpi_hp.0.wlan_on_air
382df849145SRui Paulo(read-only)
383df849145SRui PauloWLAN on air (chip enabled, hardware switch enabled + enabled in BIOS)
384df849145SRui Paulo.It Va dev.acpi_hp.0.wlan_enabled_if_radio_on
385df849145SRui PauloIf set to 1, the WLAN chip will be enabled if the radio is turned on
386df849145SRui Paulo.It Va dev.acpi_hp.0.wlan_disable_if_radio_off
387df849145SRui PauloIf set to 1, the WLAN chip will be disabled if the radio is turned off
388df849145SRui Paulo.El
389df849145SRui Paulo.Ss Bluetooth:
390df849145SRui Paulo.Bl -tag -width indent
391df849145SRui Paulo.It Va dev.acpi_hp.0.bt_enabled
392df849145SRui PauloToggle Bluetooth chip activity.
393df849145SRui Paulo.It Va dev.acpi_hp.0.bt_radio
394df849145SRui Paulo(read-only)
395df849145SRui PauloBluetooth radio status (controlled by hardware switch)
396df849145SRui Paulo.It Va dev.acpi_hp.0.bt_on_air
397df849145SRui Paulo(read-only)
398df849145SRui PauloBluetooth on air (chip enabled, hardware switch enabled + enabled in BIOS)
399df849145SRui Paulo.It Va dev.acpi_hp.0.bt_enabled_if_radio_on
400df849145SRui PauloIf set to 1, the Bluetooth chip will be enabled if the radio is turned on
401df849145SRui Paulo.It Va dev.acpi_hp.0.bt_disable_if_radio_off
402df849145SRui PauloIf set to 1, the Bluetooth chip will be disabled if the radio is turned off
403df849145SRui Paulo.El
404df849145SRui Paulo.Ss WWAN:
405df849145SRui Paulo.Bl -tag -width indent
406df849145SRui Paulo.It Va dev.acpi_hp.0.wwan_enabled
407df849145SRui PauloToggle WWAN chip activity.
408df849145SRui Paulo.It Va dev.acpi_hp.0.wwan_radio
409df849145SRui Paulo(read-only)
410df849145SRui PauloWWAN radio status (controlled by hardware switch)
411df849145SRui Paulo.It Va dev.acpi_hp.0.wwan_on_air
412df849145SRui Paulo(read-only)
413df849145SRui PauloWWAN on air (chip enabled, hardware switch enabled + enabled in BIOS)
414df849145SRui Paulo.It Va dev.acpi_hp.0.wwan_enabled_if_radio_on
415df849145SRui PauloIf set to 1, the WWAN chip will be enabled if the radio is turned on
416df849145SRui Paulo.It Va dev.acpi_hp.0.wwan_disable_if_radio_off
417df849145SRui PauloIf set to 1, the WWAN chip will be disabled if the radio is turned off
418df849145SRui Paulo.El
419df849145SRui Paulo.Ss Misc:
420df849145SRui Paulo.Bl -tag -width indent
421df849145SRui Paulo.It Va dev.acpi_hp.0.als_enabled
422df849145SRui PauloToggle ambient light sensor (ALS)
423df849145SRui Paulo.It Va dev.acpi_hp.0.display
424df849145SRui Paulo(read-only)
425df849145SRui PauloDisplay status (bitmask)
426df849145SRui Paulo.It Va dev.acpi_hp.0.hdd_temperature
427df849145SRui Paulo(read-only)
428df849145SRui PauloHDD temperature
429df849145SRui Paulo.It Va dev.acpi_hp.0.is_docked
430df849145SRui Paulo(read-only)
431df849145SRui PauloDocking station status (1 if docked)
432df849145SRui Paulo.It Va dev.acpi_hp.0.cmi_detail
433df849145SRui PauloBitmask to control detail level in /dev/hpcmi output (values can be ORed).
434df849145SRui Paulo.Bl -tag -width "0x01" -offset indent -compact
435df849145SRui Paulo.It Li 0x01
436df849145SRui PauloShow path component of BIOS setting
437df849145SRui Paulo.It Li 0x02
438df849145SRui PauloShow a list of valid options for the BIOS setting
439df849145SRui Paulo.It Li 0x04
440df849145SRui PauloShow additional flags of BIOS setting (ReadOnly etc.)
441df849145SRui Paulo.El
442df849145SRui Paulo.El
443df849145SRui Paulo.Pp
444df849145SRui PauloDefaults for these sysctls can be set in
445df849145SRui Paulo.Xr sysctl.conf 5 .
446df849145SRui Paulo.Sh FILES
447df849145SRui Paulo.Bl -tag -width ".Pa /dev/hpcmi"
448df849145SRui Paulo.It Pa /dev/hpcmi
449df849145SRui PauloInterface to read BIOS settings
450df849145SRui Paulo.El
451df849145SRui Paulo.Sh EXAMPLES
452df849145SRui PauloThe following can be added to
453df849145SRui Paulo.Xr devd.conf 5
454df849145SRui Pauloin order disable the LAN interface when WLAN on air and reenable if it's
455df849145SRui Paulonot:
456df849145SRui Paulo.Bd -literal -offset indent
457df849145SRui Paulonotify 0 {
458df849145SRui Paulo	match "system"          "ACPI";
459df849145SRui Paulo	match "subsystem"       "HP";
460df849145SRui Paulo	match "notify"          "0xc0";
461df849145SRui Paulo	action                  "ifconfig em0 up";
462df849145SRui Paulo};
463df849145SRui Paulo
464df849145SRui Paulonotify 0 {
465df849145SRui Paulo	match "system"          "ACPI";
466df849145SRui Paulo	match "subsystem"       "HP";
467df849145SRui Paulo	match "notify"          "0xc1";
468df849145SRui Paulo	action                  "ifconfig em0 down";
469df849145SRui Paulo};
470df849145SRui Paulo.Ed
471df849145SRui Paulo.Pp
472df849145SRui PauloEnable the ambient light sensor:
473df849145SRui Paulo.Bd -literal -offset indent
474df849145SRui Paulosysctl dev.acpi_hp.0.als_enabled=1
475df849145SRui Paulo.Ed
476df849145SRui Paulo.Pp
477df849145SRui PauloEnable Bluetooth:
478df849145SRui Paulo.Bd -literal -offset indent
479df849145SRui Paulosysctl dev.acpi_hp.0.bt_enabled=1
480df849145SRui Paulo.Ed
481df849145SRui Paulo.Pp
482df849145SRui PauloGet BIOS settings:
483df849145SRui Paulo.Bd -literal -offset indent
484df849145SRui Paulocat /dev/hpcmi
485df849145SRui Paulo
486df849145SRui PauloSerial Port                                Disable
487df849145SRui PauloInfrared Port                              Enable
488df849145SRui PauloParallel Port                              Disable
489df849145SRui PauloFlash Media Reader                         Disable
490df849145SRui PauloUSB Ports including Express Card slot      Enable
491df849145SRui Paulo1394 Port                                  Enable
492df849145SRui PauloCardbus Slot                               Disable
493df849145SRui PauloExpress Card Slot                          Disable
494df849145SRui Paulo(...)
495df849145SRui Paulo.Ed
496df849145SRui Paulo.Pp
497df849145SRui PauloSet maximum detail level for /dev/hpcmi output:
498df849145SRui Paulo.Bd -literal -offset indent
499df849145SRui Paulosysctl dev.acpi_hp.0.cmi_detail=7
500df849145SRui Paulo.Ed
501df849145SRui Paulo.Pp
502df849145SRui Paulo
503df849145SRui Paulo
504df849145SRui Paulo
505df849145SRui Paulo.Sh SEE ALSO
506df849145SRui Paulo.Xr acpi 4 ,
507df849145SRui Paulo.Xr acpi_wmi 4 ,
508df849145SRui Paulo.Xr sysctl.conf 5 ,
509df849145SRui Paulo.Xr devd 8 ,
510df849145SRui Paulo.Xr devfs 8 ,
511df849145SRui Paulo.Xr sysctl 8
512df849145SRui Paulo.Sh HISTORY
513df849145SRui PauloThe
514df849145SRui Paulo.Nm
515df849145SRui Paulodevice driver first appeared in
516df849145SRui Paulo.Fx CURRENT .
517df849145SRui Paulo.Sh AUTHORS
518df849145SRui Paulo.An -nosplit
519df849145SRui PauloThe
520df849145SRui Paulo.Nm
521df849145SRui Paulodriver was written by
522df849145SRui Paulo.An Michael Gmelin Aq freebsd@grem.de
523df849145SRui Paulo.Pp
524df849145SRui PauloIt has been inspired by hp-wmi driver, which implements a subset of these
525df849145SRui Paulofeatures (hotkeys) on Linux.
526df849145SRui Paulo.Pp
527df849145SRui Paulo.Bl -tag -width indent
528df849145SRui Paulo.It HP CMI whitepaper:
529df849145SRui Paulohttp://h20331.www2.hp.com/Hpsub/downloads/cmi_whitepaper.pdf
530df849145SRui Paulo.It wmi-hp for Linux:
531df849145SRui Paulohttp://www.kernel.org
532df849145SRui Paulo.It WMI and ACPI:
533df849145SRui Paulohttp://www.microsoft.com/whdc/system/pnppwr/wmi/wmi-acpi.mspx
534df849145SRui Paulo.El
535df849145SRui Paulo.Pp
536df849145SRui PauloThis manual page was written by
537df849145SRui Paulo.An Michael Gmelin Aq freebsd@grem.de
538df849145SRui Paulo.Sh BUGS
539df849145SRui PauloThis driver is experimental and has only been tested on CURRENT i386 on an
540df849145SRui PauloHP Compaq 8510p which featured all supported wireless devices (WWAN/BT/WLAN).
541df849145SRui PauloExpect undefined results when operating on different hardware.
542df849145SRui Paulo.Pp
543df849145SRui PauloLoading the driver is slow. Reading from /dev/hpcmi is even slower.
544df849145SRui Paulo.Pp
545df849145SRui PauloAdditional features like HP specific sensor readings or writing BIOS
546df849145SRui Paulosettings are not supported.
547