blob: fa8776ab9b189d52d40c57ed0badbda64835b819 [file] [log] [blame]
Rudolf Marekd58ee052007-05-08 17:22:02 +02001Kernel driver coretemp
2======================
3
4Supported chips:
5 * All Intel Core family
6 Prefix: 'coretemp'
Rudolf Marekeccfed42009-09-23 22:59:42 +02007 CPUID: family 0x6, models 0xe (Pentium M DC), 0xf (Core 2 DC 65nm),
8 0x16 (Core 2 SC 65nm), 0x17 (Penryn 45nm),
Huaxu Wanfa08acd2009-09-23 22:59:43 +02009 0x1a (Nehalem), 0x1c (Atom), 0x1e (Lynnfield)
Rudolf Marekd58ee052007-05-08 17:22:02 +020010 Datasheet: Intel 64 and IA-32 Architectures Software Developer's Manual
11 Volume 3A: System Programming Guide
Rudolf Marekae770152008-01-18 00:50:04 +010012 http://softwarecommunity.intel.com/Wiki/Mobility/720.htm
Rudolf Marekd58ee052007-05-08 17:22:02 +020013
14Author: Rudolf Marek
15
16Description
17-----------
Durgadoss R199e0de2011-05-20 01:29:35 +053018This driver permits reading the DTS (Digital Temperature Sensor) embedded
19inside Intel CPUs. This driver can read both the per-core and per-package
20temperature using the appropriate sensors. The per-package sensor is new;
21as of now, it is present only in the SandyBridge platform. The driver will
22show the temperature of all cores inside a package under a single device
23directory inside hwmon.
Rudolf Marekd58ee052007-05-08 17:22:02 +020024
Rudolf Marekd58ee052007-05-08 17:22:02 +020025Temperature is measured in degrees Celsius and measurement resolution is
261 degree C. Valid temperatures are from 0 to TjMax degrees C, because
27the actual value of temperature register is in fact a delta from TjMax.
28
Chen Gongf3cffe42010-08-09 17:21:10 -070029Temperature known as TjMax is the maximum junction temperature of processor,
30which depends on the CPU model. See table below. At this temperature, protection
Rudolf Marekd58ee052007-05-08 17:22:02 +020031mechanism will perform actions to forcibly cool down the processor. Alarm
32may be raised, if the temperature grows enough (more than TjMax) to trigger
33the Out-Of-Spec bit. Following table summarizes the exported sysfs files:
34
Durgadoss R199e0de2011-05-20 01:29:35 +053035All Sysfs entries are named with their core_id (represented here by 'X').
36tempX_input - Core temperature (in millidegrees Celsius).
37tempX_max - All cooling devices should be turned on (on Core2).
Durgadoss Rc814a4c2011-07-12 07:07:16 -040038 Initialized with IA32_THERM_INTERRUPT. When the CPU
39 temperature reaches this temperature, an interrupt is
40 generated and tempX_max_alarm is set.
41tempX_max_hyst - If the CPU temperature falls below than temperature,
42 an interrupt is generated and tempX_max_alarm is reset.
43tempX_max_alarm - Set if the temperature reaches or exceeds tempX_max.
44 Reset if the temperature drops to or below tempX_max_hyst.
Durgadoss R199e0de2011-05-20 01:29:35 +053045tempX_crit - Maximum junction temperature (in millidegrees Celsius).
46tempX_crit_alarm - Set when Out-of-spec bit is set, never clears.
Rudolf Marekd58ee052007-05-08 17:22:02 +020047 Correct CPU operation is no longer guaranteed.
Durgadoss R199e0de2011-05-20 01:29:35 +053048tempX_label - Contains string "Core X", where X is processor
49 number. For Package temp, this will be "Physical id Y",
50 where Y is the package number.
Rudolf Marekd58ee052007-05-08 17:22:02 +020051
52The TjMax temperature is set to 85 degrees C if undocumented model specific
53register (UMSR) 0xee has bit 30 set. If not the TjMax is 100 degrees C as
54(sometimes) documented in processor datasheet.
Chen Gongf3cffe42010-08-09 17:21:10 -070055
56Appendix A. Known TjMax lists (TBD):
57Some information comes from ark.intel.com
58
59Process Processor TjMax(C)
60
6132nm Core i3/i5/i7 Processors
62 i7 660UM/640/620, 640LM/620, 620M, 610E 105
63 i5 540UM/520/430, 540M/520/450/430 105
64 i3 330E, 370M/350/330 90 rPGA, 105 BGA
65 i3 330UM 105
66
6732nm Core i7 Extreme Processors
68 980X 100
69
7032nm Celeron Processors
71 U3400 105
72 P4505/P4500 90
73
7445nm Xeon Processors 5400 Quad-Core
75 X5492, X5482, X5472, X5470, X5460, X5450 85
76 E5472, E5462, E5450/40/30/20/10/05 85
77 L5408 95
78 L5430, L5420, L5410 70
79
8045nm Xeon Processors 5200 Dual-Core
81 X5282, X5272, X5270, X5260 90
82 E5240 90
83 E5205, E5220 70, 90
84 L5240 70
85 L5238, L5215 95
86
8745nm Atom Processors
88 D525/510/425/410 100
89 Z560/550/540/530P/530/520PT/520/515/510PT/510P 90
90 Z510/500 90
91 N475/470/455/450 100
92 N280/270 90
93 330/230 125
94
9545nm Core2 Processors
96 Solo ULV SU3500/3300 100
97 T9900/9800/9600/9550/9500/9400/9300/8300/8100 105
98 T6670/6500/6400 105
99 T6600 90
100 SU9600/9400/9300 105
101 SP9600/9400 105
102 SL9600/9400/9380/9300 105
103 P9700/9600/9500/8800/8700/8600/8400/7570 105
104 P7550/7450 90
105
10645nm Core2 Quad Processors
107 Q9100/9000 100
108
10945nm Core2 Extreme Processors
110 X9100/9000 105
111 QX9300 100
112
11345nm Core i3/i5/i7 Processors
114 i7 940XM/920 100
115 i7 840QM/820/740/720 100
116
11745nm Celeron Processors
118 SU2300 100
119 900 105
120
12165nm Core2 Duo Processors
122 Solo U2200, U2100 100
123 U7700/7600/7500 100
124 T7800/7700/7600/7500/7400/7300/7250/7200/7100 100
125 T5870/5670/5600/5550/5500/5470/5450/5300/5270 100
126 T5250 100
127 T5800/5750/5200 85
128 L7700/7500/7400/7300/7200 100
129
13065nm Core2 Extreme Processors
131 X7900/7800 100
132
13365nm Core Duo Processors
134 U2500/2400 100
135 T2700/2600/2450/2400/2350/2300E/2300/2250/2050 100
136 L2500/2400/2300 100
137
13865nm Core Solo Processors
139 U1500/1400/1300 100
140 T1400/1350/1300/1250 100
141
14265nm Xeon Processors 5000 Quad-Core
143 X5000 90-95
144 E5000 80
145 L5000 70
146 L5318 95
147
14865nm Xeon Processors 5000 Dual-Core
149 5080, 5063, 5060, 5050, 5030 80-90
150 5160, 5150, 5148, 5140, 5130, 5120, 5110 80
151 L5138 100
152
15365nm Celeron Processors
154 T1700/1600 100
155 560/550/540/530 100