mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-15 08:46:45 +07:00
0cd2c72d76
Most LM75-compatible chips can either sample much faster or with a much better resolution than the original LM75 chip. So far the lm75 driver did not let the user take benefit of these improvements. Do it now. I decided to almost always configure the chip to use the best resolution possible, which also means the longest sample time. The only chips for which I didn't are the DS75, DS1775 and STDS75, because they are really too slow in 12-bit mode (1.2 to 1.5 second worst case) so I went for 11-bit mode as a more reasonable tradeoff. This choice is dictated by the fact that the hwmon subsystem is meant for system monitoring, it has never been supposed to be ultra-fast, and as a matter of fact we do cache the sampled values in almost all drivers. If anyone isn't pleased with these default settings, they can always introduce a platform data structure or DT support for the lm75. That being said, it seems nobody ever complained that the driver wouldn't refresh the value faster than every 1.5 second, and the change made it faster for all chips even in 12-bit mode, so I don't expect any complaint. Signed-off-by: Jean Delvare <khali@linux-fr.org> Acked-by: Guenter Roeck <linux@roeck-us.net>
87 lines
3.5 KiB
Plaintext
87 lines
3.5 KiB
Plaintext
Kernel driver lm75
|
|
==================
|
|
|
|
Supported chips:
|
|
* National Semiconductor LM75
|
|
Prefix: 'lm75'
|
|
Addresses scanned: I2C 0x48 - 0x4f
|
|
Datasheet: Publicly available at the National Semiconductor website
|
|
http://www.national.com/
|
|
* National Semiconductor LM75A
|
|
Prefix: 'lm75a'
|
|
Addresses scanned: I2C 0x48 - 0x4f
|
|
Datasheet: Publicly available at the National Semiconductor website
|
|
http://www.national.com/
|
|
* Dallas Semiconductor DS75, DS1775
|
|
Prefixes: 'ds75', 'ds1775'
|
|
Addresses scanned: none
|
|
Datasheet: Publicly available at the Dallas Semiconductor website
|
|
http://www.maxim-ic.com/
|
|
* Maxim MAX6625, MAX6626
|
|
Prefixes: 'max6625', 'max6626'
|
|
Addresses scanned: none
|
|
Datasheet: Publicly available at the Maxim website
|
|
http://www.maxim-ic.com/
|
|
* Microchip (TelCom) TCN75
|
|
Prefix: 'tcn75'
|
|
Addresses scanned: none
|
|
Datasheet: Publicly available at the Microchip website
|
|
http://www.microchip.com/
|
|
* Microchip MCP9800, MCP9801, MCP9802, MCP9803
|
|
Prefix: 'mcp980x'
|
|
Addresses scanned: none
|
|
Datasheet: Publicly available at the Microchip website
|
|
http://www.microchip.com/
|
|
* Analog Devices ADT75
|
|
Prefix: 'adt75'
|
|
Addresses scanned: none
|
|
Datasheet: Publicly available at the Analog Devices website
|
|
http://www.analog.com/adt75
|
|
* ST Microelectronics STDS75
|
|
Prefix: 'stds75'
|
|
Addresses scanned: none
|
|
Datasheet: Publicly available at the ST website
|
|
http://www.st.com/internet/analog/product/121769.jsp
|
|
* Texas Instruments TMP100, TMP101, TMP105, TMP75, TMP175, TMP275
|
|
Prefixes: 'tmp100', 'tmp101', 'tmp105', 'tmp175', 'tmp75', 'tmp275'
|
|
Addresses scanned: none
|
|
Datasheet: Publicly available at the Texas Instruments website
|
|
http://www.ti.com/product/tmp100
|
|
http://www.ti.com/product/tmp101
|
|
http://www.ti.com/product/tmp105
|
|
http://www.ti.com/product/tmp75
|
|
http://www.ti.com/product/tmp175
|
|
http://www.ti.com/product/tmp275
|
|
|
|
Author: Frodo Looijaard <frodol@dds.nl>
|
|
|
|
Description
|
|
-----------
|
|
|
|
The LM75 implements one temperature sensor. Limits can be set through the
|
|
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 Celsius, and are guaranteed within a
|
|
range of -55 to +125 degrees.
|
|
|
|
The driver caches the values for a period varying between 1 second for the
|
|
slowest chips and 125 ms for the fastest chips; reading it more often
|
|
will do no harm, but will return 'old' values.
|
|
|
|
The original LM75 was typically used in combination with LM78-like chips
|
|
on PC motherboards, to measure the temperature of the processor(s). Clones
|
|
are now used in various embedded designs.
|
|
|
|
The LM75 is essentially an industry standard; there may be other
|
|
LM75 clones not listed here, with or without various enhancements,
|
|
that are supported. The clones are not detected by the driver, unless
|
|
they reproduce the exact register tricks of the original LM75, and must
|
|
therefore be instantiated explicitly. Higher resolution up to 12-bit
|
|
is supported by this driver, other specific enhancements are not.
|
|
|
|
The LM77 is not supported, contrary to what we pretended for a long time.
|
|
Both chips are simply not compatible, value encoding differs.
|