2005-05-26 20:42:19 +08:00
|
|
|
Kernel driver lm77
|
|
|
|
==================
|
|
|
|
|
|
|
|
Supported chips:
|
|
|
|
* National Semiconductor LM77
|
|
|
|
Prefix: 'lm77'
|
|
|
|
Addresses scanned: I2C 0x48 - 0x4b
|
|
|
|
Datasheet: Publicly available at the National Semiconductor website
|
|
|
|
http://www.national.com/
|
|
|
|
|
|
|
|
Author: Andras BALI <drewie@freemail.hu>
|
|
|
|
|
|
|
|
Description
|
|
|
|
-----------
|
|
|
|
|
|
|
|
The LM77 implements one temperature sensor. The temperature
|
|
|
|
sensor incorporates a band-gap type temperature sensor,
|
|
|
|
10-bit ADC, and a digital comparator with user-programmable upper
|
|
|
|
and lower limit values.
|
|
|
|
|
2014-04-20 23:07:42 +08:00
|
|
|
The LM77 implements 3 limits: low (temp1_min), high (temp1_max) and
|
|
|
|
critical (temp1_crit.) It also implements an hysteresis mechanism which
|
|
|
|
applies to all 3 limits. The relative difference is stored in a single
|
|
|
|
register on the chip, which means that the relative difference between
|
|
|
|
the limit and its hysteresis is always the same for all 3 limits.
|
|
|
|
|
|
|
|
This implementation detail implies the following:
|
|
|
|
* When setting a limit, its hysteresis will automatically follow, the
|
|
|
|
difference staying unchanged. For example, if the old critical limit
|
|
|
|
was 80 degrees C, and the hysteresis was 75 degrees C, and you change
|
|
|
|
the critical limit to 90 degrees C, then the hysteresis will
|
|
|
|
automatically change to 85 degrees C.
|
|
|
|
* All 3 hysteresis can't be set independently. We decided to make
|
|
|
|
temp1_crit_hyst writable, while temp1_min_hyst and temp1_max_hyst are
|
|
|
|
read-only. Setting temp1_crit_hyst writes the difference between
|
|
|
|
temp1_crit_hyst and temp1_crit into the chip, and the same relative
|
|
|
|
hysteresis applies automatically to the low and high limits.
|
|
|
|
* The limits should be set before the hysteresis.
|