Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src New aibs(4) driver for ASUSTeK AI Booster (ACPI ATK0110) har...
details: https://anonhg.NetBSD.org/src/rev/b9617612a394
branches: trunk
changeset: 751935:b9617612a394
user: cnst <cnst%NetBSD.org@localhost>
date: Tue Feb 09 03:19:50 2010 +0000
description:
New aibs(4) driver for ASUSTeK AI Booster (ACPI ATK0110) hardware monitor
with limit support.
http://thread.gmane.org/gmane.os.netbsd.devel.kernel/35654
Reviewed by <pgoyette>, <jruoho> and <tech-kern>.
diffstat:
distrib/sets/lists/man/mi | 5 +-
share/man/man4/Makefile | 4 +-
share/man/man4/acpi.4 | 6 +-
share/man/man4/aibs.4 | 246 ++++++++++++++++++++++
sys/arch/amd64/conf/GENERIC | 5 +-
sys/arch/amd64/conf/XEN3_DOM0 | 3 +-
sys/arch/i386/conf/ALL | 5 +-
sys/arch/i386/conf/GENERIC | 5 +-
sys/dev/acpi/atk0110.c | 450 ++++++++++++++++++++++++++++++++++++++++++
sys/dev/acpi/files.acpi | 7 +-
usr.sbin/envstat/envstat.8 | 3 +-
11 files changed, 726 insertions(+), 13 deletions(-)
diffs (truncated from 921 to 300 lines):
diff -r 37c6242737be -r b9617612a394 distrib/sets/lists/man/mi
--- a/distrib/sets/lists/man/mi Tue Feb 09 01:48:29 2010 +0000
+++ b/distrib/sets/lists/man/mi Tue Feb 09 03:19:50 2010 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.1189 2010/02/06 20:15:54 pgoyette Exp $
+# $NetBSD: mi,v 1.1190 2010/02/09 03:19:50 cnst Exp $
#
# Note: don't delete entries from here - mark them as "obsolete" instead.
#
@@ -651,6 +651,7 @@
./usr/share/man/cat4/ahd.0 man-sys-catman .cat
./usr/share/man/cat4/ai.0 man-sys-catman .cat
./usr/share/man/cat4/aiboost.0 man-sys-catman .cat
+./usr/share/man/cat4/aibs.0 man-sys-catman .cat
./usr/share/man/cat4/aic.0 man-sys-catman .cat
./usr/share/man/cat4/akbd.0 man-sys-catman .cat
./usr/share/man/cat4/ale.0 man-sys-catman .cat
@@ -3332,6 +3333,7 @@
./usr/share/man/html4/ahd.html man-sys-htmlman html
./usr/share/man/html4/ai.html man-sys-htmlman html
./usr/share/man/html4/aiboost.html man-sys-htmlman html
+./usr/share/man/html4/aibs.html man-sys-htmlman html
./usr/share/man/html4/aic.html man-sys-htmlman html
./usr/share/man/html4/akbd.html man-sys-htmlman html
./usr/share/man/html4/ale.html man-sys-htmlman html
@@ -5713,6 +5715,7 @@
./usr/share/man/man4/ahd.4 man-sys-man .man
./usr/share/man/man4/ai.4 man-sys-man .man
./usr/share/man/man4/aiboost.4 man-sys-man .man
+./usr/share/man/man4/aibs.4 man-sys-man .man
./usr/share/man/man4/aic.4 man-sys-man .man
./usr/share/man/man4/akbd.4 man-sys-man .man
./usr/share/man/man4/ale.4 man-sys-man .man
diff -r 37c6242737be -r b9617612a394 share/man/man4/Makefile
--- a/share/man/man4/Makefile Tue Feb 09 01:48:29 2010 +0000
+++ b/share/man/man4/Makefile Tue Feb 09 03:19:50 2010 +0000
@@ -1,11 +1,11 @@
-# $NetBSD: Makefile,v 1.503 2010/02/06 20:11:33 pgoyette Exp $
+# $NetBSD: Makefile,v 1.504 2010/02/09 03:19:50 cnst Exp $
# @(#)Makefile 8.1 (Berkeley) 6/18/93
MAN= aac.4 ac97.4 acardide.4 aceride.4 acphy.4 acpidalb.4 \
adbbt.4 adbkbd.4 adbms.4 \
adc.4 admtemp.4 adv.4 adw.4 age.4 agp.4 agr.4 ahb.4 ahc.4 \
ahcisata.4 ahd.4 \
- aiboost.4 ale.4 alipm.4 altmem.4 amdpm.4 amdtemp.4 amhphy.4 \
+ aiboost.4 aibs.4 ale.4 alipm.4 altmem.4 amdpm.4 amdtemp.4 amhphy.4 \
amr.4 aps.4 \
an.4 arcmsr.4 aria.4 artsata.4 ata.4 atalk.4 ataraid.4 \
ath.4 atphy.4 atppc.4 attimer.4 atw.4 \
diff -r 37c6242737be -r b9617612a394 share/man/man4/acpi.4
--- a/share/man/man4/acpi.4 Tue Feb 09 01:48:29 2010 +0000
+++ b/share/man/man4/acpi.4 Tue Feb 09 03:19:50 2010 +0000
@@ -1,4 +1,4 @@
-.\" $NetBSD: acpi.4,v 1.38 2010/02/06 20:11:33 pgoyette Exp $
+.\" $NetBSD: acpi.4,v 1.39 2010/02/09 03:19:50 cnst Exp $
.\"
.\" Copyright (c) 2002, 2004 The NetBSD Foundation, Inc.
.\" All rights reserved.
@@ -42,6 +42,7 @@
.Cd "acpismbus* at acpi?"
.Cd "acpitz* at acpi?"
.Cd "aiboost* at acpi?"
+.Cd "aibs* at acpi?"
.Cd "asus* at acpi?"
.Cd "attimer* at acpi?"
.Cd "com* at acpi?"
@@ -201,6 +202,8 @@
thermal zones.
.It aiboost
ASUS AI Booster Hardware monitor.
+.It aibs
+ASUSTeK AI Booster ACPI ATK0110 voltage, temperature and fan sensor.
.It asus
ASUS laptop hotkeys.
.It attimer
@@ -392,6 +395,7 @@
.Xr acpismbus 4 ,
.Xr acpitz 4 ,
.Xr aiboost 4 ,
+.Xr aibs 4 ,
.Xr apm 4 ,
.Xr attimer 4 ,
.Xr com 4 ,
diff -r 37c6242737be -r b9617612a394 share/man/man4/aibs.4
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/share/man/man4/aibs.4 Tue Feb 09 03:19:50 2010 +0000
@@ -0,0 +1,246 @@
+.\" $NetBSD: aibs.4,v 1.1 2010/02/09 03:19:50 cnst Exp $
+.\" $OpenBSD: aibs.4,v 1.4 2009/07/30 06:30:45 jmc Exp $
+.\"
+.\" Copyright (c) 2009 Constantine A. Murenin <cnst+netbsd%bugmail.mojo.ru@localhost>
+.\"
+.\" Permission to use, copy, modify, and distribute this software for any
+.\" purpose with or without fee is hereby granted, provided that the above
+.\" copyright notice and this permission notice appear in all copies.
+.\"
+.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+.\"
+.Dd December 30, 2009
+.Dt AIBS 4
+.Os
+.Sh NAME
+.Nm aibs
+.Nd "ASUSTeK AI Booster ACPI ATK0110 voltage, temperature and fan sensor"
+.Sh SYNOPSIS
+.Cd "aibs* at acpi?"
+.Sh DESCRIPTION
+The
+.Nm
+driver provides support for the voltage, temperature and fan sensors
+available through the
+.Tn ATK0110
+.Tn ASOC
+.Tn ACPI
+device
+on
+.Tn ASUSTeK
+motherboards.
+The number of sensors of each type,
+as well as the description of each sensor,
+varies according to the motherboard.
+.Pp
+The driver supports an arbitrary set of sensors,
+provides descriptions regarding what each sensor is used for,
+and reports whether each sensor is within the specifications
+as defined by the motherboard manufacturer through
+.Tn ACPI .
+.Pp
+The
+.Nm
+driver supports
+.Xr envsys 4
+sensor states as follows:
+.Bl -bullet
+.It
+Voltage sensors can have a state of
+.Dv valid ,
+.Dv critunder
+or
+.Dv critover ;
+temperature sensors can have a state of
+.Dv valid ,
+.Dv warnover ,
+.Dv critover
+or
+.Dv invalid ;
+and fan sensors can have a state of
+.Dv valid ,
+.Dv warnunder
+or
+.Dv warnover .
+.It
+Temperature sensors that have a reading of 0
+are marked
+.Dv invalid ,
+whereas all other sensors are always assumed valid.
+.It
+Voltage sensors have a lower and an upper limit
+.Dv ( critunder
+and
+.Dv critover ) ,
+temperature sensors have two upper limits
+.Dv ( warnover
+and
+.Dv critover ) ,
+whereas fan sensors may either have only the lower limit
+.Dv ( warnunder ) ,
+or, depending on the
+.Tn DSDT ,
+one lower and one upper limit
+.Dv ( warnunder
+and
+.Dv warnover ) .
+.El
+.Pp
+Sensor values and limits are made available through the
+.Xr envsys 4
+interface,
+and can be monitored with
+.Xr envstat 8 .
+For example, on an ASUS V3-P5G965 barebone:
+.Bd -literal -offset indent
+$ envstat -d aibs0
+ Current CritMax CritMin CritCap Unit
+ Vcore Voltage: 1.152 1.600 0.850 V
+ +3.3 Voltage: 3.312 3.630 2.970 V
+ +5 Voltage: 5.017 5.500 4.500 V
+ +12 Voltage: 12.302 13.800 10.200 V
+ CPU Temperature: 24.000 95.000 degC
+ MB Temperature: 57.000 95.000 degC
+ CPU FAN Speed: 865 RPM
+CHASSIS FAN Speed: 0 RPM
+.Pp
+$ envstat -W -d aibs0
+ Current WarnMax WarnMin WarnCap Unit
+ Vcore Voltage: 1.152 V
+ +3.3 Voltage: 3.312 V
+ +5 Voltage: 5.017 V
+ +12 Voltage: 12.302 V
+ CPU Temperature: 24.000 80.000 degC
+ MB Temperature: 57.000 60.000 degC
+ CPU FAN Speed: 865 7200 600 RPM
+CHASSIS FAN Speed: 0 7200 700 RPM
+.Ed
+.Pp
+Generally, sensors provided by the
+.Nm
+driver may also be supported by a variety of other drivers,
+such as
+.Xr lm 4
+or
+.Xr itesio 4 .
+The precise collection of
+.Nm
+sensors is comprised of the sensors
+specifically utilised in the motherboard
+design, which may be supported through
+a combination of one or more physical hardware monitoring chips.
+.Pp
+The
+.Nm
+driver, however, provides the following advantages
+when compared to the native hardware monitoring drivers:
+.Bl -bullet
+.It
+Sensor values from
+.Nm
+are expected to be more reliable.
+For example, voltage sensors in many hardware monitoring chips
+can only sense voltage from 0 to 2 or 4 volts, and the excessive
+voltage is removed by the resistors, which may vary with the motherboard
+and with the voltage that is being sensed.
+In
+.Nm ,
+the required resistor factors are provided by
+the motherboard manufacturer through
+.Tn ACPI ;
+in the native drivers, the resistor factors
+are encoded into the driver based on the chip manufacturer's recommendations.
+In essence, sensor values from
+.Nm
+are very likely to be identical to the readings from the
+Hardware Monitor screen in the BIOS.
+.It
+Sensor descriptions from
+.Nm
+are more likely to match the markings on the motherboard.
+.It
+Sensor states are supported by
+.Nm .
+The state is reported based on the acceptable range of values
+for each individual sensor as suggested by the motherboard manufacturer.
+For example, the threshold for the CPU temperature sensor is likely
+to be significantly higher than that for the chassis temperature sensor.
+.It
+Support for newer chips in
+.Nm .
+Newer chips may miss a native driver,
+but should be supported through
+.Nm
+regardless.
+.El
+.Pp
+As a result, sensor readings from the actual
+native hardware monitoring drivers
+are redundant when
+.Nm
+is present, and
+may be ignored as appropriate.
+Whereas on
+.Ox
+the native drivers have to be specifically disabled should
+their presence be judged unnecessary,
+on
+.Dx
+the
+.Xr lm 4
+and
+.Xr it 4
+are not probed provided that
+.Xr acpi 4
+is configured and the system potentially supports
+the hardware monitoring chip through
+.Tn ACPI .
+.Sh SEE ALSO
+.Xr envsys 4 ,
+.Xr envstat 8
+.Sh HISTORY
+The
+.Nm
+driver first appeared in
+.Ox 4.7 ,
+DragonFly 2.4.1
Home |
Main Index |
Thread Index |
Old Index