0001 Kernel driver coretemp
0002 ======================
0003
0004 Supported chips:
0005 * All Intel Core family
0006
0007 Prefix: 'coretemp'
0008
0009 CPUID: family 0x6, models
0010
0011 - 0xe (Pentium M DC), 0xf (Core 2 DC 65nm),
0012 - 0x16 (Core 2 SC 65nm), 0x17 (Penryn 45nm),
0013 - 0x1a (Nehalem), 0x1c (Atom), 0x1e (Lynnfield),
0014 - 0x26 (Tunnel Creek Atom), 0x27 (Medfield Atom),
0015 - 0x36 (Cedar Trail Atom)
0016
0017 Datasheet:
0018
0019 Intel 64 and IA-32 Architectures Software Developer's Manual
0020 Volume 3A: System Programming Guide
0021
0022 http://softwarecommunity.intel.com/Wiki/Mobility/720.htm
0023
0024 Author: Rudolf Marek
0025
0026 Description
0027 -----------
0028
0029 This driver permits reading the DTS (Digital Temperature Sensor) embedded
0030 inside Intel CPUs. This driver can read both the per-core and per-package
0031 temperature using the appropriate sensors. The per-package sensor is new;
0032 as of now, it is present only in the SandyBridge platform. The driver will
0033 show the temperature of all cores inside a package under a single device
0034 directory inside hwmon.
0035
0036 Temperature is measured in degrees Celsius and measurement resolution is
0037 1 degree C. Valid temperatures are from 0 to TjMax degrees C, because
0038 the actual value of temperature register is in fact a delta from TjMax.
0039
0040 Temperature known as TjMax is the maximum junction temperature of processor,
0041 which depends on the CPU model. See table below. At this temperature, protection
0042 mechanism will perform actions to forcibly cool down the processor. Alarm
0043 may be raised, if the temperature grows enough (more than TjMax) to trigger
0044 the Out-Of-Spec bit. Following table summarizes the exported sysfs files:
0045
0046 All Sysfs entries are named with their core_id (represented here by 'X').
0047
0048 ================= ========================================================
0049 tempX_input Core temperature (in millidegrees Celsius).
0050 tempX_max All cooling devices should be turned on (on Core2).
0051 tempX_crit Maximum junction temperature (in millidegrees Celsius).
0052 tempX_crit_alarm Set when Out-of-spec bit is set, never clears.
0053 Correct CPU operation is no longer guaranteed.
0054 tempX_label Contains string "Core X", where X is processor
0055 number. For Package temp, this will be "Physical id Y",
0056 where Y is the package number.
0057 ================= ========================================================
0058
0059 On CPU models which support it, TjMax is read from a model-specific register.
0060 On other models, it is set to an arbitrary value based on weak heuristics.
0061 If these heuristics don't work for you, you can pass the correct TjMax value
0062 as a module parameter (tjmax).
0063
0064 Appendix A. Known TjMax lists (TBD):
0065 Some information comes from ark.intel.com
0066
0067 =============== =============================================== ================
0068 Process Processor TjMax(C)
0069
0070 22nm Core i5/i7 Processors
0071 i7 3920XM, 3820QM, 3720QM, 3667U, 3520M 105
0072 i5 3427U, 3360M/3320M 105
0073 i7 3770/3770K 105
0074 i5 3570/3570K, 3550, 3470/3450 105
0075 i7 3770S 103
0076 i5 3570S/3550S, 3475S/3470S/3450S 103
0077 i7 3770T 94
0078 i5 3570T 94
0079 i5 3470T 91
0080
0081 32nm Core i3/i5/i7 Processors
0082 i7 2600 98
0083 i7 660UM/640/620, 640LM/620, 620M, 610E 105
0084 i5 540UM/520/430, 540M/520/450/430 105
0085 i3 330E, 370M/350/330 90 rPGA, 105 BGA
0086 i3 330UM 105
0087
0088 32nm Core i7 Extreme Processors
0089 980X 100
0090
0091 32nm Celeron Processors
0092 U3400 105
0093 P4505/P4500 90
0094
0095 32nm Atom Processors
0096 S1260/1220 95
0097 S1240 102
0098 Z2460 90
0099 Z2760 90
0100 D2700/2550/2500 100
0101 N2850/2800/2650/2600 100
0102
0103 45nm Xeon Processors 5400 Quad-Core
0104 X5492, X5482, X5472, X5470, X5460, X5450 85
0105 E5472, E5462, E5450/40/30/20/10/05 85
0106 L5408 95
0107 L5430, L5420, L5410 70
0108
0109 45nm Xeon Processors 5200 Dual-Core
0110 X5282, X5272, X5270, X5260 90
0111 E5240 90
0112 E5205, E5220 70, 90
0113 L5240 70
0114 L5238, L5215 95
0115
0116 45nm Atom Processors
0117 D525/510/425/410 100
0118 K525/510/425/410 100
0119 Z670/650 90
0120 Z560/550/540/530P/530/520PT/520/515/510PT/510P 90
0121 Z510/500 90
0122 N570/550 100
0123 N475/470/455/450 100
0124 N280/270 90
0125 330/230 125
0126 E680/660/640/620 90
0127 E680T/660T/640T/620T 110
0128 E665C/645C 90
0129 E665CT/645CT 110
0130 CE4170/4150/4110 110
0131 CE4200 series unknown
0132 CE5300 series unknown
0133
0134 45nm Core2 Processors
0135 Solo ULV SU3500/3300 100
0136 T9900/9800/9600/9550/9500/9400/9300/8300/8100 105
0137 T6670/6500/6400 105
0138 T6600 90
0139 SU9600/9400/9300 105
0140 SP9600/9400 105
0141 SL9600/9400/9380/9300 105
0142 P9700/9600/9500/8800/8700/8600/8400/7570 105
0143 P7550/7450 90
0144
0145 45nm Core2 Quad Processors
0146 Q9100/9000 100
0147
0148 45nm Core2 Extreme Processors
0149 X9100/9000 105
0150 QX9300 100
0151
0152 45nm Core i3/i5/i7 Processors
0153 i7 940XM/920 100
0154 i7 840QM/820/740/720 100
0155
0156 45nm Celeron Processors
0157 SU2300 100
0158 900 105
0159
0160 65nm Core2 Duo Processors
0161 Solo U2200, U2100 100
0162 U7700/7600/7500 100
0163 T7800/7700/7600/7500/7400/7300/7250/7200/7100 100
0164 T5870/5670/5600/5550/5500/5470/5450/5300/5270 100
0165 T5250 100
0166 T5800/5750/5200 85
0167 L7700/7500/7400/7300/7200 100
0168
0169 65nm Core2 Extreme Processors
0170 X7900/7800 100
0171
0172 65nm Core Duo Processors
0173 U2500/2400 100
0174 T2700/2600/2450/2400/2350/2300E/2300/2250/2050 100
0175 L2500/2400/2300 100
0176
0177 65nm Core Solo Processors
0178 U1500/1400/1300 100
0179 T1400/1350/1300/1250 100
0180
0181 65nm Xeon Processors 5000 Quad-Core
0182 X5000 90-95
0183 E5000 80
0184 L5000 70
0185 L5318 95
0186
0187 65nm Xeon Processors 5000 Dual-Core
0188 5080, 5063, 5060, 5050, 5030 80-90
0189 5160, 5150, 5148, 5140, 5130, 5120, 5110 80
0190 L5138 100
0191
0192 65nm Celeron Processors
0193 T1700/1600 100
0194 560/550/540/530 100
0195 =============== =============================================== ================