Commit | Line | Data |
---|---|---|
7f15b664 M |
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 | ||
50bf4650 GR |
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. |