Kernel driver `lm83.o'
=====================

Status: Complete and lightly tested

Supported chips: 
  * National Semiconductor LM83
    Prefix: 'lm83'
    Addresses scanned: I2C 0x18 - 0x1a, 0x29 - 0x2b, 0x4c - 0x4e
    Datasheet: Publicly available at the National Semiconductor website
               http://www.national.com/pf/LM/LM83.html
  * National Semiconductor LM82
    Addresses scanned: I2C 0x18 - 0x1a, 0x29 - 0x2b, 0x4c - 0x4e
    Datasheet: Publicly available at the National Semiconductor website
               http://www.national.com/pf/LM/LM82.html


Author: Jean Delvare <khali@linux-fr.org>

License: GPL


Module Parameters
-----------------

* force: short array (min = 1, max = 48)
  List of adapter,address pairs to boldly assume to be present
* force_lm83: short array (min = 1, max = 48)
  List of adapter,address pairs which are unquestionably assumed to contain
  a `lm83' chip
* probe: short array (min = 1, max = 48)
  List of adapter,address pairs to scan additionally
* probe_range: short array (min = 1, max = 48)
  List of adapter,start-addr,end-addr triples to scan additionally
* ignore: short array (min = 1, max = 48)
  List of adapter,address pairs not to scan
* ignore_range: short array (min = 1, max = 48)
  List of adapter,start-addr,end-addr triples not to scan


Description
-----------

The LM83 is a digital temperature sensor. It senses its own temperature as
well as the temperature of up to three external diodes. The LM82 is
a stripped down version of the LM83 that only supports one external diode.
Both are compatible with many other devices such as the LM84 and all
other ADM1021 clones. The main difference between the LM83 and the LM84
in that the later can only sense the temperature of one external diode.

Using the adm1021 driver for a LM83 should work, but only two temperatures
will be reported instead of four.

The LM83 is only found on a handful of motherboards. Both a confirmed
list and an unconfirmed list follow. If you can confirm or infirm the
fact that any of these motherboards do actually have an LM83, please
contact us. Note that the LM90 can easily be misdetected as a LM83.

Confirmed motherboards:
    SBS         P014
    SBS         PSL09

Unconfirmed motherboards:
    Gigabyte    GA-8IK1100
    Iwill       MPX2
    Soltek      SL-75DRV5

The LM82 is confirmed to have been found on most AMD Geode reference
designs and test platforms.

The driver has been successfully tested by Magnus Forsström, who I'd
like to thank here. More testers will be of course welcome.

The fact that the LM83 is only scarcely used can be easily explained.
Most motherboards come with more than just temperature sensors for
health monitoring. They also have voltage and fan rotation speed
sensors. This means that temperature-only chips are usually used as
secondary chips coupled with another chip such as an IT8705F or similar
chip, which provides more features. Since systems usually need three
temperature sensors (motherboard, processor, power supply) and primary
chips provide some temperature sensors, the secondary chip, if needed,
won't have to handle more than two temperatures. Thus, ADM1021 clones
are sufficent, and there is no need for a four temperatures sensor
chip such as the LM83. The only case where using an LM83 would make
sense is on SMP systems, such as the above-mentioned Iwill MPX2,
because you want an additional temperature sensor for each additional
CPU.

On the SBS P014, this is different, since the LM83 is the only hardware
monitoring chipset. One temperature sensor is used for the motherboard
(actually measuring the LM83's own temperature), one is used for the
CPU. The two other sensors must be used to measure the temperature of
two other points of the motherboard. We suspect these points to be the
north and south bridges, but this couldn't be confirmed.

All temperature values are given in degrees Celsius. Local temperature
is given within a range of 0 to +85 degrees. Remote temperatures are
given within a range of 0 to +125 degrees. Resolution is 1.0 degree,
accuracy is guaranteed to 3.0 degrees (see the datasheet for more
details).

Each sensor has its own high limit, but the critical limit is common to
all four sensors. There is no hysteresis mechanism as found on most
recent temperature sensors.

The lm83 driver will not update its values more frequently than every
other second; reading them more often will do no harm, but will return
'old' values.


Chip Features
-------------

Chip 'lm83'

LABEL                 LABEL CLASS           COMPUTE CLASS          MODE  MAGN
temp1                 -                     -                       R-     0
temp1_high            temp1                 temp1                   RW     0
temp2                 -                     -                       R-     0
temp2_high            temp2                 temp2                   RW     0
temp3                 -                     -                       R-     0
temp3_high            temp3                 temp3                   RW     0
temp4                 -                     -                       R-     0
temp4_high            temp4                 temp4                   RW     0
tcrit                 -                     -                       RW     0
alarms                -                     -                       R-     0

LABEL                 FEATURE SYMBOL                              SYSCTL FILE:N
temp1                 SENSORS_LM83_LOCAL_TEMP                           temp1:2
temp1_high            SENSORS_LM83_LOCAL_HIGH                           temp1:1
temp2                 SENSORS_LM83_REMOTE1_TEMP                         temp2:2
temp2_high            SENSORS_LM83_REMOTE1_HIGH                         temp2:1
temp3                 SENSORS_LM83_REMOTE2_TEMP                         temp3:2
temp3_high            SENSORS_LM83_REMOTE2_HIGH                         temp3:1
temp4                 SENSORS_LM83_REMOTE3_TEMP                         temp4:2
temp4_high            SENSORS_LM83_REMOTE3_HIGH                         temp4:1
tcrit                 SENSORS_LM83_TCRIT                                tcrit:1
alarms                SENSORS_LM83_ALARMS                              alarms:1

Chip 'lm82'

LABEL                 LABEL CLASS           COMPUTE CLASS          MODE  MAGN
temp1                 -                     -                       R-     0
temp1_high            temp1                 temp1                   RW     0
temp3                 -                     -                       R-     0
temp3_high            temp3                 temp3                   RW     0
tcrit                 -                     -                       RW     0
alarms                -                     -                       R-     0

LABEL                 FEATURE SYMBOL                              SYSCTL FILE:N
temp1                 SENSORS_LM83_LOCAL_TEMP                           temp1:2
temp1_high            SENSORS_LM83_LOCAL_HIGH                           temp1:1
temp3                 SENSORS_LM83_REMOTE2_TEMP                         temp3:2
temp3_high            SENSORS_LM83_REMOTE2_HIGH                         temp3:1
tcrit                 SENSORS_LM83_TCRIT                                tcrit:1
alarms                SENSORS_LM83_ALARMS                              alarms:1
