]>
Commit | Line | Data |
---|---|---|
7f15b664 RM |
1 | Kernel driver lm63 |
2 | ================== | |
3 | ||
4 | Supported chips: | |
b04f2f7d | 5 | |
7f15b664 | 6 | * National Semiconductor LM63 |
b04f2f7d | 7 | |
7f15b664 | 8 | Prefix: 'lm63' |
b04f2f7d | 9 | |
7f15b664 | 10 | Addresses scanned: I2C 0x4c |
b04f2f7d | 11 | |
7f15b664 | 12 | Datasheet: Publicly available at the National Semiconductor website |
b04f2f7d MCC |
13 | |
14 | http://www.national.com/pf/LM/LM63.html | |
15 | ||
10f2ed31 | 16 | * National Semiconductor LM64 |
b04f2f7d | 17 | |
10f2ed31 | 18 | Prefix: 'lm64' |
b04f2f7d | 19 | |
10f2ed31 | 20 | Addresses scanned: I2C 0x18 and 0x4e |
b04f2f7d | 21 | |
10f2ed31 | 22 | Datasheet: Publicly available at the National Semiconductor website |
b04f2f7d MCC |
23 | |
24 | http://www.national.com/pf/LM/LM64.html | |
25 | ||
210961c4 | 26 | * National Semiconductor LM96163 |
b04f2f7d | 27 | |
210961c4 | 28 | Prefix: 'lm96163' |
b04f2f7d | 29 | |
210961c4 | 30 | Addresses scanned: I2C 0x4c |
b04f2f7d | 31 | |
210961c4 | 32 | Datasheet: Publicly available at the National Semiconductor website |
b04f2f7d MCC |
33 | |
34 | http://www.national.com/pf/LM/LM96163.html | |
35 | ||
7f15b664 | 36 | |
7c81c60f | 37 | Author: Jean Delvare <jdelvare@suse.de> |
7f15b664 RM |
38 | |
39 | Thanks go to Tyan and especially Alex Buckingham for setting up a remote | |
40 | access to their S4882 test platform for this driver. | |
b04f2f7d | 41 | |
7f15b664 RM |
42 | http://www.tyan.com/ |
43 | ||
44 | Description | |
45 | ----------- | |
46 | ||
47 | The LM63 is a digital temperature sensor with integrated fan monitoring | |
48 | and control. | |
49 | ||
50 | The LM63 is basically an LM86 with fan speed monitoring and control | |
51 | capabilities added. It misses some of the LM86 features though: | |
b04f2f7d | 52 | |
7f15b664 RM |
53 | - No low limit for local temperature. |
54 | - No critical limit for local temperature. | |
55 | - Critical limit for remote temperature can be changed only once. We | |
56 | will consider that the critical limit is read-only. | |
57 | ||
58 | The datasheet isn't very clear about what the tachometer reading is. | |
59 | ||
60 | An explanation from National Semiconductor: The two lower bits of the read | |
61 | value have to be masked out. The value is still 16 bit in width. | |
62 | ||
63 | All temperature values are given in degrees Celsius. Resolution is 1.0 | |
64 | degree for the local temperature, 0.125 degree for the remote temperature. | |
65 | ||
66 | The fan speed is measured using a tachometer. Contrary to most chips which | |
67 | store the value in an 8-bit register and have a selectable clock divider | |
68 | to make sure that the result will fit in the register, the LM63 uses 16-bit | |
69 | value for measuring the speed of the fan. It can measure fan speeds down to | |
70 | 83 RPM, at least in theory. | |
71 | ||
72 | Note that the pin used for fan monitoring is shared with an alert out | |
73 | function. Depending on how the board designer wanted to use the chip, fan | |
74 | speed monitoring will or will not be possible. The proper chip configuration | |
409c0b5b JD |
75 | is left to the BIOS, and the driver will blindly trust it. Only the original |
76 | LM63 suffers from this limitation, the LM64 and LM96163 have separate pins | |
77 | for fan monitoring and alert out. On the LM64, monitoring is always enabled; | |
78 | on the LM96163 it can be disabled. | |
7f15b664 RM |
79 | |
80 | A PWM output can be used to control the speed of the fan. The LM63 has two | |
81 | PWM modes: manual and automatic. Automatic mode is not fully implemented yet | |
82 | (you cannot define your custom PWM/temperature curve), and mode change isn't | |
83 | supported either. | |
84 | ||
04738b2b GR |
85 | The lm63 driver will not update its values more frequently than configured with |
86 | the update_interval sysfs attribute; reading them more often will do no harm, | |
d216f680 JD |
87 | but will return 'old' values. Values in the automatic fan control lookup table |
88 | (attributes pwm1_auto_*) have their own independent lifetime of 5 seconds. | |
7f15b664 | 89 | |
10f2ed31 MG |
90 | The LM64 is effectively an LM63 with GPIO lines. The driver does not |
91 | support these GPIO lines at present. | |
210961c4 GR |
92 | |
93 | The LM96163 is an enhanced version of LM63 with improved temperature accuracy | |
f496b2d4 GR |
94 | and better PWM resolution. For LM96163, the external temperature sensor type is |
95 | configurable as CPU embedded diode(1) or 3904 transistor(2). |