jc42 4.6 KB
Newer Older
1 2 3 4 5 6 7 8 9
Kernel driver jc42
==================

Supported chips:
  * Analog Devices ADT7408
    Prefix: 'adt7408'
    Addresses scanned: I2C 0x18 - 0x1f
    Datasheets:
	http://www.analog.com/static/imported-files/data_sheets/ADT7408.pdf
10 11
  * Atmel AT30TS00
    Prefix: 'at30ts00'
12 13
    Addresses scanned: I2C 0x18 - 0x1f
    Datasheets:
14 15 16 17 18 19 20 21 22
	http://www.atmel.com/Images/doc8585.pdf
  * IDT TSE2002B3, TSE2002GB2, TS3000B3, TS3000GB2
    Prefix: 'tse2002', 'ts3000'
    Addresses scanned: I2C 0x18 - 0x1f
    Datasheets:
	http://www.idt.com/sites/default/files/documents/IDT_TSE2002B3C_DST_20100512_120303152056.pdf
	http://www.idt.com/sites/default/files/documents/IDT_TSE2002GB2A1_DST_20111107_120303145914.pdf
	http://www.idt.com/sites/default/files/documents/IDT_TS3000B3A_DST_20101129_120303152013.pdf
	http://www.idt.com/sites/default/files/documents/IDT_TS3000GB2A1_DST_20111104_120303151012.pdf
23 24 25 26 27
  * Maxim MAX6604
    Prefix: 'max6604'
    Addresses scanned: I2C 0x18 - 0x1f
    Datasheets:
	http://datasheets.maxim-ic.com/en/ds/MAX6604.pdf
28 29
  * Microchip MCP9804, MCP9805, MCP98242, MCP98243, MCP9843
    Prefixes: 'mcp9804', 'mcp9805', 'mcp98242', 'mcp98243', 'mcp9843'
30 31
    Addresses scanned: I2C 0x18 - 0x1f
    Datasheets:
32
	http://ww1.microchip.com/downloads/en/DeviceDoc/22203C.pdf
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
	http://ww1.microchip.com/downloads/en/DeviceDoc/21977b.pdf
	http://ww1.microchip.com/downloads/en/DeviceDoc/21996a.pdf
	http://ww1.microchip.com/downloads/en/DeviceDoc/22153c.pdf
  * NXP Semiconductors SE97, SE97B
    Prefix: 'se97'
    Addresses scanned: I2C 0x18 - 0x1f
    Datasheets:
	http://www.nxp.com/documents/data_sheet/SE97.pdf
	http://www.nxp.com/documents/data_sheet/SE97B.pdf
  * NXP Semiconductors SE98
    Prefix: 'se98'
    Addresses scanned: I2C 0x18 - 0x1f
    Datasheets:
	http://www.nxp.com/documents/data_sheet/SE98.pdf
  * ON Semiconductor CAT34TS02, CAT6095
    Prefix: 'cat34ts02', 'cat6095'
    Addresses scanned: I2C 0x18 - 0x1f
    Datasheet:
	http://www.onsemi.com/pub_link/Collateral/CAT34TS02-D.PDF
	http://www.onsemi.com/pub/Collateral/CAT6095-D.PDF
  * ST Microelectronics STTS424, STTS424E02
    Prefix: 'stts424'
    Addresses scanned: I2C 0x18 - 0x1f
    Datasheets:
	http://www.st.com/stonline/products/literature/ds/13447/stts424.pdf
	http://www.st.com/stonline/products/literature/ds/13448/stts424e02.pdf
59 60 61 62 63 64
  * ST Microelectronics STTS2002, STTS3000
    Prefix: 'stts2002', 'stts3000'
    Addresses scanned: I2C 0x18 - 0x1f
    Datasheets:
	http://www.st.com/internet/com/TECHNICAL_RESOURCES/TECHNICAL_LITERATURE/DATASHEET/CD00225278.pdf
	http://www.st.com/internet/com/TECHNICAL_RESOURCES/TECHNICAL_LITERATURE/DATA_BRIEF/CD00270920.pdf
65 66 67
  * JEDEC JC 42.4 compliant temperature sensor chips
    Prefix: 'jc42'
    Addresses scanned: I2C 0x18 - 0x1f
68 69
    Datasheet:
	http://www.jedec.org/sites/default/files/docs/4_01_04R19.pdf
70 71 72 73 74 75 76 77

Author:
	Guenter Roeck <guenter.roeck@ericsson.com>


Description
-----------

78 79 80 81 82
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.

83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102
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.

103 104 105 106
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.

107 108 109 110
Sysfs entries
-------------

temp1_input		Temperature (RO)
111 112 113
temp1_min		Minimum temperature (RO or RW)
temp1_max		Maximum temperature (RO or RW)
temp1_crit		Critical high temperature (RO or RW)
114

115
temp1_crit_hyst		Critical hysteresis temperature (RO or RW)
116 117 118 119 120
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