mirror of
https://github.com/lm-sensors/lm-sensors.git
synced 2026-10-16 10:49:31 +00:00
to temp1 and temp2. git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@968 7894878c-1315-0410-8ee3-d5d059ff63e0
97 lines
3.4 KiB
Plaintext
97 lines
3.4 KiB
Plaintext
Kernel driver `thmc50.o'
|
|
=====================
|
|
|
|
Status: Complete and some-what tested
|
|
|
|
Supported chips:
|
|
* Analog Devices ADM1022
|
|
Prefix: `adm1022'
|
|
Addresses scanned: I2C 0x2D - 0x2F (inclusive)
|
|
Datasheet: Publicly available at the Analog Devices website
|
|
* Texas Instruments THMC50
|
|
Prefix: `thmc50'
|
|
Addresses scanned: I2C 0x2D - 0x2F (inclusive)
|
|
Datasheet: Publicly available at the Texas Instruments' website
|
|
|
|
Authors: Frodo Looijaard <frodol@dds.nl> and
|
|
Philip Edelbrock <phil@netroedge.com>
|
|
|
|
|
|
Module Parameters
|
|
-----------------
|
|
|
|
* force: short array (min = 1, max = 48)
|
|
List of adapter,address pairs to boldly assume to be present
|
|
* force_thmc50: short array (min = 1, max = 48)
|
|
List of adapter,address pairs which are unquestionably assumed to contain
|
|
a `thmc50' chip
|
|
* ignore: short array (min = 1, max = 48)
|
|
List of adapter,address pairs not to scan
|
|
* ignore_range: short array (min = 1, max = 48)
|
|
List of adapter,start-addr,end-addr triples not to scan
|
|
* probe: short array (min = 1, max = 48)
|
|
List of adapter,address pairs to scan additionally
|
|
* probe_range: short array (min = 1, max = 48)
|
|
List of adapter,start-addr,end-addr triples to scan additionally
|
|
|
|
|
|
Description
|
|
-----------
|
|
|
|
The THMC50 implements: an internal temperature sensor, support for an
|
|
external diode-type temperature sensor (compatible w/ the diode sensor inside
|
|
many processors), and a controllable fan/analog_out DAC. For the temperature
|
|
sensors, limits can be set through the appropriate Overtemperature Shutdown
|
|
register and Hysteresis register. Each value can be set and read to half-degree
|
|
accuracy. An alarm is issued (usually to a connected LM78) when the
|
|
temperature gets higher then the Overtemperature Shutdown value; it stays on
|
|
until the temperature falls below the Hysteresis value. All temperatures are in
|
|
degrees Celcius, and are guaranteed within a range of -55 to +125 degrees.
|
|
|
|
The THMC50 only updates its values each 1.5 seconds; reading it more often
|
|
will do no harm, but will return 'old' values.
|
|
|
|
The THMC50 is usually used in combination with LM78-like chips, to measure
|
|
the temperature of the processor(s).
|
|
|
|
|
|
Driver Features
|
|
---------------
|
|
|
|
These are the files which are provided by the driver (ro=read-only,
|
|
rw=read and writeable):
|
|
|
|
temp1 (internal) -- Three fields: [temp-os,rw] [temp-hyst,rw] [temp,ro]
|
|
temp2 (remote) -- Three fields: [temp-os,rw] [temp-hyst,rw] [temp,ro]
|
|
|
|
temp-os, temp-hyst, and temp are whole degree integers representing degrees
|
|
celcius.
|
|
|
|
analog_out -- One field: [output-value,rw]
|
|
|
|
output-value is a number from 0 to 255 representing the voltage output
|
|
provided by the DAC from 0 to 2.5, respectively. Note: the max *current*
|
|
supplied is actually quite low. Some type of current amplification is needed
|
|
in order to control a fan or other current demanding device (see the
|
|
datasheet for more info).
|
|
|
|
die_code -- One field: [die-code,ro]
|
|
|
|
die-code is an integer representation of the die_code byte register.
|
|
According to the docs, the high nibble is the die version, and the lower
|
|
nibble is the stepping. (Don't ask me why or what this means! ;')
|
|
|
|
inter -- One field: [interrupts,rw]
|
|
|
|
interrupts is an integer representation of the interrupts byte. See the data
|
|
sheet for what bits mean what.
|
|
|
|
inter_mask -- One field: [inter-mask,rw]
|
|
|
|
inter-mask is an integer repressentation of the interrupt mask which is a
|
|
determination of which conditions can cause the /INT pin on the chip to
|
|
become asserted.
|
|
|
|
|
|
|