About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Documentation / hwmon / adt7475


Based on kernel version 4.16.1. Page generated on 2018-04-09 11:53 EST.

1	Kernel driver adt7475
2	=====================
3	
4	Supported chips:
5	  * Analog Devices ADT7473
6	    Prefix: 'adt7473'
7	    Addresses scanned: I2C 0x2C, 0x2D, 0x2E
8	    Datasheet: Publicly available at the On Semiconductors website
9	  * Analog Devices ADT7475
10	    Prefix: 'adt7475'
11	    Addresses scanned: I2C 0x2E
12	    Datasheet: Publicly available at the On Semiconductors website
13	  * Analog Devices ADT7476
14	    Prefix: 'adt7476'
15	    Addresses scanned: I2C 0x2C, 0x2D, 0x2E
16	    Datasheet: Publicly available at the On Semiconductors website
17	  * Analog Devices ADT7490
18	    Prefix: 'adt7490'
19	    Addresses scanned: I2C 0x2C, 0x2D, 0x2E
20	    Datasheet: Publicly available at the On Semiconductors website
21	
22	Authors:
23		Jordan Crouse
24		Hans de Goede
25		Darrick J. Wong (documentation)
26		Jean Delvare
27	
28	
29	Description
30	-----------
31	
32	This driver implements support for the Analog Devices ADT7473, ADT7475,
33	ADT7476 and ADT7490 chip family. The ADT7473 and ADT7475 differ only in
34	minor details. The ADT7476 has additional features, including extra voltage
35	measurement inputs and VID support. The ADT7490 also has additional
36	features, including extra voltage measurement inputs and PECI support. All
37	the supported chips will be collectively designed by the name "ADT747x" in
38	the rest of this document.
39	
40	The ADT747x uses the 2-wire interface compatible with the SMBus 2.0
41	specification. Using an analog to digital converter it measures three (3)
42	temperatures and two (2) or more voltages. It has four (4) 16-bit counters
43	for measuring fan speed. There are three (3) PWM outputs that can be used
44	to control fan speed.
45	
46	A sophisticated control system for the PWM outputs is designed into the
47	ADT747x that allows fan speed to be adjusted automatically based on any of the
48	three temperature sensors. Each PWM output is individually adjustable and
49	programmable. Once configured, the ADT747x will adjust the PWM outputs in
50	response to the measured temperatures without further host intervention.
51	This feature can also be disabled for manual control of the PWM's.
52	
53	Each of the measured inputs (voltage, temperature, fan speed) has
54	corresponding high/low limit values. The ADT747x will signal an ALARM if
55	any measured value exceeds either limit.
56	
57	The ADT747x samples all inputs continuously. The driver will not read
58	the registers more often than once every other second. Further,
59	configuration data is only read once per minute.
60	
61	Chip Differences Summary
62	------------------------
63	
64	ADT7473:
65	  * 2 voltage inputs
66	  * system acoustics optimizations (not implemented)
67	
68	ADT7475:
69	  * 2 voltage inputs
70	
71	ADT7476:
72	  * 5 voltage inputs
73	  * VID support
74	
75	ADT7490:
76	  * 6 voltage inputs
77	  * 1 Imon input (not implemented)
78	  * PECI support (not implemented)
79	  * 2 GPIO pins (not implemented)
80	  * system acoustics optimizations (not implemented)
81	
82	Special Features
83	----------------
84	
85	The ADT747x has a 10-bit ADC and can therefore measure temperatures
86	with a resolution of 0.25 degree Celsius. Temperature readings can be
87	configured either for two's complement format or "Offset 64" format,
88	wherein 64 is subtracted from the raw value to get the temperature value.
89	
90	The datasheet is very detailed and describes a procedure for determining
91	an optimal configuration for the automatic PWM control.
92	
93	Fan Speed Control
94	-----------------
95	
96	The driver exposes two trip points per PWM channel.
97	
98	point1: Set the PWM speed at the lower temperature bound
99	point2: Set the PWM speed at the higher temperature bound
100	
101	The ADT747x will scale the PWM linearly between the lower and higher PWM
102	speed when the temperature is between the two temperature boundaries.
103	Temperature boundaries are associated to temperature channels rather than
104	PWM outputs, and a given PWM output can be controlled by several temperature
105	channels. As a result, the ADT747x may compute more than one PWM value
106	for a channel at a given time, in which case the maximum value (fastest
107	fan speed) is applied. PWM values range from 0 (off) to 255 (full speed).
108	
109	Fan speed may be set to maximum when the temperature sensor associated with
110	the PWM control exceeds temp#_max.
111	
112	At Tmin - hysteresis the PWM output can either be off (0% duty cycle) or at the
113	minimum (i.e. auto_point1_pwm). This behaviour can be configured using the
114	pwm[1-*]_stall_disable sysfs attribute. A value of 0 means the fans will shut
115	off. A value of 1 means the fans will run at auto_point1_pwm.
116	
117	The responsiveness of the ADT747x to temperature changes can be configured.
118	This allows smoothing of the fan speed transition. To set the transition time
119	set the value in ms in the temp[1-*]_smoothing sysfs attribute.
120	
121	Notes
122	-----
123	
124	The nVidia binary driver presents an ADT7473 chip via an on-card i2c bus.
125	Unfortunately, they fail to set the i2c adapter class, so this driver may
126	fail to find the chip until the nvidia driver is patched.
Hide Line Numbers


About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog