forked from luck/tmp_suning_uos_patched
c7fa373796
It happens that the Analog Devices ADM1024 is fully compatible with the National Semiconductor LM87, so support for the former can easily be added to the lm87 driver. Signed-off-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Mark M. Hoffman <mhoffman@lightlink.com>
79 lines
3.1 KiB
Plaintext
79 lines
3.1 KiB
Plaintext
Kernel driver lm87
|
|
==================
|
|
|
|
Supported chips:
|
|
* National Semiconductor LM87
|
|
Prefix: 'lm87'
|
|
Addresses scanned: I2C 0x2c - 0x2e
|
|
Datasheet: http://www.national.com/pf/LM/LM87.html
|
|
* Analog Devices ADM1024
|
|
Prefix: 'adm1024'
|
|
Addresses scanned: I2C 0x2c - 0x2e
|
|
Datasheet: http://www.analog.com/en/prod/0,2877,ADM1024,00.html
|
|
|
|
Authors:
|
|
Frodo Looijaard <frodol@dds.nl>,
|
|
Philip Edelbrock <phil@netroedge.com>,
|
|
Mark Studebaker <mdsxyz123@yahoo.com>,
|
|
Stephen Rousset <stephen.rousset@rocketlogix.com>,
|
|
Dan Eaton <dan.eaton@rocketlogix.com>,
|
|
Jean Delvare <khali@linux-fr.org>,
|
|
Original 2.6 port Jeff Oliver
|
|
|
|
Description
|
|
-----------
|
|
|
|
This driver implements support for the National Semiconductor LM87
|
|
and the Analog Devices ADM1024.
|
|
|
|
The LM87 implements up to three temperature sensors, up to two fan
|
|
rotation speed sensors, up to seven voltage sensors, alarms, and some
|
|
miscellaneous stuff. The ADM1024 is fully compatible.
|
|
|
|
Temperatures are measured in degrees Celsius. Each input has a high
|
|
and low alarm settings. A high limit produces an alarm when the value
|
|
goes above it, and an alarm is also produced when the value goes below
|
|
the low limit.
|
|
|
|
Fan rotation speeds are reported in RPM (rotations per minute). An alarm is
|
|
triggered if the rotation speed has dropped below a programmable limit. Fan
|
|
readings can be divided by a programmable divider (1, 2, 4 or 8) to give
|
|
the readings more range or accuracy. Not all RPM values can accurately be
|
|
represented, so some rounding is done. With a divider of 2, the lowest
|
|
representable value is around 2600 RPM.
|
|
|
|
Voltage sensors (also known as IN sensors) report their values in
|
|
volts. An alarm is triggered if the voltage has crossed a programmable
|
|
minimum or maximum limit. Note that minimum in this case always means
|
|
'closest to zero'; this is important for negative voltage measurements.
|
|
|
|
If an alarm triggers, it will remain triggered until the hardware register
|
|
is read at least once. This means that the cause for the alarm may
|
|
already have disappeared! Note that in the current implementation, all
|
|
hardware registers are read whenever any data is read (unless it is less
|
|
than 1.0 seconds since the last update). This means that you can easily
|
|
miss once-only alarms.
|
|
|
|
The lm87 driver only updates its values each 1.0 seconds; reading it more
|
|
often will do no harm, but will return 'old' values.
|
|
|
|
|
|
Hardware Configurations
|
|
-----------------------
|
|
|
|
The LM87 has four pins which can serve one of two possible functions,
|
|
depending on the hardware configuration.
|
|
|
|
Some functions share pins, so not all functions are available at the same
|
|
time. Which are depends on the hardware setup. This driver assumes that
|
|
the BIOS configured the chip correctly. In that respect, it differs from
|
|
the original driver (from lm_sensors for Linux 2.4), which would force the
|
|
LM87 to an arbitrary, compile-time chosen mode, regardless of the actual
|
|
chipset wiring.
|
|
|
|
For reference, here is the list of exclusive functions:
|
|
- in0+in5 (default) or temp3
|
|
- fan1 (default) or in6
|
|
- fan2 (default) or in7
|
|
- VID lines (default) or IRQ lines (not handled by this driver)
|