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