104 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			104 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| Kernel driver jc42
 | |
| ==================
 | |
| 
 | |
| Supported chips:
 | |
|   * Analog Devices ADT7408
 | |
|     Datasheets:
 | |
| 	http://www.analog.com/static/imported-files/data_sheets/ADT7408.pdf
 | |
|   * Atmel AT30TS00, AT30TS002A/B, AT30TSE004A
 | |
|     Datasheets:
 | |
| 	http://www.atmel.com/Images/doc8585.pdf
 | |
| 	http://www.atmel.com/Images/doc8711.pdf
 | |
| 	http://www.atmel.com/Images/Atmel-8852-SEEPROM-AT30TSE002A-Datasheet.pdf
 | |
| 	http://www.atmel.com/Images/Atmel-8868-DTS-AT30TSE004A-Datasheet.pdf
 | |
|   * IDT TSE2002B3, TSE2002GB2, TSE2004GB2, TS3000B3, TS3000GB0, TS3000GB2,
 | |
| 	TS3001GB2
 | |
|     Datasheets:
 | |
| 	Available from IDT web site
 | |
|   * Maxim MAX6604
 | |
|     Datasheets:
 | |
| 	http://datasheets.maxim-ic.com/en/ds/MAX6604.pdf
 | |
|   * Microchip MCP9804, MCP9805, MCP9808, MCP98242, MCP98243, MCP98244, MCP9843
 | |
|     Datasheets:
 | |
| 	http://ww1.microchip.com/downloads/en/DeviceDoc/22203C.pdf
 | |
| 	http://ww1.microchip.com/downloads/en/DeviceDoc/21977b.pdf
 | |
| 	http://ww1.microchip.com/downloads/en/DeviceDoc/25095A.pdf
 | |
| 	http://ww1.microchip.com/downloads/en/DeviceDoc/21996a.pdf
 | |
| 	http://ww1.microchip.com/downloads/en/DeviceDoc/22153c.pdf
 | |
| 	http://ww1.microchip.com/downloads/en/DeviceDoc/22327A.pdf
 | |
|   * NXP Semiconductors SE97, SE97B, SE98, SE98A
 | |
|     Datasheets:
 | |
| 	http://www.nxp.com/documents/data_sheet/SE97.pdf
 | |
| 	http://www.nxp.com/documents/data_sheet/SE97B.pdf
 | |
| 	http://www.nxp.com/documents/data_sheet/SE98.pdf
 | |
| 	http://www.nxp.com/documents/data_sheet/SE98A.pdf
 | |
|   * ON Semiconductor CAT34TS02, CAT6095
 | |
|     Datasheet:
 | |
| 	http://www.onsemi.com/pub_link/Collateral/CAT34TS02-D.PDF
 | |
| 	http://www.onsemi.com/pub/Collateral/CAT6095-D.PDF
 | |
|   * ST Microelectronics STTS424, STTS424E02, STTS2002, STTS2004, STTS3000
 | |
|     Datasheets:
 | |
| 	http://www.st.com/web/en/resource/technical/document/datasheet/CD00157556.pdf
 | |
| 	http://www.st.com/web/en/resource/technical/document/datasheet/CD00157558.pdf
 | |
| 	http://www.st.com/web/en/resource/technical/document/datasheet/CD00266638.pdf
 | |
| 	http://www.st.com/web/en/resource/technical/document/datasheet/CD00225278.pdf
 | |
| 	http://www.st.com/web/en/resource/technical/document/datasheet/DM00076709.pdf
 | |
|   * JEDEC JC 42.4 compliant temperature sensor chips
 | |
|     Datasheet:
 | |
| 	http://www.jedec.org/sites/default/files/docs/4_01_04R19.pdf
 | |
| 
 | |
|   Common for all chips:
 | |
|     Prefix: 'jc42'
 | |
|     Addresses scanned: I2C 0x18 - 0x1f
 | |
| 
 | |
| Author:
 | |
| 	Guenter Roeck <linux@roeck-us.net>
 | |
| 
 | |
| 
 | |
| Description
 | |
| -----------
 | |
| 
 | |
| This driver implements support for JEDEC JC 42.4 compliant temperature sensors,
 | |
| which are used on many DDR3 memory modules for mobile devices and servers. Some
 | |
| systems use the sensor to prevent memory overheating by automatically throttling
 | |
| the memory controller.
 | |
| 
 | |
| The driver auto-detects the chips listed above, but can be manually instantiated
 | |
| to support other JC 42.4 compliant chips.
 | |
| 
 | |
| Example: the following will load the driver for a generic JC 42.4 compliant
 | |
| temperature sensor at address 0x18 on I2C bus #1:
 | |
| 
 | |
| # modprobe jc42
 | |
| # echo jc42 0x18 > /sys/bus/i2c/devices/i2c-1/new_device
 | |
| 
 | |
| A JC 42.4 compliant chip supports a single temperature sensor. Minimum, maximum,
 | |
| and critical temperature can be configured. There are alarms for high, low,
 | |
| and critical thresholds.
 | |
| 
 | |
| There is also an hysteresis to control the thresholds for resetting alarms.
 | |
| Per JC 42.4 specification, the hysteresis threshold can be configured to 0, 1.5,
 | |
| 3.0, and 6.0 degrees C. Configured hysteresis values will be rounded to those
 | |
| limits. The chip supports only a single register to configure the hysteresis,
 | |
| which applies to all limits. This register can be written by writing into
 | |
| temp1_crit_hyst. Other hysteresis attributes are read-only.
 | |
| 
 | |
| If the BIOS has configured the sensor for automatic temperature management, it
 | |
| is likely that it has locked the registers, i.e., that the temperature limits
 | |
| cannot be changed.
 | |
| 
 | |
| Sysfs entries
 | |
| -------------
 | |
| 
 | |
| temp1_input		Temperature (RO)
 | |
| temp1_min		Minimum temperature (RO or RW)
 | |
| temp1_max		Maximum temperature (RO or RW)
 | |
| temp1_crit		Critical high temperature (RO or RW)
 | |
| 
 | |
| temp1_crit_hyst		Critical hysteresis temperature (RO or RW)
 | |
| temp1_max_hyst		Maximum hysteresis temperature (RO)
 | |
| 
 | |
| temp1_min_alarm		Temperature low alarm
 | |
| temp1_max_alarm		Temperature high alarm
 | |
| temp1_crit_alarm	Temperature critical alarm
 |