| 
									
										
										
										
											2006-09-24 18:50:57 +00:00
										 |  |  | Kernel driver k8temp | 
					
						
							|  |  |  | ==================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Supported chips: | 
					
						
							| 
									
										
										
										
											2006-10-08 20:01:26 +00:00
										 |  |  |   * AMD Athlon64/FX or Opteron CPUs | 
					
						
							| 
									
										
										
										
											2006-09-24 18:50:57 +00:00
										 |  |  |     Prefix: 'k8temp' | 
					
						
							|  |  |  |     Addresses scanned: PCI space | 
					
						
							|  |  |  |     Datasheet: http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/32559.pdf | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Author: Rudolf Marek | 
					
						
							|  |  |  | Contact: Rudolf Marek <r.marek@sh.cvut.cz> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Description | 
					
						
							|  |  |  | ----------- | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-10-08 20:01:26 +00:00
										 |  |  | This driver permits reading temperature sensor(s) embedded inside AMD K8 | 
					
						
							|  |  |  | family CPUs (Athlon64/FX, Opteron). Official documentation says that it works | 
					
						
							|  |  |  | from revision F of K8 core, but in fact it seems to be implemented for all | 
					
						
							|  |  |  | revisions of K8 except the first two revisions (SH-B0 and SH-B3). | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Please note that you will need at least lm-sensors 2.10.1 for proper userspace | 
					
						
							|  |  |  | support. | 
					
						
							| 
									
										
										
										
											2006-09-24 18:50:57 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | There can be up to four temperature sensors inside single CPU. The driver | 
					
						
							|  |  |  | will auto-detect the sensors and will display only temperatures from | 
					
						
							|  |  |  | implemented sensors. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Mapping of /sys files is as follows: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | temp1_input - temperature of Core 0 and "place" 0 | 
					
						
							|  |  |  | temp2_input - temperature of Core 0 and "place" 1 | 
					
						
							|  |  |  | temp3_input - temperature of Core 1 and "place" 0 | 
					
						
							|  |  |  | temp4_input - temperature of Core 1 and "place" 1 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Temperatures are measured in degrees Celsius and measurement resolution is | 
					
						
							|  |  |  | 1 degree C. It is expected that future CPU will have better resolution. The | 
					
						
							|  |  |  | temperature is updated once a second. Valid temperatures are from -49 to | 
					
						
							|  |  |  | 206 degrees C. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Temperature known as TCaseMax was specified for processors up to revision E. | 
					
						
							|  |  |  | This temperature is defined as temperature between heat-spreader and CPU | 
					
						
							|  |  |  | case, so the internal CPU temperature supplied by this driver can be higher. | 
					
						
							|  |  |  | There is no easy way how to measure the temperature which will correlate | 
					
						
							|  |  |  | with TCaseMax temperature. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | For newer revisions of CPU (rev F, socket AM2) there is a mathematically | 
					
						
							|  |  |  | computed temperature called TControl, which must be lower than TControlMax. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | The relationship is following: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | temp1_input - TjOffset*2 < TControlMax, | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | TjOffset is not yet exported by the driver, TControlMax is usually | 
					
						
							|  |  |  | 70 degrees C. The rule of the thumb -> CPU temperature should not cross | 
					
						
							|  |  |  | 60 degrees C too much. |