Thu Oct 2 07:55:26 2008 UTC ()
Whitespace changes (including new sentence, new line).
Uppercase Dt argument.
Use more macros.


(wiz)
diff -r1.1 -r1.2 src/share/man/man4/dbcool.4

cvs diff -r1.1 -r1.2 src/share/man/man4/dbcool.4 (expand / switch to unified diff)

--- src/share/man/man4/dbcool.4 2008/10/02 00:47:51 1.1
+++ src/share/man/man4/dbcool.4 2008/10/02 07:55:26 1.2
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1.\" $NetBSD: dbcool.4,v 1.1 2008/10/02 00:47:51 pgoyette Exp $ 1.\" $NetBSD: dbcool.4,v 1.2 2008/10/02 07:55:26 wiz Exp $
2.\" 2.\"
3.\" Copyright (c) 2008 The NetBSD Foundation, Inc. 3.\" Copyright (c) 2008 The NetBSD Foundation, Inc.
4.\" All rights reserved. 4.\" All rights reserved.
5.\" 5.\"
6.\" This code is derived from software contributed to The NetBSD Foundation 6.\" This code is derived from software contributed to The NetBSD Foundation
7.\" by Paul Goyette. 7.\" by Paul Goyette.
8.\" 8.\"
9.\" Redistribution and use in source and binary forms, with or without 9.\" Redistribution and use in source and binary forms, with or without
10.\" modification, are permitted provided that the following conditions 10.\" modification, are permitted provided that the following conditions
11.\" are met: 11.\" are met:
12.\" 1. Redistributions of source code must retain the above copyright 12.\" 1. Redistributions of source code must retain the above copyright
13.\" notice, this list of conditions and the following disclaimer. 13.\" notice, this list of conditions and the following disclaimer.
14.\" 2. Redistributions in binary form must reproduce the above copyright 14.\" 2. Redistributions in binary form must reproduce the above copyright
@@ -18,242 +18,258 @@ @@ -18,242 +18,258 @@
18.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS 18.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
19.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 19.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
20.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 20.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
21.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS 21.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
22.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 22.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 23.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 24.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 25.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 26.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 27.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28.\" POSSIBILITY OF SUCH DAMAGE. 28.\" POSSIBILITY OF SUCH DAMAGE.
29.\" 29.\"
30.Dd September 28, 2008 30.Dd September 28, 2008
31.Dt dbCool 4 31.Dt DBCOOL 4
32.Os 32.Os
33.Sh NAME 33.Sh NAME
34.Nm dbcool , 34.Nm dbcool ,
35.Nm adm1027 , 35.Nm adm1027 ,
36.Nm adt7463 , 36.Nm adt7463 ,
37.Nm adt7466 , 37.Nm adt7466 ,
38.Nm adt7467 , 38.Nm adt7467 ,
39.Nm adt7468 , 39.Nm adt7468 ,
40.Nm adt7473 , 40.Nm adt7473 ,
41.Nm adt7475 , 41.Nm adt7475 ,
42.Nm adt7476 42.Nm adt7476
43.Nd dbCool(tm) family of environmental monitors and fan controllers 43.Nd dbCool(tm) family of environmental monitors and fan controllers
44.Sh SYNOPSIS 44.Sh SYNOPSIS
45.Cd "dbcool* at ki2c?" 45.Cd "dbcool* at ki2c?"
46.Cd "dbcool* at iic? addr 0x2e" 46.Cd "dbcool* at iic? addr 0x2e"
47.Sh DESCRIPTION 47.Sh DESCRIPTION
48The 48The
49.Nm 49.Nm
50driver provides support for the 50driver provides support for the
51.Tn Analog Devices 51.Tn Analog Devices
52dbCool environmental monitor chips to be used with the 52dbCool environmental monitor chips to be used with the
53.Xr envsys 4 53.Xr envsys 4
54API. 54API.
55.Pp 55.Pp
56These chips support up to twelve sensors. Not all of the following sensors 56These chips support up to twelve sensors.
57are supported on all chips. 57Not all of the following sensors are supported on all chips.
58.Bl -column "Sensor" "Units" "Typical" -offset indent 58.Bl -column "Sensor" "Units" "Typical" -offset indent
59.It Sy "Sensor" Ta Sy "Units" Ta Sy "Typical Use" 59.It Sy "Sensor" Ta Sy "Units" Ta Sy "Typical Use"
60.It Li "l_temp" Ta "uK" Ta "local chip temperature" 60.It Li "l_temp" Ta "uK" Ta "local chip temperature"
61.It Li "r1_temp" Ta "uK" Ta "CPU temperature" 61.It Li "r1_temp" Ta "uK" Ta "CPU temperature"
62.It Li "r2_temp" Ta "uK" Ta "GPU temperature" 62.It Li "r2_temp" Ta "uK" Ta "GPU temperature"
63.It Li "Vccp" Ta "uV DC" Ta "CPU Vcore" 63.It Li "Vccp" Ta "uV DC" Ta "CPU Vcore"
64.It Li "Vcc" Ta "uV DC" Ta "Chip's supply voltage" 64.It Li "Vcc" Ta "uV DC" Ta "Chip's supply voltage"
65.It Li "2.5V" Ta "uV DC" Ta "2.5V supply" 65.It Li "2.5V" Ta "uV DC" Ta "2.5V supply"
66.It Li "5V" Ta "uV DC" Ta "5V supply" 66.It Li "5V" Ta "uV DC" Ta "5V supply"
67.It Li "12V" Ta "uV DC" Ta "12V supply" 67.It Li "12V" Ta "uV DC" Ta "12V supply"
68.It Li "AIN1" Ta "uV DC" Ta "Analog In (2.25V ref, ADT7466 only)" 68.It Li "AIN1" Ta "uV DC" Ta "Analog In (2.25V ref, ADT7466 only)"
69.It Li "AIN2" Ta "uV DC" Ta "Analog In (2.25V ref, ADT7466 only)" 69.It Li "AIN2" Ta "uV DC" Ta "Analog In (2.25V ref, ADT7466 only)"
70.It Li "fan1" Ta "RPM" Ta "Chassis Fan" 70.It Li "fan1" Ta "RPM" Ta "Chassis Fan"
71.It Li "fan2" Ta "RPM" Ta "Chassis Fan" 71.It Li "fan2" Ta "RPM" Ta "Chassis Fan"
72.It Li "fan3" Ta "RPM" Ta "Chassis Fan" 72.It Li "fan3" Ta "RPM" Ta "Chassis Fan"
73.It Li "fan4" Ta "RPM" Ta "Chassis Fan" 73.It Li "fan4" Ta "RPM" Ta "Chassis Fan"
74.El 74.El
75.Pp 75.Pp
76Except on the ADT7466, each temperature and voltage sensor has a 76Except on the ADT7466, each temperature and voltage sensor has a
77programmable high- and low-limit; fan sensors have only a low-limit. The 77programmable high- and low-limit; fan sensors have only a low-limit.
78user can set the threshold values using 78The user can set the threshold values using
79.Xr sysctl 8 79.Xr sysctl 8
80.Bd -literal -offset indent 80.Bd -literal -offset indent
81hw.dbcool0.l_temp.low_lim = 35 degrees C 81hw.dbcool0.l_temp.low_lim = 35 degrees C
82hw.dbcool0.l_temp.hi_lim = 75 degrees C 82hw.dbcool0.l_temp.hi_lim = 75 degrees C
83hw.dbcool0.fan1.low_lim = 300 RPM 83hw.dbcool0.fan1.low_lim = 300 RPM
84hw.dbcool0.Vcc.low_lim = 2250 milliVolts 84hw.dbcool0.Vcc.low_lim = 2250 milliVolts
85hw.dbcool0.Vcc.hi_lim = 2750 milliVolts 85hw.dbcool0.Vcc.hi_lim = 2750 milliVolts
86.Ed 86.Ed
87.Pp 87.Pp
88Temperature sensors also have 88Temperature sensors also have
89.Em Tmin , 89.Em Tmin ,
90.Em Thyst , 90.Em Thyst ,
91and 91and
92.Em Ttherm 92.Em Ttherm
93.Xr sysctl 8 93.Xr sysctl 8
94variables; these values are used by the fan speed controllers. 94variables; these values are used by the fan speed controllers.
95.Pp 95.Pp
96All 96All
97.Xr sysctl 8 97.Xr sysctl 8
98variables associated with temperature sensors are in units of degC, since 98variables associated with temperature sensors are in units of degC, since
99this is the unit which is programmed into the device registers. Limit 99this is the unit which is programmed into the device registers.
100values for voltage sensors are in millivolts. The low limit value for 100Limit values for voltage sensors are in millivolts.
101fan sensors is measured in RPM; due to the manner in which fan speed is 101The low limit value for fan sensors is measured in RPM; due to
102measured, the lowest possible value for a fan limit is 83 RPM. 102the manner in which fan speed is measured, the lowest possible
 103value for a fan limit is 83 RPM.
103.Pp 104.Pp
104All members of the dbCool family support Pulse-Width Modulated (PWM) 105All members of the dbCool family support Pulse-Width Modulated (PWM)
105fan speed control based on temperature thresholds - the fan will spin up 106fan speed control based on temperature thresholds - the fan will spin up
106when one or more thermal sensors exceeds its configured  107when one or more thermal sensors exceeds its configured
107.Em Tmin 108.Em Tmin
108value. The fan will go faster as the temperature rises, and will slow 109value.
109down as the temperature falls. If the temperature exceeds the sensor's 110The fan will go faster as the temperature rises, and will slow down
 111as the temperature falls.
 112If the temperature exceeds the sensor's
110.Em Ttherm 113.Em Ttherm
111value, the THERM signal will be asserted, and if enabled the fan will 114value, the THERM signal will be asserted, and if enabled the fan will
112run at full speed. The fan will be turned 115run at full speed.
113off when the sensor(s) that triggered it reports a temperature which is 116The fan will be turned off when the sensor(s) that triggered it
114at least 117reports a temperature which is at least
115.Em Thyst 118.Em Thyst
116degrees below its 119degrees below its
117.Em Tmin 120.Em Tmin
118threshold. 121threshold.
119.Pp 122.Pp
120Each fan controller is programmable using the following 123Each fan controller is programmable using the following
121.Xr sysctl 8 124.Xr sysctl 8
122variables. 125variables.
123.Bd -literal -offset indent 126.Bd -literal -offset indent
124hw.dbcool0.fan_ctl_0.behavior 127hw.dbcool0.fan_ctl_0.behavior
125hw.dbcool0.fan_ctl_0.range 128hw.dbcool0.fan_ctl_0.range
126hw.dbcool0.fan_ctl_0.min_duty 129hw.dbcool0.fan_ctl_0.min_duty
127hw.dbcool0.fan_ctl_0.max_duty 130hw.dbcool0.fan_ctl_0.max_duty
128hw.dbcool0.fan_ctl_0.cur_duty 131hw.dbcool0.fan_ctl_0.cur_duty
129.Ed 132.Ed
130(On the ADM1030, the 133(On the ADM1030, the
131.Em range 134.Em range
132variable is associated with each individual temperature sensor rather  135variable is associated with each individual temperature sensor rather
133than with the fan controller.) 136than with the fan controller.)
134.Pp 137.Pp
135The  138The
136.Em behavior 139.Em behavior
137variable controls the selection of temperature sensors associated with 140variable controls the selection of temperature sensors associated with
138the fan controller. When the associated temperature sensor reaches its 141the fan controller.
 142When the associated temperature sensor reaches its
139.Em Tmin 143.Em Tmin
140value, the fan controller starts the fan at its minimum duty cycle; 144value, the fan controller starts the fan at its minimum duty cycle;
141when the associated temperature sensor reaches its 145when the associated temperature sensor reaches its
142.Em Ttherm 146.Em Ttherm
143value and asserts the THERM signal (or if an external THERM signal is 147value and asserts the THERM signal (or if an external THERM signal is
144asserted), the fan controller sets the fan speed to a 100% duty cycle. 148asserted), the fan controller sets the fan speed to a 100% duty cycle.
145Between these two settings, each temperature sensor is used to calculate 149Between these two settings, each temperature sensor is used to calculate
146a duty cycle linearly based on the slope defined by the temperature sensor's 150a duty cycle linearly based on the slope defined by the temperature sensor's
147.Em range 151.Em range
148variable. When the associated temperature falls at least 152variable.
 153When the associated temperature falls at least
149.Em Thyst 154.Em Thyst
150degress below its 155degress below its
151.Em Tmin 156.Em Tmin
152value, the fan controller will turn off the fan. (On the ADM1030, the 157value, the fan controller will turn off the fan.
 158(On the ADM1030, the
153value for 159value for
154.Em Thyst 160.Em Thyst
155is fixed at 5 degrees C.) 161is fixed at 5 degrees C.)
156.Pp 162.Pp
157Valid values for the  163Valid values for the
158.Em behavior 164.Em behavior
159variable are: 165variable are:
160.Bd -literal -offset indent 166.Bd -literal -offset indent
161local (not available on ADM1030) 167local (not available on ADM1030)
162remote1 168remote1
163remote2 (not available on ADM1030) 169remote2 (not available on ADM1030)
164local+remote2 (not available on ADM1030) 170local+remote2 (not available on ADM1030)
165all-temps 171all-temps
166full-speed (not available on ADM1030) 172full-speed (not available on ADM1030)
167manual 173manual
168disabled 174disabled
169.Ed 175.Ed
170.Pp 176.Pp
171When the 177When the
172.Em behavior 178.Em behavior
173variable is set to "manual", the 179variable is set to
 180.Dq manual ,
 181the
174.Em cur-duty 182.Em cur-duty
175variable becomes user-writeable and can be set to any value between 0 and 183variable becomes user-writeable and can be set to any value between 0 and
176100 inclusive to control the fan's duty cycle manually. In all other 184100 inclusive to control the fan's duty cycle manually.
 185In all other
177.Em behavior 186.Em behavior
178modes, the 187modes, the
179.Em cur-duty 188.Em cur-duty
180variable is read-only and updates are ignored. 189variable is read-only and updates are ignored.
181.Pp 190.Pp
182The 191The
183.Em min-duty 192.Em min-duty
184and 193and
185.Em max-duty 194.Em max-duty
186variables define the range over which the fan controller will manage the 195variables define the range over which the fan controller will manage the
187fan's duty cycle. On the ADM1030, these values are not separately 196fan's duty cycle.
188controllable. The 197On the ADM1030, these values are not separately controllable.
 198The
189.Em max-duty 199.Em max-duty
190is fixed at 100%, and the 200is fixed at 100%, and the
191.Em cur-duty 201.Em cur-duty
192variable is used to specify the minimum duty cycle when the fan 202variable is used to specify the minimum duty cycle when the fan
193controller is running in automatic mode. 203controller is running in automatic mode.
194.Pp 204.Pp
195Note that the duty-cycle value does not directly correspond to the fan's 205Note that the duty-cycle value does not directly correspond to the fan's
196speed. That is, a 33% duty cycle does not mean that the fan runs at 33% 206speed.
197of its maximum speed; in actuality, a 33% duty cycle drives the fan at 207That is, a 33% duty cycle does not mean that the fan runs at 33%
198a speed close to 50% of its maximum. Fan speed correlates approximately 208of its maximum speed; in actuality, a 33% duty cycle drives the
199to the square root of the duty cycle. 209fan at a speed close to 50% of its maximum.
 210Fan speed correlates approximately to the square root of the duty
 211cycle.
200.Sh EXAMPLES 212.Sh EXAMPLES
201The 213The
202.Xr envstat 8 214.Xr envstat 8
203utility can be used to determine the sensors supported: 215utility can be used to determine the sensors supported:
204.Bd -literal -offset indent 216.Bd -literal -offset indent
205 Current CritMax CritMin CritCap Unit 217 Current CritMax CritMin CritCap Unit
206 l_temp: 44.250 degC 218 l_temp: 44.250 degC
207r1_temp: 41.250 degC 219r1_temp: 41.250 degC
208r2_temp: N/A 220r2_temp: N/A
209 Vccp: 0.002 V 221 Vccp: 0.002 V
210 Vcc: 3.351 V 222 Vcc: 3.351 V
211 fan1: N/A 223 fan1: N/A
212 fan2: N/A 224 fan2: N/A
213 fan3: N/A 225 fan3: N/A
214 fan4: N/A 226 fan4: N/A
215.Ed 227.Ed
216.Pp 228.Pp
217Using this information, the following commands in /etc/envsys.conf will 229Using this information, the following commands in
218set appropriate limits for CPU temperature and chip supply voltage, and 230.Pa /etc/envsys.conf
219powerd will be notified if the limits are exceeded: 231will set appropriate limits for CPU temperature and chip supply
 232voltage, and powerd will be notified if the limits are exceeded:
220.Bd -literal -offset indent 233.Bd -literal -offset indent
221dbcool0 { 234dbcool0 {
222 sensor0 { 235 sensor0 {
223 warning-max = 60C; 236 warning-max = 60C;
224 critical-max = 65C; 237 critical-max = 65C;
225 } 238 }
226 sensor4 { 239 sensor4 {
227 critical-min = 3.1; 240 critical-min = 3.1;
228 warning-min = 3.2; 241 warning-min = 3.2;
229 critical-max = 3.5; 242 critical-max = 3.5;
230 } 243 }
231} 244}
232.Ed 245.Ed
233.Pp 246.Pp
234Alternatively, set the following commands in /etc/sysctl.conf to perform 247Alternatively, set the following commands in
235limit checking in the hardware: 248.Pa /etc/sysctl.conf
 249to perform limit checking in the hardware:
236.Bd -literal -offset indent 250.Bd -literal -offset indent
237hw.dbcool0.l_temp.hi_lim = 65 251hw.dbcool0.l_temp.hi_lim = 65
238hw.dbcool0.Vcc.low_lim = 3200 252hw.dbcool0.Vcc.low_lim = 3200
239hw.dbcool0.Vcc.hi_lim = 3500 253hw.dbcool0.Vcc.hi_lim = 3500
240.Ed 254.Ed
241.Sh SEE ALSO 255.Sh SEE ALSO
242.Xr envsys 4 , 256.Xr envsys 4 ,
243.Xr envstat 8 , 257.Xr envstat 8 ,
244.Xr powerd 8 , 258.Xr powerd 8 ,
245.Xr sysctl 8 259.Xr sysctl 8
246.Sh HISTORY 260.Sh HISTORY
247The 261The
248.Nm 262.Nm
249device appeared in 263device appeared in
250.Nx 5.0 . 264.Nx 5.0 .
251.Sh BUGS 265.Sh BUGS
252Although the sensor limit registers can be programmed, there is currently 266Although the sensor limit registers can be programmed, there is currently
253no use of the dbCool chips' ability to generate an SMBus interrupt when the 267no use of the dbCool chips' ability to generate an SMBus interrupt when the
254limits are exceeded. Limit checking is only performed when the sensor 268limits are exceeded.
255values are polled and refreshed. 269Limit checking is only performed when the sensor values are polled
 270and refreshed.
256.Pp 271.Pp
257The ADT7466 chip, although officially a member of the dbCool family, is 272The ADT7466 chip, although officially a member of the dbCool family, is
258programmed quite differently. The fan controllers and sensor limits on 273programmed quite differently.
259this chip are not currently implemented. 274The fan controllers and sensor limits on this chip are not currently
 275implemented.