7 Addresses scanned: I2C 0x2c - 0x2f
8 Datasheet: http://www.winbond.com.tw
10 Author: Shane Huang (Winbond)
18 Use 'init=0' to bypass initializing the chip.
19 Try this if your computer crashes when you load the module.
21 * force_subclients=bus,caddr,saddr,saddr
22 This is used to force the i2c addresses for subclients of
23 a certain chip. Example usage is `force_subclients=0,0x2f,0x4a,0x4b'
24 to force the subclients of chip 0x2f on bus 0 to i2c addresses
31 This driver implements support for the Winbond W83792AD/D.
33 Detection of the chip can sometimes be foiled because it can be in an
34 internal state that allows no clean access (Bank with ID register is not
35 currently selected). If you know the address of the chip, use a 'force'
36 parameter; this will put it into a more well-behaved state first.
38 The driver implements three temperature sensors, seven fan rotation speed
39 sensors, nine voltage sensors, and two automatic fan regulation
40 strategies called: Smart Fan I (Thermal Cruise mode) and Smart Fan II.
41 Automatic fan control mode is possible only for fan1-fan3. Fan4-fan7 can run
42 synchronized with selected fan (fan1-fan3). This functionality and manual PWM
43 control for fan4-fan7 is not yet implemented.
45 Temperatures are measured in degrees Celsius and measurement resolution is 1
46 degC for temp1 and 0.5 degC for temp2 and temp3. An alarm is triggered when
47 the temperature gets higher than the Overtemperature Shutdown value; it stays
48 on until the temperature falls below the Hysteresis value.
50 Fan rotation speeds are reported in RPM (rotations per minute). An alarm is
51 triggered if the rotation speed has dropped below a programmable limit. Fan
52 readings can be divided by a programmable divider (1, 2, 4, 8, 16, 32, 64 or
53 128) to give the readings more range or accuracy.
55 Voltage sensors (also known as IN sensors) report their values in millivolts.
56 An alarm is triggered if the voltage has crossed a programmable minimum
59 Alarms are provided as output from "realtime status register". Following bits
88 Tart will be asserted while target temperature cannot be achieved after 3 minutes
89 of full speed rotation of corresponding fan.
91 In addition to the alarms described above, there is a CHAS alarm on the chips
92 which triggers if your computer case is open (This one is latched, contrary
95 The chips only update values each 3 seconds; reading them more often will
96 do no harm, but will return 'old' values.
102 - This driver is only for Winbond W83792D C version device, there
103 are also some motherboards with B version W83792D device. The
104 calculation method to in6-in7(measured value, limits) is a little
105 different between C and B version. C or B version can be identified
107 - The function of vid and vrm has not been finished, because I'm NOT
108 very familiar with them. Adding support is welcome.
109 - The function of chassis open detection needs more tests.
110 - If you have ASUS server board and chip was not found: Then you will
111 need to upgrade to latest (or beta) BIOS. If it does not help please
120 Works as expected. You just need to specify desired PWM/DC value (fan speed)
121 in appropriate pwm# file.
126 In this mode, W83792D provides the Smart Fan system to automatically control
127 fan speed to keep the temperatures of CPU and the system within specific
128 range. At first a wanted temperature and interval must be set. This is done
129 via thermal_cruise# file. The tolerance# file serves to create T +- tolerance
130 interval. The fan speed will be lowered as long as the current temperature
131 remains below the thermal_cruise# +- tolerance# value. Once the temperature
132 exceeds the high limit (T+tolerance), the fan will be turned on with a
133 specific speed set by pwm# and automatically controlled its PWM duty cycle
134 with the temperature varying. Three conditions may occur:
136 (1) If the temperature still exceeds the high limit, PWM duty
137 cycle will increase slowly.
139 (2) If the temperature goes below the high limit, but still above the low
140 limit (T-tolerance), the fan speed will be fixed at the current speed because
141 the temperature is in the target range.
143 (3) If the temperature goes below the low limit, PWM duty cycle will decrease
144 slowly to 0 or a preset stop value until the temperature exceeds the low
145 limit. (The preset stop value handling is not yet implemented in driver)
150 W83792D also provides a special mode for fan. Four temperature points are
151 available. When related temperature sensors detects the temperature in preset
152 temperature region (sf2_point@_fan# +- tolerance#) it will cause fans to run
153 on programmed value from sf2_level@_fan#. You need to set four temperatures
160 pwm[1-3] - this file stores PWM duty cycle or DC value (fan speed) in range:
161 0 (stop) to 255 (full)
162 pwm[1-3]_enable - this file controls mode of fan/temperature control:
167 pwm[1-3]_mode - Select PWM of DC mode
170 thermal_cruise[1-3] - Selects the desired temperature for cruise (degC)
171 tolerance[1-3] - Value in degrees of Celsius (degC) for +- T
172 sf2_point[1-4]_fan[1-3] - four temperature points for each fan for Smart Fan II
173 sf2_level[1-3]_fan[1-3] - three PWM/DC levels for each fan for Smart Fan II