Merge tag 'block-5.14-2021-08-07' of git://git.kernel.dk/linux-block
[linux-2.6-microblaze.git] / Documentation / hwmon / adc128d818.rst
1 Kernel driver adc128d818
2 ========================
3
4 Supported chips:
5
6   * Texas Instruments ADC818D818
7
8     Prefix: 'adc818d818'
9
10     Addresses scanned: I2C 0x1d, 0x1e, 0x1f, 0x2d, 0x2e, 0x2f
11
12     Datasheet: Publicly available at the TI website https://www.ti.com/
13
14 Author: Guenter Roeck
15
16 Description
17 -----------
18
19 This driver implements support for the Texas Instruments ADC128D818.
20 It is described as 'ADC System Monitor with Temperature Sensor'.
21
22 The ADC128D818 implements one temperature sensor and seven voltage sensors.
23
24 Temperatures are measured in degrees Celsius. There is one set of limits.
25 When the HOT Temperature Limit is crossed, this will cause an alarm that will
26 be reasserted until the temperature drops below the HOT Hysteresis.
27 Measurements are guaranteed between -55 and +125 degrees. The temperature
28 measurement has a resolution of 0.5 degrees; the limits have a resolution
29 of 1 degree.
30
31 Voltage sensors (also known as IN sensors) report their values in volts.
32 An alarm is triggered if the voltage has crossed a programmable minimum
33 or maximum limit. Note that minimum in this case always means 'closest to
34 zero'; this is important for negative voltage measurements. All voltage
35 inputs can measure voltages between 0 and 2.55 volts, with a resolution
36 of 0.625 mV.
37
38 If an alarm triggers, it will remain triggered until the hardware register
39 is read at least once. This means that the cause for the alarm may
40 already have disappeared by the time the alarm is read. The driver
41 caches the alarm status for each sensor until it is at least reported
42 once, to ensure that alarms are reported to user space.
43
44 The ADC128D818 only updates its values approximately once per second;
45 reading it more often will do no harm, but will return 'old' values.
46
47 In addition to the scanned address list, the chip can also be configured for
48 addresses 0x35 to 0x37. Those addresses are not scanned. You have to instantiate
49 the driver explicitly if the chip is configured for any of those addresses in
50 your system.