Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6 into next
[firefly-linux-kernel-4.4.55.git] / Documentation / hwmon / lm77
1 Kernel driver lm77
2 ==================
3
4 Supported chips:
5   * National Semiconductor LM77
6     Prefix: 'lm77'
7     Addresses scanned: I2C 0x48 - 0x4b
8     Datasheet: Publicly available at the National Semiconductor website
9                http://www.national.com/
10
11 Author: Andras BALI <drewie@freemail.hu>
12
13 Description
14 -----------
15
16 The LM77 implements one temperature sensor. The temperature
17 sensor incorporates a band-gap type temperature sensor,
18 10-bit ADC, and a digital comparator with user-programmable upper
19 and lower limit values.
20
21 The LM77 implements 3 limits: low (temp1_min), high (temp1_max) and
22 critical (temp1_crit.) It also implements an hysteresis mechanism which
23 applies to all 3 limits. The relative difference is stored in a single
24 register on the chip, which means that the relative difference between
25 the limit and its hysteresis is always the same for all 3 limits.
26
27 This implementation detail implies the following:
28 * When setting a limit, its hysteresis will automatically follow, the
29   difference staying unchanged. For example, if the old critical limit
30   was 80 degrees C, and the hysteresis was 75 degrees C, and you change
31   the critical limit to 90 degrees C, then the hysteresis will
32   automatically change to 85 degrees C.
33 * All 3 hysteresis can't be set independently. We decided to make
34   temp1_crit_hyst writable, while temp1_min_hyst and temp1_max_hyst are
35   read-only. Setting temp1_crit_hyst writes the difference between
36   temp1_crit_hyst and temp1_crit into the chip, and the same relative
37   hysteresis applies automatically to the low and high limits.
38 * The limits should be set before the hysteresis.