@@ -1,4 +1,4 @@
-.\" $NetBSD: dbcool.4,v 1.1 2008/10/02 00:47:51 pgoyette Exp $
+.\" $NetBSD: dbcool.4,v 1.2 2008/10/02 07:55:26 wiz Exp $
.\"
.\" Copyright (c) 2008 The NetBSD Foundation, Inc.
.\" All rights reserved.
@@ -28,7 +28,7 @@
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
.Dd September 28, 2008
-.Dt dbCool 4
+.Dt DBCOOL 4
.Os
.Sh NAME
.Nm dbcool ,
@@ -53,8 +53,8 @@
.Xr envsys 4
API.
.Pp
-These chips support up to twelve sensors. Not all of the following sensors
-are supported on all chips.
+These chips support up to twelve sensors.
+Not all of the following sensors are supported on all chips.
.Bl -column "Sensor" "Units" "Typical" -offset indent
.It Sy "Sensor" Ta Sy "Units" Ta Sy "Typical Use"
.It Li "l_temp" Ta "uK" Ta "local chip temperature"
@@ -74,8 +74,8 @@
.El
.Pp
Except on the ADT7466, each temperature and voltage sensor has a
-programmable high- and low-limit; fan sensors have only a low-limit. The
-user can set the threshold values using
+programmable high- and low-limit; fan sensors have only a low-limit.
+The user can set the threshold values using
.Xr sysctl 8
.Bd -literal -offset indent
hw.dbcool0.l_temp.low_lim = 35 degrees C
@@ -91,27 +91,30 @@
and
.Em Ttherm
.Xr sysctl 8
-variables; these values are used by the fan speed controllers.
+variables; these values are used by the fan speed controllers.
.Pp
All
.Xr sysctl 8
variables associated with temperature sensors are in units of degC, since
-this is the unit which is programmed into the device registers. Limit
-values for voltage sensors are in millivolts. The low limit value for
-fan sensors is measured in RPM; due to the manner in which fan speed is
-measured, the lowest possible value for a fan limit is 83 RPM.
+this is the unit which is programmed into the device registers.
+Limit values for voltage sensors are in millivolts.
+The low limit value for fan sensors is measured in RPM; due to
+the manner in which fan speed is measured, the lowest possible
+value for a fan limit is 83 RPM.
.Pp
All members of the dbCool family support Pulse-Width Modulated (PWM)
fan speed control based on temperature thresholds - the fan will spin up
-when one or more thermal sensors exceeds its configured
+when one or more thermal sensors exceeds its configured
.Em Tmin
-value. The fan will go faster as the temperature rises, and will slow
-down as the temperature falls. If the temperature exceeds the sensor's
+value.
+The fan will go faster as the temperature rises, and will slow down
+as the temperature falls.
+If the temperature exceeds the sensor's
.Em Ttherm
value, the THERM signal will be asserted, and if enabled the fan will
-run at full speed. The fan will be turned
-off when the sensor(s) that triggered it reports a temperature which is
-at least
+run at full speed.
+The fan will be turned off when the sensor(s) that triggered it
+reports a temperature which is at least
.Em Thyst
degrees below its
.Em Tmin
@@ -129,13 +132,14 @@
.Ed
(On the ADM1030, the
.Em range
-variable is associated with each individual temperature sensor rather
+variable is associated with each individual temperature sensor rather
than with the fan controller.)
.Pp
-The
+The
.Em behavior
variable controls the selection of temperature sensors associated with
-the fan controller. When the associated temperature sensor reaches its
+the fan controller.
+When the associated temperature sensor reaches its
.Em Tmin
value, the fan controller starts the fan at its minimum duty cycle;
when the associated temperature sensor reaches its
@@ -145,16 +149,18 @@
Between these two settings, each temperature sensor is used to calculate
a duty cycle linearly based on the slope defined by the temperature sensor's
.Em range
-variable. When the associated temperature falls at least
+variable.
+When the associated temperature falls at least
.Em Thyst
degress below its
.Em Tmin
-value, the fan controller will turn off the fan. (On the ADM1030, the
+value, the fan controller will turn off the fan.
+(On the ADM1030, the
value for
.Em Thyst
is fixed at 5 degrees C.)
.Pp
-Valid values for the
+Valid values for the
.Em behavior
variable are:
.Bd -literal -offset indent
@@ -170,10 +176,13 @@
.Pp
When the
.Em behavior
-variable is set to "manual", the
+variable is set to
+.Dq manual ,
+the
.Em cur-duty
variable becomes user-writeable and can be set to any value between 0 and
-100 inclusive to control the fan's duty cycle manually. In all other
+100 inclusive to control the fan's duty cycle manually.
+In all other
.Em behavior
modes, the
.Em cur-duty
@@ -184,8 +193,9 @@
and
.Em max-duty
variables define the range over which the fan controller will manage the
-fan's duty cycle. On the ADM1030, these values are not separately
-controllable. The
+fan's duty cycle.
+On the ADM1030, these values are not separately controllable.
+The
.Em max-duty
is fixed at 100%, and the
.Em cur-duty
@@ -193,10 +203,12 @@
controller is running in automatic mode.
.Pp
Note that the duty-cycle value does not directly correspond to the fan's
-speed. That is, a 33% duty cycle does not mean that the fan runs at 33%
-of its maximum speed; in actuality, a 33% duty cycle drives the fan at
-a speed close to 50% of its maximum. Fan speed correlates approximately
-to the square root of the duty cycle.
+speed.
+That is, a 33% duty cycle does not mean that the fan runs at 33%
+of its maximum speed; in actuality, a 33% duty cycle drives the
+fan at a speed close to 50% of its maximum.
+Fan speed correlates approximately to the square root of the duty
+cycle.
.Sh EXAMPLES
The
.Xr envstat 8
@@ -214,9 +226,10 @@
fan4: N/A
.Ed
.Pp
-Using this information, the following commands in /etc/envsys.conf will
-set appropriate limits for CPU temperature and chip supply voltage, and
-powerd will be notified if the limits are exceeded:
+Using this information, the following commands in
+.Pa /etc/envsys.conf
+will set appropriate limits for CPU temperature and chip supply
+voltage, and powerd will be notified if the limits are exceeded:
.Bd -literal -offset indent
dbcool0 {
sensor0 {
@@ -231,8 +244,9 @@
}
.Ed
.Pp
-Alternatively, set the following commands in /etc/sysctl.conf to perform
-limit checking in the hardware:
+Alternatively, set the following commands in
+.Pa /etc/sysctl.conf
+to perform limit checking in the hardware:
.Bd -literal -offset indent
hw.dbcool0.l_temp.hi_lim = 65
hw.dbcool0.Vcc.low_lim = 3200
@@ -251,9 +265,11 @@
.Sh BUGS
Although the sensor limit registers can be programmed, there is currently
no use of the dbCool chips' ability to generate an SMBus interrupt when the
-limits are exceeded. Limit checking is only performed when the sensor
-values are polled and refreshed.
+limits are exceeded.
+Limit checking is only performed when the sensor values are polled
+and refreshed.
.Pp
The ADT7466 chip, although officially a member of the dbCool family, is
-programmed quite differently. The fan controllers and sensor limits on
+programmed quite differently.
-this chip are not currently implemented.
+The fan controllers and sensor limits on this chip are not currently
+implemented.