xref: /OK3568_Linux_fs/kernel/Documentation/hwmon/adt7410.rst (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunKernel driver adt7410
2*4882a593Smuzhiyun=====================
3*4882a593Smuzhiyun
4*4882a593SmuzhiyunSupported chips:
5*4882a593Smuzhiyun
6*4882a593Smuzhiyun  * Analog Devices ADT7410
7*4882a593Smuzhiyun
8*4882a593Smuzhiyun    Prefix: 'adt7410'
9*4882a593Smuzhiyun
10*4882a593Smuzhiyun    Addresses scanned: None
11*4882a593Smuzhiyun
12*4882a593Smuzhiyun    Datasheet: Publicly available at the Analog Devices website
13*4882a593Smuzhiyun
14*4882a593Smuzhiyun	       https://www.analog.com/static/imported-files/data_sheets/ADT7410.pdf
15*4882a593Smuzhiyun  * Analog Devices ADT7420
16*4882a593Smuzhiyun
17*4882a593Smuzhiyun    Prefix: 'adt7420'
18*4882a593Smuzhiyun
19*4882a593Smuzhiyun    Addresses scanned: None
20*4882a593Smuzhiyun
21*4882a593Smuzhiyun    Datasheet: Publicly available at the Analog Devices website
22*4882a593Smuzhiyun
23*4882a593Smuzhiyun	       https://www.analog.com/static/imported-files/data_sheets/ADT7420.pdf
24*4882a593Smuzhiyun
25*4882a593Smuzhiyun  * Analog Devices ADT7310
26*4882a593Smuzhiyun
27*4882a593Smuzhiyun    Prefix: 'adt7310'
28*4882a593Smuzhiyun
29*4882a593Smuzhiyun    Addresses scanned: None
30*4882a593Smuzhiyun
31*4882a593Smuzhiyun    Datasheet: Publicly available at the Analog Devices website
32*4882a593Smuzhiyun
33*4882a593Smuzhiyun	       https://www.analog.com/static/imported-files/data_sheets/ADT7310.pdf
34*4882a593Smuzhiyun
35*4882a593Smuzhiyun  * Analog Devices ADT7320
36*4882a593Smuzhiyun
37*4882a593Smuzhiyun    Prefix: 'adt7320'
38*4882a593Smuzhiyun
39*4882a593Smuzhiyun    Addresses scanned: None
40*4882a593Smuzhiyun
41*4882a593Smuzhiyun    Datasheet: Publicly available at the Analog Devices website
42*4882a593Smuzhiyun
43*4882a593Smuzhiyun	       https://www.analog.com/static/imported-files/data_sheets/ADT7320.pdf
44*4882a593Smuzhiyun
45*4882a593SmuzhiyunAuthor: Hartmut Knaack <knaack.h@gmx.de>
46*4882a593Smuzhiyun
47*4882a593SmuzhiyunDescription
48*4882a593Smuzhiyun-----------
49*4882a593Smuzhiyun
50*4882a593SmuzhiyunThe ADT7310/ADT7410 is a temperature sensor with rated temperature range of
51*4882a593Smuzhiyun-55°C to +150°C. It has a high accuracy of +/-0.5°C and can be operated at a
52*4882a593Smuzhiyunresolution of 13 bits (0.0625°C) or 16 bits (0.0078°C). The sensor provides an
53*4882a593SmuzhiyunINT pin to indicate that a minimum or maximum temperature set point has been
54*4882a593Smuzhiyunexceeded, as well as a critical temperature (CT) pin to indicate that the
55*4882a593Smuzhiyuncritical temperature set point has been exceeded. Both pins can be set up with a
56*4882a593Smuzhiyuncommon hysteresis of 0°C - 15°C and a fault queue, ranging from 1 to 4 events.
57*4882a593SmuzhiyunBoth pins can individually set to be active-low or active-high, while the whole
58*4882a593Smuzhiyundevice can either run in comparator mode or interrupt mode. The ADT7410 supports
59*4882a593Smuzhiyuncontinuous temperature sampling, as well as sampling one temperature value per
60*4882a593Smuzhiyunsecond or even just get one sample on demand for power saving. Besides, it can
61*4882a593Smuzhiyuncompletely power down its ADC, if power management is required.
62*4882a593Smuzhiyun
63*4882a593SmuzhiyunThe ADT7320/ADT7420 is register compatible, the only differences being the
64*4882a593Smuzhiyunpackage, a slightly narrower operating temperature range (-40°C to +150°C), and
65*4882a593Smuzhiyuna better accuracy (0.25°C instead of 0.50°C.)
66*4882a593Smuzhiyun
67*4882a593SmuzhiyunThe difference between the ADT7310/ADT7320 and ADT7410/ADT7420 is the control
68*4882a593Smuzhiyuninterface, the ADT7310 and ADT7320 use SPI while the ADT7410 and ADT7420 use
69*4882a593SmuzhiyunI2C.
70*4882a593Smuzhiyun
71*4882a593SmuzhiyunConfiguration Notes
72*4882a593Smuzhiyun-------------------
73*4882a593Smuzhiyun
74*4882a593SmuzhiyunSince the device uses one hysteresis value, which is an offset to minimum,
75*4882a593Smuzhiyunmaximum and critical temperature, it can only be set for temp#_max_hyst.
76*4882a593SmuzhiyunHowever, temp#_min_hyst and temp#_crit_hyst show their corresponding
77*4882a593Smuzhiyunhysteresis.
78*4882a593SmuzhiyunThe device is set to 16 bit resolution and comparator mode.
79*4882a593Smuzhiyun
80*4882a593Smuzhiyunsysfs-Interface
81*4882a593Smuzhiyun---------------
82*4882a593Smuzhiyun
83*4882a593Smuzhiyun======================== ====================================================
84*4882a593Smuzhiyuntemp#_input		 temperature input
85*4882a593Smuzhiyuntemp#_min		 temperature minimum setpoint
86*4882a593Smuzhiyuntemp#_max		 temperature maximum setpoint
87*4882a593Smuzhiyuntemp#_crit		 critical temperature setpoint
88*4882a593Smuzhiyuntemp#_min_hyst		 hysteresis for temperature minimum (read-only)
89*4882a593Smuzhiyuntemp#_max_hyst		 hysteresis for temperature maximum (read/write)
90*4882a593Smuzhiyuntemp#_crit_hyst		 hysteresis for critical temperature (read-only)
91*4882a593Smuzhiyuntemp#_min_alarm		 temperature minimum alarm flag
92*4882a593Smuzhiyuntemp#_max_alarm		 temperature maximum alarm flag
93*4882a593Smuzhiyuntemp#_crit_alarm	 critical temperature alarm flag
94*4882a593Smuzhiyun======================== ====================================================
95