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