w83792d.rst 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199
  1. Kernel driver w83792d
  2. =====================
  3. Supported chips:
  4. * Winbond W83792D
  5. Prefix: 'w83792d'
  6. Addresses scanned: I2C 0x2c - 0x2f
  7. Datasheet: http://www.winbond.com.tw
  8. Author: Shane Huang (Winbond)
  9. Updated: Roger Lucas
  10. Module Parameters
  11. -----------------
  12. * init int
  13. (default 1)
  14. Use 'init=0' to bypass initializing the chip.
  15. Try this if your computer crashes when you load the module.
  16. * force_subclients=bus,caddr,saddr,saddr
  17. This is used to force the i2c addresses for subclients of
  18. a certain chip. Example usage is `force_subclients=0,0x2f,0x4a,0x4b`
  19. to force the subclients of chip 0x2f on bus 0 to i2c addresses
  20. 0x4a and 0x4b.
  21. Description
  22. -----------
  23. This driver implements support for the Winbond W83792AD/D.
  24. Detection of the chip can sometimes be foiled because it can be in an
  25. internal state that allows no clean access (Bank with ID register is not
  26. currently selected). If you know the address of the chip, use a 'force'
  27. parameter; this will put it into a more well-behaved state first.
  28. The driver implements three temperature sensors, seven fan rotation speed
  29. sensors, nine voltage sensors, and two automatic fan regulation
  30. strategies called: Smart Fan I (Thermal Cruise mode) and Smart Fan II.
  31. The driver also implements up to seven fan control outputs: pwm1-7. Pwm1-7
  32. can be configured to PWM output or Analogue DC output via their associated
  33. pwmX_mode. Outputs pwm4 through pwm7 may or may not be present depending on
  34. how the W83792AD/D was configured by the BIOS.
  35. Automatic fan control mode is possible only for fan1-fan3.
  36. For all pwmX outputs, a value of 0 means minimum fan speed and a value of
  37. 255 means maximum fan speed.
  38. Temperatures are measured in degrees Celsius and measurement resolution is 1
  39. degC for temp1 and 0.5 degC for temp2 and temp3. An alarm is triggered when
  40. the temperature gets higher than the Overtemperature Shutdown value; it stays
  41. on until the temperature falls below the Hysteresis value.
  42. Fan rotation speeds are reported in RPM (rotations per minute). An alarm is
  43. triggered if the rotation speed has dropped below a programmable limit. Fan
  44. readings can be divided by a programmable divider (1, 2, 4, 8, 16, 32, 64 or
  45. 128) to give the readings more range or accuracy.
  46. Voltage sensors (also known as IN sensors) report their values in millivolts.
  47. An alarm is triggered if the voltage has crossed a programmable minimum
  48. or maximum limit.
  49. Alarms are provided as output from "realtime status register". Following bits
  50. are defined:
  51. ==== ==========
  52. bit alarm on
  53. ==== ==========
  54. 0 in0
  55. 1 in1
  56. 2 temp1
  57. 3 temp2
  58. 4 temp3
  59. 5 fan1
  60. 6 fan2
  61. 7 fan3
  62. 8 in2
  63. 9 in3
  64. 10 in4
  65. 11 in5
  66. 12 in6
  67. 13 VID change
  68. 14 chassis
  69. 15 fan7
  70. 16 tart1
  71. 17 tart2
  72. 18 tart3
  73. 19 in7
  74. 20 in8
  75. 21 fan4
  76. 22 fan5
  77. 23 fan6
  78. ==== ==========
  79. Tart will be asserted while target temperature cannot be achieved after 3 minutes
  80. of full speed rotation of corresponding fan.
  81. In addition to the alarms described above, there is a CHAS alarm on the chips
  82. which triggers if your computer case is open (This one is latched, contrary
  83. to realtime alarms).
  84. The chips only update values each 3 seconds; reading them more often will
  85. do no harm, but will return 'old' values.
  86. W83792D PROBLEMS
  87. ----------------
  88. Known problems:
  89. - This driver is only for Winbond W83792D C version device, there
  90. are also some motherboards with B version W83792D device. The
  91. calculation method to in6-in7(measured value, limits) is a little
  92. different between C and B version. C or B version can be identified
  93. by CR[0x49h].
  94. - The function of vid and vrm has not been finished, because I'm NOT
  95. very familiar with them. Adding support is welcome.
  96. - The function of chassis open detection needs more tests.
  97. - If you have ASUS server board and chip was not found: Then you will
  98. need to upgrade to latest (or beta) BIOS. If it does not help please
  99. contact us.
  100. Fan control
  101. -----------
  102. Manual mode
  103. -----------
  104. Works as expected. You just need to specify desired PWM/DC value (fan speed)
  105. in appropriate pwm# file.
  106. Thermal cruise
  107. --------------
  108. In this mode, W83792D provides the Smart Fan system to automatically control
  109. fan speed to keep the temperatures of CPU and the system within specific
  110. range. At first a wanted temperature and interval must be set. This is done
  111. via thermal_cruise# file. The tolerance# file serves to create T +- tolerance
  112. interval. The fan speed will be lowered as long as the current temperature
  113. remains below the thermal_cruise# +- tolerance# value. Once the temperature
  114. exceeds the high limit (T+tolerance), the fan will be turned on with a
  115. specific speed set by pwm# and automatically controlled its PWM duty cycle
  116. with the temperature varying. Three conditions may occur:
  117. (1) If the temperature still exceeds the high limit, PWM duty
  118. cycle will increase slowly.
  119. (2) If the temperature goes below the high limit, but still above the low
  120. limit (T-tolerance), the fan speed will be fixed at the current speed because
  121. the temperature is in the target range.
  122. (3) If the temperature goes below the low limit, PWM duty cycle will decrease
  123. slowly to 0 or a preset stop value until the temperature exceeds the low
  124. limit. (The preset stop value handling is not yet implemented in driver)
  125. Smart Fan II
  126. ------------
  127. W83792D also provides a special mode for fan. Four temperature points are
  128. available. When related temperature sensors detects the temperature in preset
  129. temperature region (sf2_point@_fan# +- tolerance#) it will cause fans to run
  130. on programmed value from sf2_level@_fan#. You need to set four temperatures
  131. for each fan.
  132. /sys files
  133. ----------
  134. pwm[1-7]
  135. - this file stores PWM duty cycle or DC value (fan speed) in range:
  136. 0 (stop) to 255 (full)
  137. pwm[1-3]_enable
  138. - this file controls mode of fan/temperature control:
  139. * 0 Disabled
  140. * 1 Manual mode
  141. * 2 Smart Fan II
  142. * 3 Thermal Cruise
  143. pwm[1-7]_mode
  144. - Select PWM or DC mode
  145. * 0 DC
  146. * 1 PWM
  147. thermal_cruise[1-3]
  148. - Selects the desired temperature for cruise (degC)
  149. tolerance[1-3]
  150. - Value in degrees of Celsius (degC) for +- T
  151. sf2_point[1-4]_fan[1-3]
  152. - four temperature points for each fan for Smart Fan II
  153. sf2_level[1-3]_fan[1-3]
  154. - three PWM/DC levels for each fan for Smart Fan II