1 Kernel driver w83793 1 Kernel driver w83793 2 ==================== 2 ==================== 3 3 4 Supported chips: 4 Supported chips: 5 5 6 * Winbond W83793G/W83793R 6 * Winbond W83793G/W83793R 7 7 8 Prefix: 'w83793' 8 Prefix: 'w83793' 9 9 10 Addresses scanned: I2C 0x2c - 0x2f 10 Addresses scanned: I2C 0x2c - 0x2f 11 11 12 Datasheet: Still not published 12 Datasheet: Still not published 13 13 14 Authors: 14 Authors: 15 - Yuan Mu (Winbond Electronics) 15 - Yuan Mu (Winbond Electronics) 16 - Rudolf Marek <r.marek@assembler.cz> 16 - Rudolf Marek <r.marek@assembler.cz> 17 17 18 18 19 Module parameters 19 Module parameters 20 ----------------- 20 ----------------- 21 21 22 * reset int 22 * reset int 23 (default 0) 23 (default 0) 24 24 25 This parameter is not recommended, it will 25 This parameter is not recommended, it will lose motherboard specific 26 settings. Use 'reset=1' to reset the chip 26 settings. Use 'reset=1' to reset the chip when loading this module. 27 27 28 * force_subclients=bus,caddr,saddr1,saddr2 28 * force_subclients=bus,caddr,saddr1,saddr2 29 This is used to force the i2c addresses fo 29 This is used to force the i2c addresses for subclients of 30 a certain chip. Typical usage is `force_su 30 a certain chip. Typical usage is `force_subclients=0,0x2f,0x4a,0x4b` 31 to force the subclients of chip 0x2f on bu 31 to force the subclients of chip 0x2f on bus 0 to i2c addresses 32 0x4a and 0x4b. 32 0x4a and 0x4b. 33 33 34 34 35 Description 35 Description 36 ----------- 36 ----------- 37 37 38 This driver implements support for Winbond W83 38 This driver implements support for Winbond W83793G/W83793R chips. 39 39 40 * Exported features 40 * Exported features 41 This driver exports 10 voltage sensors, up 41 This driver exports 10 voltage sensors, up to 12 fan tachometer inputs, 42 6 remote temperatures, up to 8 sets of PWM 42 6 remote temperatures, up to 8 sets of PWM fan controls, SmartFan 43 (automatic fan speed control) on all tempe 43 (automatic fan speed control) on all temperature/PWM combinations, 2 44 sets of 6-pin CPU VID input. 44 sets of 6-pin CPU VID input. 45 45 46 * Sensor resolutions 46 * Sensor resolutions 47 If your motherboard maker used the referen 47 If your motherboard maker used the reference design, the resolution of 48 voltage0-2 is 2mV, resolution of voltage3/ 48 voltage0-2 is 2mV, resolution of voltage3/4/5 is 16mV, 8mV for voltage6, 49 24mV for voltage7/8. Temp1-4 have a 0.25 d 49 24mV for voltage7/8. Temp1-4 have a 0.25 degree Celsius resolution, 50 temp5-6 have a 1 degree Celsiis resolution 50 temp5-6 have a 1 degree Celsiis resolution. 51 51 52 * Temperature sensor types 52 * Temperature sensor types 53 Temp1-4 have 2 possible types. It can be r 53 Temp1-4 have 2 possible types. It can be read from (and written to) 54 temp[1-4]_type. 54 temp[1-4]_type. 55 55 56 - If the value is 3, it starts monitoring 56 - If the value is 3, it starts monitoring using a remote termal diode 57 (default). 57 (default). 58 - If the value is 6, it starts monitoring 58 - If the value is 6, it starts monitoring using the temperature sensor 59 in Intel CPU and get result by PECI. 59 in Intel CPU and get result by PECI. 60 60 61 Temp5-6 can be connected to external therm 61 Temp5-6 can be connected to external thermistors (value of 62 temp[5-6]_type is 4). 62 temp[5-6]_type is 4). 63 63 64 * Alarm mechanism 64 * Alarm mechanism 65 For voltage sensors, an alarm triggers if 65 For voltage sensors, an alarm triggers if the measured value is below 66 the low voltage limit or over the high vol 66 the low voltage limit or over the high voltage limit. 67 For temperature sensors, an alarm triggers 67 For temperature sensors, an alarm triggers if the measured value goes 68 above the high temperature limit, and wear 68 above the high temperature limit, and wears off only after the measured 69 value drops below the hysteresis value. 69 value drops below the hysteresis value. 70 For fan sensors, an alarm triggers if the 70 For fan sensors, an alarm triggers if the measured value is below the 71 low speed limit. 71 low speed limit. 72 72 73 * SmartFan/PWM control 73 * SmartFan/PWM control 74 If you want to set a pwm fan to manual mod 74 If you want to set a pwm fan to manual mode, you just need to make sure it 75 is not controlled by any temp channel, for 75 is not controlled by any temp channel, for example, you want to set fan1 76 to manual mode, you need to check the valu 76 to manual mode, you need to check the value of temp[1-6]_fan_map, make 77 sure bit 0 is cleared in the 6 values. And 77 sure bit 0 is cleared in the 6 values. And then set the pwm1 value to 78 control the fan. 78 control the fan. 79 79 80 Each temperature channel can control all t 80 Each temperature channel can control all the 8 PWM outputs (by setting the 81 corresponding bit in tempX_fan_map), you c 81 corresponding bit in tempX_fan_map), you can set the temperature channel 82 mode using temp[1-6]_pwm_enable, 2 is Ther 82 mode using temp[1-6]_pwm_enable, 2 is Thermal Cruise mode and 3 83 is the SmartFanII mode. Temperature channe 83 is the SmartFanII mode. Temperature channels will try to speed up or 84 slow down all controlled fans, this means 84 slow down all controlled fans, this means one fan can receive different 85 PWM value requests from different temperat 85 PWM value requests from different temperature channels, but the chip 86 will always pick the safest (max) PWM valu 86 will always pick the safest (max) PWM value for each fan. 87 87 88 In Thermal Cruise mode, the chip attempts 88 In Thermal Cruise mode, the chip attempts to keep the temperature at a 89 predefined value, within a tolerance margi 89 predefined value, within a tolerance margin. So if tempX_input > 90 thermal_cruiseX + toleranceX, the chip wil 90 thermal_cruiseX + toleranceX, the chip will increase the PWM value, 91 if tempX_input < thermal_cruiseX - toleran 91 if tempX_input < thermal_cruiseX - toleranceX, the chip will decrease 92 the PWM value. If the temperature is withi 92 the PWM value. If the temperature is within the tolerance range, the PWM 93 value is left unchanged. 93 value is left unchanged. 94 94 95 SmartFanII works differently, you have to 95 SmartFanII works differently, you have to define up to 7 PWM, temperature 96 trip points, defining a PWM/temperature cu 96 trip points, defining a PWM/temperature curve which the chip will follow. 97 While not fundamentally different from the 97 While not fundamentally different from the Thermal Cruise mode, the 98 implementation is quite different, giving 98 implementation is quite different, giving you a finer-grained control. 99 99 100 * Chassis 100 * Chassis 101 If the case open alarm triggers, it will s 101 If the case open alarm triggers, it will stay in this state unless cleared 102 by writing 0 to the sysfs file "intrusion0 102 by writing 0 to the sysfs file "intrusion0_alarm". 103 103 104 * VID and VRM 104 * VID and VRM 105 The VRM version is detected automatically, 105 The VRM version is detected automatically, don't modify the it unless you 106 *do* know the cpu VRM version and it's not 106 *do* know the cpu VRM version and it's not properly detected. 107 107 108 108 109 Notes 109 Notes 110 ----- 110 ----- 111 111 112 Only Fan1-5 and PWM1-3 are guaranteed to alw 112 Only Fan1-5 and PWM1-3 are guaranteed to always exist, other fan inputs and 113 PWM outputs may or may not exist depending o 113 PWM outputs may or may not exist depending on the chip pin configuration.
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.