Commit | Line | Data |
---|---|---|
7f15b664 M |
1 | Kernel driver lm80 |
2 | ================== | |
3 | ||
4 | Supported chips: | |
b04f2f7d | 5 | |
7f15b664 | 6 | * National Semiconductor LM80 |
b04f2f7d | 7 | |
7f15b664 | 8 | Prefix: 'lm80' |
b04f2f7d | 9 | |
7f15b664 | 10 | Addresses scanned: I2C 0x28 - 0x2f |
b04f2f7d | 11 | |
7f15b664 | 12 | Datasheet: Publicly available at the National Semiconductor website |
b04f2f7d MCC |
13 | |
14 | http://www.national.com/ | |
15 | ||
9908ad4c | 16 | * National Semiconductor LM96080 |
b04f2f7d | 17 | |
9908ad4c | 18 | Prefix: 'lm96080' |
b04f2f7d | 19 | |
9908ad4c | 20 | Addresses scanned: I2C 0x28 - 0x2f |
b04f2f7d | 21 | |
9908ad4c | 22 | Datasheet: Publicly available at the National Semiconductor website |
b04f2f7d MCC |
23 | |
24 | http://www.national.com/ | |
25 | ||
7f15b664 M |
26 | |
27 | Authors: | |
b04f2f7d MCC |
28 | - Frodo Looijaard <frodol@dds.nl>, |
29 | - Philip Edelbrock <phil@netroedge.com> | |
7f15b664 M |
30 | |
31 | Description | |
32 | ----------- | |
33 | ||
34 | This driver implements support for the National Semiconductor LM80. | |
35 | It is described as a 'Serial Interface ACPI-Compatible Microprocessor | |
9908ad4c JD |
36 | System Hardware Monitor'. The LM96080 is a more recent incarnation, |
37 | it is pin and register compatible, with a few additional features not | |
38 | yet supported by the driver. | |
7f15b664 M |
39 | |
40 | The LM80 implements one temperature sensor, two fan rotation speed sensors, | |
41 | seven voltage sensors, alarms, and some miscellaneous stuff. | |
42 | ||
43 | Temperatures are measured in degrees Celsius. There are two sets of limits | |
44 | which operate independently. When the HOT Temperature Limit is crossed, | |
45 | this will cause an alarm that will be reasserted until the temperature | |
46 | drops below the HOT Hysteresis. The Overtemperature Shutdown (OS) limits | |
47 | should work in the same way (but this must be checked; the datasheet | |
48 | is unclear about this). Measurements are guaranteed between -55 and | |
49 | +125 degrees. The current temperature measurement has a resolution of | |
50 | 0.0625 degrees; the limits have a resolution of 1 degree. | |
51 | ||
52 | Fan rotation speeds are reported in RPM (rotations per minute). An alarm is | |
53 | triggered if the rotation speed has dropped below a programmable limit. Fan | |
54 | readings can be divided by a programmable divider (1, 2, 4 or 8) to give | |
55 | the readings more range or accuracy. Not all RPM values can accurately be | |
56 | represented, so some rounding is done. With a divider of 2, the lowest | |
57 | representable value is around 2600 RPM. | |
58 | ||
59 | Voltage sensors (also known as IN sensors) report their values in volts. | |
60 | An alarm is triggered if the voltage has crossed a programmable minimum | |
61 | or maximum limit. Note that minimum in this case always means 'closest to | |
62 | zero'; this is important for negative voltage measurements. All voltage | |
63 | inputs can measure voltages between 0 and 2.55 volts, with a resolution | |
64 | of 0.01 volt. | |
65 | ||
66 | If an alarm triggers, it will remain triggered until the hardware register | |
67 | is read at least once. This means that the cause for the alarm may | |
68 | already have disappeared! Note that in the current implementation, all | |
69 | hardware registers are read whenever any data is read (unless it is less | |
70 | than 2.0 seconds since the last update). This means that you can easily | |
71 | miss once-only alarms. | |
72 | ||
73 | The LM80 only updates its values each 1.5 seconds; reading it more often | |
74 | will do no harm, but will return 'old' values. |