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