Commit | Line | Data |
---|---|---|
ef4c4fdb RM |
1 | Kernel driver k8temp |
2 | ==================== | |
3 | ||
4 | Supported chips: | |
5 | * AMD K8 CPU | |
6 | Prefix: 'k8temp' | |
7 | Addresses scanned: PCI space | |
8 | Datasheet: http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/32559.pdf | |
9 | ||
10 | Author: Rudolf Marek | |
11 | Contact: Rudolf Marek <r.marek@sh.cvut.cz> | |
12 | ||
13 | Description | |
14 | ----------- | |
15 | ||
16 | This driver permits reading temperature sensor(s) embedded inside AMD K8 CPUs. | |
17 | Official documentation says that it works from revision F of K8 core, but | |
18 | in fact it seems to be implemented for all revisions of K8 except the first | |
19 | two revisions (SH-B0 and SH-B3). | |
20 | ||
21 | There can be up to four temperature sensors inside single CPU. The driver | |
22 | will auto-detect the sensors and will display only temperatures from | |
23 | implemented sensors. | |
24 | ||
25 | Mapping of /sys files is as follows: | |
26 | ||
27 | temp1_input - temperature of Core 0 and "place" 0 | |
28 | temp2_input - temperature of Core 0 and "place" 1 | |
29 | temp3_input - temperature of Core 1 and "place" 0 | |
30 | temp4_input - temperature of Core 1 and "place" 1 | |
31 | ||
32 | Temperatures are measured in degrees Celsius and measurement resolution is | |
33 | 1 degree C. It is expected that future CPU will have better resolution. The | |
34 | temperature is updated once a second. Valid temperatures are from -49 to | |
35 | 206 degrees C. | |
36 | ||
37 | Temperature known as TCaseMax was specified for processors up to revision E. | |
38 | This temperature is defined as temperature between heat-spreader and CPU | |
39 | case, so the internal CPU temperature supplied by this driver can be higher. | |
40 | There is no easy way how to measure the temperature which will correlate | |
41 | with TCaseMax temperature. | |
42 | ||
43 | For newer revisions of CPU (rev F, socket AM2) there is a mathematically | |
44 | computed temperature called TControl, which must be lower than TControlMax. | |
45 | ||
46 | The relationship is following: | |
47 | ||
48 | temp1_input - TjOffset*2 < TControlMax, | |
49 | ||
50 | TjOffset is not yet exported by the driver, TControlMax is usually | |
51 | 70 degrees C. The rule of the thumb -> CPU temperature should not cross | |
52 | 60 degrees C too much. |