From 5359162b0763cc92bed6f1fe211d5062ee44c0bf Mon Sep 17 00:00:00 2001 From: "Mark D. Studebaker" Date: Mon, 18 Apr 2005 20:19:19 +0000 Subject: [PATCH] w83792d doc from Chunhao/Winbond; SUMMARY entry by me. git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@2977 7894878c-1315-0410-8ee3-d5d059ff63e0 --- doc/chips/SUMMARY | 3 + doc/chips/w83792d | 269 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 272 insertions(+) create mode 100644 doc/chips/w83792d diff --git a/doc/chips/SUMMARY b/doc/chips/SUMMARY index e7a89916..cfad5175 100644 --- a/doc/chips/SUMMARY +++ b/doc/chips/SUMMARY @@ -233,6 +233,9 @@ w83781d w83l785ts w83l785ts 1 - - - yes no +w83792d + w83792d 3 9 7 3 pwm yes no + xeontemp xeontemp 1 - - - yes no diff --git a/doc/chips/w83792d b/doc/chips/w83792d new file mode 100644 index 00000000..b19552e0 --- /dev/null +++ b/doc/chips/w83792d @@ -0,0 +1,269 @@ +Kernel driver `w83792d.o' +========================= + +Status: W83792D support is complete and well-tested. + + +Supported chips: + * Winbond W83792D + Prefix 'w83792d' + Addresses scanned: I2C 0x2c - 0x2f (inclusive) + Datasheet: Available to LM_Sensors group, sent by Chunhao Huang + + +Author: Chunhao Huang @ Winbond + + +Module Parameters +----------------- + + + + +Description +----------- + +This driver implements support for the Winbond W83792AD/D. + +Detection of the chip can sometimes be foiled because it can be in +an internal state that allows no clean access. If you know the address +of the chip, use a 'force' parameter; this will put it into a more +well-behaved state first. + +The driver implements three temperature sensors, seven FAN rotation speed +sensors, nine voltage sensors, and the Smart Fan I(Thermal Cruise mode) +and Smart Fan II sensors. + +Temperatures are measured in degrees Celcius. There is one main temperature +sensor, and two other sensors. A alarm is triggered when the measured +temperture is higher than the Overtemperature or below the Hysteresis value. +This is NOT correct, I misunderstand the Hysteresis value when I implement +this driver. It will be fixed later: An alarm is triggered when the +Overtemperature Shutdown limit is crossed; it is triggered again as soon as +it drops below the Hysteresis value. + +FAN rotation speeds are reported in RPM (rotations per minute). An alarm is +triggered if the rotation speed has dropped below a programmable limit. FAN +readings can be divided by a programmable divider(1, 2, 4, 8, 16, 32, 64 or +128) to give the readings more range or accuracy. This driver modify the +fan divisor automatically to get the reasonable RPM rotation range. + +Voltage sensors (also known as IN sensors) report their values in volts. +An alarm is triggered if the voltage has crossed a programmable minimum +or maximum limit. + +All the alarm triggers is "software-level" instead of "hardware-level", +which means the alarm is triggered when "sensors" program find the measured +value exceed the limits, while in traditional chip drivers of lm_sensors, +alarm is triggered by the hardware interrupt status registers. +After a discusion with lm_sensors group, the "software-level" alarm method +to temperature may be modified in the future, but the alarm of voltage and +fan will not be modified, because W83792AD/D does NOT support it. + + +In addition to the alarms described above, there is a CHAS alarm on the +chips which triggers if your computer case is open. + +The chips only update values each 3 seconds; reading them more often will +do no harm, but will return 'old' values. + + +W83792D PROBLEMS +----------------- +Known problems: + - This driver is only for Winbond W83792D C version device, there + are also some motherboards with B version W83792D device. The + calculation method to in6-in7(measured value, limits) is a little + different between C and B version. C or B version can be identified + by CR[0x49h]. + - The function of vid and vrm has not been finished, because I'm NOT + very familiar with them. If someone can finish it, that's good, + - The function of chassis open detection need further test. + + +Chip Features +------------- + +Chip `w83792d' + LABEL LABEL CLASS COMPUTE CLASS ACCESS MAGNITUDE + in0 NONE NONE R 3 + in1 NONE NONE R 3 + in2 NONE NONE R 3 + in3 NONE NONE R 3 + in4 NONE NONE R 3 + in5 NONE NONE R 3 + in6 NONE NONE R 3 + in7 NONE NONE R 3 + in8 NONE NONE R 3 + in0_min in0 in0 RW 3 + in1_min in1 in1 RW 3 + in2_min in2 in2 RW 3 + in3_min in3 in3 RW 3 + in4_min in4 in4 RW 3 + in5_min in5 in5 RW 3 + in6_min in6 in6 RW 3 + in7_min in7 in7 RW 3 + in8_min in8 in8 RW 3 + in0_max in0 in0 RW 3 + in1_max in1 in1 RW 3 + in2_max in2 in2 RW 3 + in3_max in3 in3 RW 3 + in4_max in4 in4 RW 3 + in5_max in5 in5 RW 3 + in6_max in6 in6 RW 3 + in7_max in7 in7 RW 3 + in8_max in8 in8 RW 3 + fan1 NONE NONE R 0 + fan2 NONE NONE R 0 + fan3 NONE NONE R 0 + fan4 NONE NONE R 0 + fan5 NONE NONE R 0 + fan6 NONE NONE R 0 + fan7 NONE NONE R 0 + fan1_min fan1 NONE RW 0 + fan2_min fan2 NONE RW 0 + fan3_min fan3 NONE RW 0 + fan4_min fan4 NONE RW 0 + fan5_min fan5 NONE RW 0 + fan6_min fan6 NONE RW 0 + fan7_min fan7 NONE RW 0 + temp1 NONE NONE R 1 + temp1_hyst temp1 temp1 RW 1 + temp1_over temp1 temp1 RW 1 + temp2 NONE NONE R 1 + temp2_hyst temp2 temp2 RW 1 + temp2_over temp2 temp2 RW 1 + temp3 NONE NONE R 1 + temp3_hyst temp3 temp3 RW 1 + temp3_over temp3 temp3 RW 1 + fan1_div fan1 NONE RW 0 + fan2_div fan2 NONE RW 0 + fan3_div fan3 NONE RW 0 + fan4_div fan4 NONE RW 0 + fan5_div fan5 NONE RW 0 + fan6_div fan6 NONE RW 0 + fan7_div fan7 NONE RW 0 + + LABEL FEATURE SYMBOL SYSCTL FILE:NR + in0 SENSORS_W83792D_IN0 in0:3 + in1 SENSORS_W83792D_IN1 in1:3 + in2 SENSORS_W83792D_IN2 in2:3 + in3 SENSORS_W83792D_IN3 in3:3 + in4 SENSORS_W83792D_IN4 in4:3 + in5 SENSORS_W83792D_IN5 in5:3 + in6 SENSORS_W83792D_IN6 in6:3 + in7 SENSORS_W83792D_IN7 in7:3 + in8 SENSORS_W83792D_IN8 in8:3 + in0_min SENSORS_W83792D_IN0_MIN in0:1 + in1_min SENSORS_W83792D_IN1_MIN in1:1 + in2_min SENSORS_W83792D_IN2_MIN in2:1 + in3_min SENSORS_W83792D_IN3_MIN in3:1 + in4_min SENSORS_W83792D_IN4_MIN in4:1 + in5_min SENSORS_W83792D_IN5_MIN in5:1 + in6_min SENSORS_W83792D_IN6_MIN in6:1 + in7_min SENSORS_W83792D_IN7_MIN in7:1 + in8_min SENSORS_W83792D_IN8_MIN in8:1 + in0_max SENSORS_W83792D_IN0_MAX in0:2 + in1_max SENSORS_W83792D_IN1_MAX in1:2 + in2_max SENSORS_W83792D_IN2_MAX in2:2 + in3_max SENSORS_W83792D_IN3_MAX in3:2 + in4_max SENSORS_W83792D_IN4_MAX in4:2 + in5_max SENSORS_W83792D_IN5_MAX in5:2 + in6_max SENSORS_W83792D_IN6_MAX in6:2 + in7_max SENSORS_W83792D_IN7_MAX in7:2 + in8_max SENSORS_W83792D_IN8_MAX in8:2 + fan1 SENSORS_W83792D_FAN1 fan1:2 + fan2 SENSORS_W83792D_FAN2 fan2:2 + fan3 SENSORS_W83792D_FAN3 fan3:2 + fan4 SENSORS_W83792D_FAN4 fan4:2 + fan5 SENSORS_W83792D_FAN5 fan5:2 + fan6 SENSORS_W83792D_FAN6 fan6:2 + fan7 SENSORS_W83792D_FAN7 fan7:2 + fan1_min SENSORS_W83792D_FAN1_MIN fan1:1 + fan2_min SENSORS_W83792D_FAN2_MIN fan2:1 + fan3_min SENSORS_W83792D_FAN3_MIN fan3:1 + fan4_min SENSORS_W83792D_FAN4_MIN fan4:1 + fan5_min SENSORS_W83792D_FAN5_MIN fan5:1 + fan6_min SENSORS_W83792D_FAN6_MIN fan6:1 + fan7_min SENSORS_W83792D_FAN7_MIN fan7:1 + temp1 SENSORS_W83792D_TEMP1 temp1:3 + temp1_hyst SENSORS_W83792D_TEMP1_HYST temp1:2 + temp1_over SENSORS_W83792D_TEMP1_OVER temp1:1 + temp2 SENSORS_W83792D_TEMP2 temp2:3 + temp2_hyst SENSORS_W83792D_TEMP2_HYST temp2:2 + temp2_over SENSORS_W83792D_TEMP2_OVER temp2:1 + temp3 SENSORS_W83792D_TEMP3 temp3:3 + temp3_hyst SENSORS_W83792D_TEMP3_HYST temp3:2 + temp3_over SENSORS_W83792D_TEMP3_OVER temp3:1 + fan1_div SENSORS_W83792D_FAN1_DIV fan_div:1 + fan2_div SENSORS_W83792D_FAN2_DIV fan_div:2 + fan3_div SENSORS_W83792D_FAN3_DIV fan_div:3 + fan4_div SENSORS_W83792D_FAN4_DIV fan_div:4 + fan5_div SENSORS_W83792D_FAN5_DIV fan_div:5 + fan6_div SENSORS_W83792D_FAN6_DIV fan_div:6 + fan7_div SENSORS_W83792D_FAN7_DIV fan_div:7 + + + + +/PROC ENTRIES +------------- +Most are identical to the w83781d entries. See the w83781d documentation for +details. + +Most of the additional entries not in the w83781d are Winbond Smart Fan I/II: +Please read "7.7 FAN Speed Count and FAN Speed Control" of W83792AD/D datasheet +before you read the explanation to the /proc entries below. + + fan_cfg: indicates the fan speed control mode: 0 means PWM/DC mode, + 1 means Smart Fan I(Thermal Cruise) mode, 2 or 3 means Smart Fan II + mode. There are three items in this entry, the first one is the + configuration of Fan1, the rest may be deduced by analogy. + + pwm_flag: valid under PWM/DC mode, 1 means PWM mode, 0 means DC mode. + There are three items in this entry, the first one is PWM/DC mode + of Fan1, the rest may be deduced by analogy. + + thermal_cruise: valid under Smart Fan I mode, indicates the wanted + temperature. There are three items in this entry, the first one + is setting temperature of Fan1, the rest may be deduced by analogy. + + fan_tolerance: valid under Smart Fan I or Smart Fan II mode, indicates + the interval temperature. There are also three items in this entry. + + sf2_points_fan1: valid under Smart Fan II mode, there are four items in + this entry, indicates the Temp.[1-4] in "Figure 8. Smart Fan II + behavior" to Fan1. + + sf2_points_fan2: almost same as the above one, except that this entry + is for Fan2. + + sf2_points_fan3: almost same as the above one, except that this entry + is for Fan3. + + sf2_levels_fan1: valid under Smart Fan II mode, there are four items in + this entry, indicates the "Non-Stop Duty Cycle" and "Fan Duty Cycle + Level [1-3]" in "Figure 8. Smart Fan II behavior" to Fan1. The + first item "Non-Stop Duty Cycle" is read only in this driver, while + the other three items can be modified. + + sf2_levels_fan2: almost same as the above one, except that this entry + is for Fan2. + + sf2_levels_fan3: almost same as the above one, except that this entry + is for Fan3. + + +additional entries for chassis intrusion detection: + chassis: There are two items in this entry, the first one indicats the + chassis status, 1 means chassis intrusion detected, while 1 means + normal. The second item in this entry is used to clear the + detected chassis intrusion interrupt and reset the chassis status + to normal. + + +Author/Maintainer +----------------- +Original 792D support: Chunhao Huang(huang0@winbond.com.tw) +subclients register added by: Mark D. Studebaker(mdsxyz123@yahoo.com) +and modified by Jean Delvare .