1Kernel driver asb100
2====================
3
4Supported Chips:
5  * Asus ASB100 and ASB100-A "Bach"
6    Prefix: 'asb100'
7    Addresses scanned: I2C 0x2d
8    Datasheet: none released
9
10Author: Mark M. Hoffman <mhoffman@lightlink.com>
11
12Description
13-----------
14
15This driver implements support for the Asus ASB100 and ASB100-A "Bach".
16These are custom ASICs available only on Asus mainboards. Asus refuses to
17supply a datasheet for these chips. Thanks go to many people who helped
18investigate their hardware, including:
19
20Vitaly V. Bursov
21Alexander van Kaam (author of MBM for Windows)
22Bertrik Sikken
23
24The ASB100 implements seven voltage sensors, three fan rotation speed
25sensors, four temperature sensors, VID lines and alarms. In addition to
26these, the ASB100-A also implements a single PWM controller for fans 2 and
273 (i.e. one setting controls both.) If you have a plain ASB100, the PWM
28controller will simply not work (or maybe it will for you... it doesn't for
29me).
30
31Temperatures are measured and reported in degrees Celsius.
32
33Fan speeds are reported in RPM (rotations per minute). An alarm is
34triggered if the rotation speed has dropped below a programmable limit.
35
36Voltage sensors (also known as IN sensors) report values in volts.
37
38The VID lines encode the core voltage value: the voltage level your
39processor should work with. This is hardcoded by the mainboard and/or
40processor itself. It is a value in volts.
41
42Alarms: (TODO question marks indicate may or may not work)
43
440x0001 => in0 (?)
450x0002 => in1 (?)
460x0004 => in2
470x0008 => in3
480x0010 => temp1 (1)
490x0020 => temp2
500x0040 => fan1
510x0080 => fan2
520x0100 => in4
530x0200 => in5 (?) (2)
540x0400 => in6 (?) (2)
550x0800 => fan3
560x1000 => chassis switch
570x2000 => temp3
58
59Alarm Notes:
60
61(1) This alarm will only trigger if the hysteresis value is 127C.
62I.e. it behaves the same as w83781d.
63
64(2) The min and max registers for these values appear to
65be read-only or otherwise stuck at 0x00.
66
67TODO:
68* Experiment with fan divisors > 8.
69* Experiment with temp. sensor types.
70* Are there really 13 voltage inputs? Probably not...
71* Cleanups, no doubt...
72
73