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