Back to home page

OSCL-LXR

 
 

    


0001 Kernel driver k8temp
0002 ====================
0003 
0004 Supported chips:
0005 
0006   * AMD Athlon64/FX or Opteron CPUs
0007 
0008     Prefix: 'k8temp'
0009 
0010     Addresses scanned: PCI space
0011 
0012     Datasheet: https://www.amd.com/system/files/TechDocs/32559.pdf
0013 
0014 Author: Rudolf Marek
0015 
0016 Contact: Rudolf Marek <r.marek@assembler.cz>
0017 
0018 Description
0019 -----------
0020 
0021 This driver permits reading temperature sensor(s) embedded inside AMD K8
0022 family CPUs (Athlon64/FX, Opteron). Official documentation says that it works
0023 from revision F of K8 core, but in fact it seems to be implemented for all
0024 revisions of K8 except the first two revisions (SH-B0 and SH-B3).
0025 
0026 Please note that you will need at least lm-sensors 2.10.1 for proper userspace
0027 support.
0028 
0029 There can be up to four temperature sensors inside single CPU. The driver
0030 will auto-detect the sensors and will display only temperatures from
0031 implemented sensors.
0032 
0033 Mapping of /sys files is as follows:
0034 
0035 ============= ===================================
0036 temp1_input   temperature of Core 0 and "place" 0
0037 temp2_input   temperature of Core 0 and "place" 1
0038 temp3_input   temperature of Core 1 and "place" 0
0039 temp4_input   temperature of Core 1 and "place" 1
0040 ============= ===================================
0041 
0042 Temperatures are measured in degrees Celsius and measurement resolution is
0043 1 degree C. It is expected that future CPU will have better resolution. The
0044 temperature is updated once a second. Valid temperatures are from -49 to
0045 206 degrees C.
0046 
0047 Temperature known as TCaseMax was specified for processors up to revision E.
0048 This temperature is defined as temperature between heat-spreader and CPU
0049 case, so the internal CPU temperature supplied by this driver can be higher.
0050 There is no easy way how to measure the temperature which will correlate
0051 with TCaseMax temperature.
0052 
0053 For newer revisions of CPU (rev F, socket AM2) there is a mathematically
0054 computed temperature called TControl, which must be lower than TControlMax.
0055 
0056 The relationship is following:
0057 
0058         temp1_input - TjOffset*2 < TControlMax,
0059 
0060 TjOffset is not yet exported by the driver, TControlMax is usually
0061 70 degrees C. The rule of the thumb -> CPU temperature should not cross
0062 60 degrees C too much.