Commit | Line | Data |
---|---|---|
7f15b664 RM |
1 | Kernel driver smsc47m1 |
2 | ====================== | |
3 | ||
4 | Supported chips: | |
5 | * SMSC LPC47B27x, LPC47M10x, LPC47M13x, LPC47M14x, LPC47M15x and LPC47M192 | |
6 | Addresses scanned: none, address read from Super I/O config space | |
7 | Prefix: 'smsc47m1' | |
8 | Datasheets: | |
9 | http://www.smsc.com/main/datasheets/47b27x.pdf | |
10 | http://www.smsc.com/main/datasheets/47m10x.pdf | |
11 | http://www.smsc.com/main/tools/discontinued/47m13x.pdf | |
12 | http://www.smsc.com/main/datasheets/47m14x.pdf | |
13 | http://www.smsc.com/main/tools/discontinued/47m15x.pdf | |
14 | http://www.smsc.com/main/datasheets/47m192.pdf | |
b890a07f JD |
15 | * SMSC LPC47M997 |
16 | Addresses scanned: none, address read from Super I/O config space | |
17 | Prefix: 'smsc47m1' | |
18 | Datasheet: none | |
7f15b664 RM |
19 | |
20 | Authors: | |
21 | Mark D. Studebaker <mdsxyz123@yahoo.com>, | |
22 | With assistance from Bruce Allen <ballen@uwm.edu>, and his | |
23 | fan.c program: http://www.lsc-group.phys.uwm.edu/%7Eballen/driver/ | |
24 | Gabriele Gorla <gorlik@yahoo.com>, | |
25 | Jean Delvare <khali@linux-fr.org> | |
26 | ||
27 | Description | |
28 | ----------- | |
29 | ||
30 | The Standard Microsystems Corporation (SMSC) 47M1xx Super I/O chips | |
31 | contain monitoring and PWM control circuitry for two fans. | |
32 | ||
33 | The 47M15x and 47M192 chips contain a full 'hardware monitoring block' | |
34 | in addition to the fan monitoring and control. The hardware monitoring | |
35 | block is not supported by the driver. | |
36 | ||
b890a07f JD |
37 | No documentation is available for the 47M997, but it has the same device |
38 | ID as the 47M15x and 47M192 chips and seems to be compatible. | |
39 | ||
7f15b664 RM |
40 | Fan rotation speeds are reported in RPM (rotations per minute). An alarm is |
41 | triggered if the rotation speed has dropped below a programmable limit. Fan | |
42 | readings can be divided by a programmable divider (1, 2, 4 or 8) to give | |
43 | the readings more range or accuracy. Not all RPM values can accurately be | |
44 | represented, so some rounding is done. With a divider of 2, the lowest | |
45 | representable value is around 2600 RPM. | |
46 | ||
47 | PWM values are from 0 to 255. | |
48 | ||
49 | If an alarm triggers, it will remain triggered until the hardware register | |
50 | is read at least once. This means that the cause for the alarm may | |
51 | already have disappeared! Note that in the current implementation, all | |
52 | hardware registers are read whenever any data is read (unless it is less | |
53 | than 1.5 seconds since the last update). This means that you can easily | |
54 | miss once-only alarms. | |
55 | ||
56 | ||
57 | ********************** | |
58 | The lm_sensors project gratefully acknowledges the support of | |
59 | Intel in the development of this driver. |