xref: /linux/Documentation/hwmon/lm90.rst (revision 2c6cb6c557858672cafb6a5dc89a1df993420831)
17ebd8b66SMauro Carvalho ChehabKernel driver lm90
27ebd8b66SMauro Carvalho Chehab==================
37ebd8b66SMauro Carvalho Chehab
47ebd8b66SMauro Carvalho ChehabSupported chips:
57ebd8b66SMauro Carvalho Chehab
6c09472fcSGuenter Roeck  * National Semiconductor LM84
7c09472fcSGuenter Roeck
8c09472fcSGuenter Roeck    Prefix: 'lm84'
9c09472fcSGuenter Roeck
10c09472fcSGuenter Roeck    Addresses scanned: I2C 0x18 - 0x1a, 0x29 - 0x2b, 0x4c - 0x4e
11c09472fcSGuenter Roeck
12c09472fcSGuenter Roeck    Datasheet: Publicly available at the National Semiconductor website
13c09472fcSGuenter Roeck
147ebd8b66SMauro Carvalho Chehab  * National Semiconductor LM90
157ebd8b66SMauro Carvalho Chehab
167ebd8b66SMauro Carvalho Chehab    Prefix: 'lm90'
177ebd8b66SMauro Carvalho Chehab
187ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x4c
197ebd8b66SMauro Carvalho Chehab
207ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at the National Semiconductor website
217ebd8b66SMauro Carvalho Chehab
227ebd8b66SMauro Carvalho Chehab	       http://www.national.com/pf/LM/LM90.html
237ebd8b66SMauro Carvalho Chehab
247ebd8b66SMauro Carvalho Chehab  * National Semiconductor LM89
257ebd8b66SMauro Carvalho Chehab
267ebd8b66SMauro Carvalho Chehab    Prefix: 'lm89' (no auto-detection)
277ebd8b66SMauro Carvalho Chehab
287ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x4c and 0x4d
297ebd8b66SMauro Carvalho Chehab
307ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at the National Semiconductor website
317ebd8b66SMauro Carvalho Chehab
327ebd8b66SMauro Carvalho Chehab	       http://www.national.com/mpf/LM/LM89.html
337ebd8b66SMauro Carvalho Chehab
347ebd8b66SMauro Carvalho Chehab  * National Semiconductor LM99
357ebd8b66SMauro Carvalho Chehab
367ebd8b66SMauro Carvalho Chehab    Prefix: 'lm99'
377ebd8b66SMauro Carvalho Chehab
387ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x4c and 0x4d
397ebd8b66SMauro Carvalho Chehab
407ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at the National Semiconductor website
417ebd8b66SMauro Carvalho Chehab
427ebd8b66SMauro Carvalho Chehab	       http://www.national.com/pf/LM/LM99.html
437ebd8b66SMauro Carvalho Chehab
447ebd8b66SMauro Carvalho Chehab  * National Semiconductor LM86
457ebd8b66SMauro Carvalho Chehab
467ebd8b66SMauro Carvalho Chehab    Prefix: 'lm86'
477ebd8b66SMauro Carvalho Chehab
487ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x4c
497ebd8b66SMauro Carvalho Chehab
507ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at the National Semiconductor website
517ebd8b66SMauro Carvalho Chehab
527ebd8b66SMauro Carvalho Chehab	       http://www.national.com/mpf/LM/LM86.html
537ebd8b66SMauro Carvalho Chehab
540c6bffd4SGuenter Roeck  * Analog Devices ADM1021
550c6bffd4SGuenter Roeck
560c6bffd4SGuenter Roeck    Prefix: 'adm1021'
570c6bffd4SGuenter Roeck
580c6bffd4SGuenter Roeck    Addresses scanned: I2C 0x18 - 0x1a, 0x29 - 0x2b, 0x4c - 0x4e
590c6bffd4SGuenter Roeck
600c6bffd4SGuenter Roeck    Datasheet: Publicly available at the Analog Devices website
610c6bffd4SGuenter Roeck
620c6bffd4SGuenter Roeck  * Analog Devices ADM1021A/ADM1023
630c6bffd4SGuenter Roeck
640c6bffd4SGuenter Roeck    Prefix: 'adm1023'
650c6bffd4SGuenter Roeck
660c6bffd4SGuenter Roeck    Addresses scanned: I2C 0x18 - 0x1a, 0x29 - 0x2b, 0x4c - 0x4e
670c6bffd4SGuenter Roeck
680c6bffd4SGuenter Roeck    Datasheet: Publicly available at the Analog Devices website
690c6bffd4SGuenter Roeck
707ebd8b66SMauro Carvalho Chehab  * Analog Devices ADM1032
717ebd8b66SMauro Carvalho Chehab
727ebd8b66SMauro Carvalho Chehab    Prefix: 'adm1032'
737ebd8b66SMauro Carvalho Chehab
747ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x4c and 0x4d
757ebd8b66SMauro Carvalho Chehab
767ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at the ON Semiconductor website
777ebd8b66SMauro Carvalho Chehab
786c7b66beSAlexander A. Klimov	       https://www.onsemi.com/PowerSolutions/product.do?id=ADM1032
797ebd8b66SMauro Carvalho Chehab
807ebd8b66SMauro Carvalho Chehab  * Analog Devices ADT7461
817ebd8b66SMauro Carvalho Chehab
827ebd8b66SMauro Carvalho Chehab    Prefix: 'adt7461'
837ebd8b66SMauro Carvalho Chehab
847ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x4c and 0x4d
857ebd8b66SMauro Carvalho Chehab
867ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at the ON Semiconductor website
877ebd8b66SMauro Carvalho Chehab
886c7b66beSAlexander A. Klimov	       https://www.onsemi.com/PowerSolutions/product.do?id=ADT7461
897ebd8b66SMauro Carvalho Chehab
907ebd8b66SMauro Carvalho Chehab  * Analog Devices ADT7461A
917ebd8b66SMauro Carvalho Chehab
927ebd8b66SMauro Carvalho Chehab    Prefix: 'adt7461a'
937ebd8b66SMauro Carvalho Chehab
947ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x4c and 0x4d
957ebd8b66SMauro Carvalho Chehab
967ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at the ON Semiconductor website
977ebd8b66SMauro Carvalho Chehab
986c7b66beSAlexander A. Klimov	       https://www.onsemi.com/PowerSolutions/product.do?id=ADT7461A
997ebd8b66SMauro Carvalho Chehab
100a9f3d3a8SGuenter Roeck  * Analog Devices ADT7481
101a9f3d3a8SGuenter Roeck
102a9f3d3a8SGuenter Roeck    Prefix: 'adt7481'
103a9f3d3a8SGuenter Roeck
104a9f3d3a8SGuenter Roeck    Addresses scanned: I2C 0x4b and 0x4c
105a9f3d3a8SGuenter Roeck
106a9f3d3a8SGuenter Roeck    Datasheet: Publicly available at the ON Semiconductor website
107a9f3d3a8SGuenter Roeck
108a9f3d3a8SGuenter Roeck	       https://www.onsemi.com/PowerSolutions/product.do?id=ADT7481
109a9f3d3a8SGuenter Roeck
110a9f3d3a8SGuenter Roeck  * Analog Devices ADT7482
111a9f3d3a8SGuenter Roeck
112a9f3d3a8SGuenter Roeck    Prefix: 'adt7482'
113a9f3d3a8SGuenter Roeck
114a9f3d3a8SGuenter Roeck    Addresses scanned: I2C 0x4c
115a9f3d3a8SGuenter Roeck
116a9f3d3a8SGuenter Roeck    Datasheet: Publicly available at the ON Semiconductor website
117a9f3d3a8SGuenter Roeck
118a9f3d3a8SGuenter Roeck	       https://www.onsemi.com/PowerSolutions/product.do?id=ADT7482
119a9f3d3a8SGuenter Roeck
120a9f3d3a8SGuenter Roeck  * Analog Devices ADT7483A
121a9f3d3a8SGuenter Roeck
122a9f3d3a8SGuenter Roeck    Prefix: 'adt7483a'
123a9f3d3a8SGuenter Roeck
124a9f3d3a8SGuenter Roeck    Addresses scanned: I2C 0x18, 0x19, 0x1a, 0x29, 0x2a, 0x2b, 0x4c, 0x4d, 0x4e
125a9f3d3a8SGuenter Roeck
126a9f3d3a8SGuenter Roeck    Datasheet: Publicly available at the ON Semiconductor website
127a9f3d3a8SGuenter Roeck
128a9f3d3a8SGuenter Roeck	       https://www.onsemi.com/PowerSolutions/product.do?id=ADT7483A
129a9f3d3a8SGuenter Roeck
1307ebd8b66SMauro Carvalho Chehab  * ON Semiconductor NCT1008
1317ebd8b66SMauro Carvalho Chehab
1327ebd8b66SMauro Carvalho Chehab    Prefix: 'nct1008'
1337ebd8b66SMauro Carvalho Chehab
1347ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x4c and 0x4d
1357ebd8b66SMauro Carvalho Chehab
1367ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at the ON Semiconductor website
1377ebd8b66SMauro Carvalho Chehab
1386c7b66beSAlexander A. Klimov	       https://www.onsemi.com/PowerSolutions/product.do?id=NCT1008
1397ebd8b66SMauro Carvalho Chehab
140af4540b1SGuenter Roeck  * ON Semiconductor NCT210
141af4540b1SGuenter Roeck
142af4540b1SGuenter Roeck    Prefix: 'adm1021'
143af4540b1SGuenter Roeck
144af4540b1SGuenter Roeck    Addresses scanned: I2C 0x18 - 0x1a, 0x29 - 0x2b, 0x4c - 0x4e
145af4540b1SGuenter Roeck
146af4540b1SGuenter Roeck    Datasheet: Publicly available at the ON Semiconductor website
147af4540b1SGuenter Roeck
148af4540b1SGuenter Roeck	       https://www.onsemi.com/PowerSolutions/product.do?id=NCT210
149af4540b1SGuenter Roeck
150*2c6cb6c5SGuenter Roeck  * ON Semiconductor NCT214
151*2c6cb6c5SGuenter Roeck
152*2c6cb6c5SGuenter Roeck    Prefix: 'nct214'
153*2c6cb6c5SGuenter Roeck
154*2c6cb6c5SGuenter Roeck    Addresses scanned: I2C 0x18 - 0x1a, 0x29 - 0x2b, 0x4c - 0x4e
155*2c6cb6c5SGuenter Roeck
156*2c6cb6c5SGuenter Roeck    Datasheet: Publicly available at the ON Semiconductor website
157*2c6cb6c5SGuenter Roeck
158*2c6cb6c5SGuenter Roeck	       https://www.onsemi.com/PowerSolutions/product.do?id=NCT214
159*2c6cb6c5SGuenter Roeck
160*2c6cb6c5SGuenter Roeck  * ON Semiconductor NCT72
161*2c6cb6c5SGuenter Roeck
162*2c6cb6c5SGuenter Roeck    Prefix: 'nct72'
163*2c6cb6c5SGuenter Roeck
164*2c6cb6c5SGuenter Roeck    Addresses scanned: I2C 0x4c - 0x4d
165*2c6cb6c5SGuenter Roeck
166*2c6cb6c5SGuenter Roeck    Datasheet: Publicly available at the ON Semiconductor website
167*2c6cb6c5SGuenter Roeck
168*2c6cb6c5SGuenter Roeck	       https://www.onsemi.com/PowerSolutions/product.do?id=NCT72
169*2c6cb6c5SGuenter Roeck
170c09472fcSGuenter Roeck  * Maxim MAX1617
171c09472fcSGuenter Roeck
172c09472fcSGuenter Roeck    Prefix: 'max1617'
173c09472fcSGuenter Roeck
174c09472fcSGuenter Roeck    Addresses scanned: I2C 0x18 - 0x1a, 0x29 - 0x2b, 0x4c - 0x4e
175c09472fcSGuenter Roeck
176c09472fcSGuenter Roeck    Datasheet: Publicly available at the Maxim website
177c09472fcSGuenter Roeck
178c09472fcSGuenter Roeck  * Maxim MAX1617A
179c09472fcSGuenter Roeck
180c09472fcSGuenter Roeck    Prefix: 'max1617a'
181c09472fcSGuenter Roeck
182c09472fcSGuenter Roeck    Addresses scanned: I2C 0x18 - 0x1a, 0x29 - 0x2b, 0x4c - 0x4e
183c09472fcSGuenter Roeck
184c09472fcSGuenter Roeck    Datasheet: Publicly available at the Maxim website
185c09472fcSGuenter Roeck
1863c1ecccbSGuenter Roeck  * Maxim MAX6642
1873c1ecccbSGuenter Roeck
1883c1ecccbSGuenter Roeck    Prefix: 'max6642'
1893c1ecccbSGuenter Roeck
1903c1ecccbSGuenter Roeck    Addresses scanned: I2C 0x48-0x4f
1913c1ecccbSGuenter Roeck
1923c1ecccbSGuenter Roeck    Datasheet: Publicly available at the Maxim website
1933c1ecccbSGuenter Roeck
1943c1ecccbSGuenter Roeck	       http://datasheets.maxim-ic.com/en/ds/MAX6642.pdf
1953c1ecccbSGuenter Roeck
1967ebd8b66SMauro Carvalho Chehab  * Maxim MAX6646
1977ebd8b66SMauro Carvalho Chehab
1987ebd8b66SMauro Carvalho Chehab    Prefix: 'max6646'
1997ebd8b66SMauro Carvalho Chehab
2007ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x4d
2017ebd8b66SMauro Carvalho Chehab
2027ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at the Maxim website
2037ebd8b66SMauro Carvalho Chehab
2047ebd8b66SMauro Carvalho Chehab	       http://www.maxim-ic.com/quick_view2.cfm/qv_pk/3497
2057ebd8b66SMauro Carvalho Chehab
2067ebd8b66SMauro Carvalho Chehab  * Maxim MAX6647
2077ebd8b66SMauro Carvalho Chehab
2087ebd8b66SMauro Carvalho Chehab    Prefix: 'max6646'
2097ebd8b66SMauro Carvalho Chehab
2107ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x4e
2117ebd8b66SMauro Carvalho Chehab
2127ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at the Maxim website
2137ebd8b66SMauro Carvalho Chehab
2147ebd8b66SMauro Carvalho Chehab	       http://www.maxim-ic.com/quick_view2.cfm/qv_pk/3497
2157ebd8b66SMauro Carvalho Chehab
2167ebd8b66SMauro Carvalho Chehab  * Maxim MAX6648
2177ebd8b66SMauro Carvalho Chehab
218904a6fe6SGuenter Roeck    Prefix: 'max6648'
2197ebd8b66SMauro Carvalho Chehab
2207ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x4c
2217ebd8b66SMauro Carvalho Chehab
2227ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at the Maxim website
2237ebd8b66SMauro Carvalho Chehab
2247ebd8b66SMauro Carvalho Chehab	       http://www.maxim-ic.com/quick_view2.cfm/qv_pk/3500
2257ebd8b66SMauro Carvalho Chehab
2267ebd8b66SMauro Carvalho Chehab  * Maxim MAX6649
2277ebd8b66SMauro Carvalho Chehab
2287ebd8b66SMauro Carvalho Chehab    Prefix: 'max6646'
2297ebd8b66SMauro Carvalho Chehab
2307ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x4c
2317ebd8b66SMauro Carvalho Chehab
2327ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at the Maxim website
2337ebd8b66SMauro Carvalho Chehab
2347ebd8b66SMauro Carvalho Chehab	       http://www.maxim-ic.com/quick_view2.cfm/qv_pk/3497
2357ebd8b66SMauro Carvalho Chehab
236229d495dSJosh Lehan  * Maxim MAX6654
237229d495dSJosh Lehan
238229d495dSJosh Lehan    Prefix: 'max6654'
239229d495dSJosh Lehan
240229d495dSJosh Lehan    Addresses scanned: I2C 0x18, 0x19, 0x1a, 0x29, 0x2a, 0x2b,
241229d495dSJosh Lehan
242229d495dSJosh Lehan			   0x4c, 0x4d and 0x4e
243229d495dSJosh Lehan
244229d495dSJosh Lehan    Datasheet: Publicly available at the Maxim website
245229d495dSJosh Lehan
246229d495dSJosh Lehan	       https://www.maximintegrated.com/en/products/sensors/MAX6654.html
247229d495dSJosh Lehan
2487ebd8b66SMauro Carvalho Chehab  * Maxim MAX6657
2497ebd8b66SMauro Carvalho Chehab
2507ebd8b66SMauro Carvalho Chehab    Prefix: 'max6657'
2517ebd8b66SMauro Carvalho Chehab
2527ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x4c
2537ebd8b66SMauro Carvalho Chehab
2547ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at the Maxim website
2557ebd8b66SMauro Carvalho Chehab
2567ebd8b66SMauro Carvalho Chehab	       http://www.maxim-ic.com/quick_view2.cfm/qv_pk/2578
2577ebd8b66SMauro Carvalho Chehab
2587ebd8b66SMauro Carvalho Chehab  * Maxim MAX6658
2597ebd8b66SMauro Carvalho Chehab
2607ebd8b66SMauro Carvalho Chehab    Prefix: 'max6657'
2617ebd8b66SMauro Carvalho Chehab
2627ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x4c
2637ebd8b66SMauro Carvalho Chehab
2647ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at the Maxim website
2657ebd8b66SMauro Carvalho Chehab
2667ebd8b66SMauro Carvalho Chehab	       http://www.maxim-ic.com/quick_view2.cfm/qv_pk/2578
2677ebd8b66SMauro Carvalho Chehab
2687ebd8b66SMauro Carvalho Chehab  * Maxim MAX6659
2697ebd8b66SMauro Carvalho Chehab
2707ebd8b66SMauro Carvalho Chehab    Prefix: 'max6659'
2717ebd8b66SMauro Carvalho Chehab
2727ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x4c, 0x4d, 0x4e
2737ebd8b66SMauro Carvalho Chehab
2747ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at the Maxim website
2757ebd8b66SMauro Carvalho Chehab
2767ebd8b66SMauro Carvalho Chehab	       http://www.maxim-ic.com/quick_view2.cfm/qv_pk/2578
2777ebd8b66SMauro Carvalho Chehab
2787ebd8b66SMauro Carvalho Chehab  * Maxim MAX6680
2797ebd8b66SMauro Carvalho Chehab
2807ebd8b66SMauro Carvalho Chehab    Prefix: 'max6680'
2817ebd8b66SMauro Carvalho Chehab
2827ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x18, 0x19, 0x1a, 0x29, 0x2a, 0x2b,
2837ebd8b66SMauro Carvalho Chehab
2847ebd8b66SMauro Carvalho Chehab			   0x4c, 0x4d and 0x4e
2857ebd8b66SMauro Carvalho Chehab
2867ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at the Maxim website
2877ebd8b66SMauro Carvalho Chehab
2887ebd8b66SMauro Carvalho Chehab	       http://www.maxim-ic.com/quick_view2.cfm/qv_pk/3370
2897ebd8b66SMauro Carvalho Chehab
2907ebd8b66SMauro Carvalho Chehab  * Maxim MAX6681
2917ebd8b66SMauro Carvalho Chehab
2927ebd8b66SMauro Carvalho Chehab    Prefix: 'max6680'
2937ebd8b66SMauro Carvalho Chehab
2947ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x18, 0x19, 0x1a, 0x29, 0x2a, 0x2b,
2957ebd8b66SMauro Carvalho Chehab
2967ebd8b66SMauro Carvalho Chehab			   0x4c, 0x4d and 0x4e
2977ebd8b66SMauro Carvalho Chehab
2987ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at the Maxim website
2997ebd8b66SMauro Carvalho Chehab
3007ebd8b66SMauro Carvalho Chehab	       http://www.maxim-ic.com/quick_view2.cfm/qv_pk/3370
3017ebd8b66SMauro Carvalho Chehab
3027ebd8b66SMauro Carvalho Chehab  * Maxim MAX6692
3037ebd8b66SMauro Carvalho Chehab
304904a6fe6SGuenter Roeck    Prefix: 'max6648'
3057ebd8b66SMauro Carvalho Chehab
3067ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x4c
3077ebd8b66SMauro Carvalho Chehab
3087ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at the Maxim website
3097ebd8b66SMauro Carvalho Chehab
3107ebd8b66SMauro Carvalho Chehab	       http://www.maxim-ic.com/quick_view2.cfm/qv_pk/3500
3117ebd8b66SMauro Carvalho Chehab
3127ebd8b66SMauro Carvalho Chehab  * Maxim MAX6695
3137ebd8b66SMauro Carvalho Chehab
3147ebd8b66SMauro Carvalho Chehab    Prefix: 'max6695'
3157ebd8b66SMauro Carvalho Chehab
3167ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x18
3177ebd8b66SMauro Carvalho Chehab
3187ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at the Maxim website
3197ebd8b66SMauro Carvalho Chehab
3207ebd8b66SMauro Carvalho Chehab	       http://www.maxim-ic.com/datasheet/index.mvp/id/4199
3217ebd8b66SMauro Carvalho Chehab
3227ebd8b66SMauro Carvalho Chehab  * Maxim MAX6696
3237ebd8b66SMauro Carvalho Chehab
3247ebd8b66SMauro Carvalho Chehab    Prefix: 'max6695'
3257ebd8b66SMauro Carvalho Chehab
3267ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x18, 0x19, 0x1a, 0x29, 0x2a, 0x2b,
3277ebd8b66SMauro Carvalho Chehab
3287ebd8b66SMauro Carvalho Chehab			   0x4c, 0x4d and 0x4e
3297ebd8b66SMauro Carvalho Chehab
3307ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at the Maxim website
3317ebd8b66SMauro Carvalho Chehab
3327ebd8b66SMauro Carvalho Chehab	       http://www.maxim-ic.com/datasheet/index.mvp/id/4199
3337ebd8b66SMauro Carvalho Chehab
3347ebd8b66SMauro Carvalho Chehab  * Winbond/Nuvoton W83L771W/G
3357ebd8b66SMauro Carvalho Chehab
3367ebd8b66SMauro Carvalho Chehab    Prefix: 'w83l771'
3377ebd8b66SMauro Carvalho Chehab
3387ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x4c
3397ebd8b66SMauro Carvalho Chehab
3407ebd8b66SMauro Carvalho Chehab    Datasheet: No longer available
3417ebd8b66SMauro Carvalho Chehab
3427ebd8b66SMauro Carvalho Chehab  * Winbond/Nuvoton W83L771AWG/ASG
3437ebd8b66SMauro Carvalho Chehab
3447ebd8b66SMauro Carvalho Chehab    Prefix: 'w83l771'
3457ebd8b66SMauro Carvalho Chehab
3467ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x4c
3477ebd8b66SMauro Carvalho Chehab
3487ebd8b66SMauro Carvalho Chehab    Datasheet: Not publicly available, can be requested from Nuvoton
3497ebd8b66SMauro Carvalho Chehab
3507ebd8b66SMauro Carvalho Chehab  * Philips/NXP SA56004X
3517ebd8b66SMauro Carvalho Chehab
3527ebd8b66SMauro Carvalho Chehab    Prefix: 'sa56004'
3537ebd8b66SMauro Carvalho Chehab
3547ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x48 through 0x4F
3557ebd8b66SMauro Carvalho Chehab
3567ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at NXP website
3577ebd8b66SMauro Carvalho Chehab
3587ebd8b66SMauro Carvalho Chehab	       http://ics.nxp.com/products/interface/datasheet/sa56004x.pdf
3597ebd8b66SMauro Carvalho Chehab
3607ebd8b66SMauro Carvalho Chehab  * GMT G781
3617ebd8b66SMauro Carvalho Chehab
3627ebd8b66SMauro Carvalho Chehab    Prefix: 'g781'
3637ebd8b66SMauro Carvalho Chehab
3647ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x4c, 0x4d
3657ebd8b66SMauro Carvalho Chehab
3667ebd8b66SMauro Carvalho Chehab    Datasheet: Not publicly available from GMT
3677ebd8b66SMauro Carvalho Chehab
3687ebd8b66SMauro Carvalho Chehab  * Texas Instruments TMP451
3697ebd8b66SMauro Carvalho Chehab
3707ebd8b66SMauro Carvalho Chehab    Prefix: 'tmp451'
3717ebd8b66SMauro Carvalho Chehab
3727ebd8b66SMauro Carvalho Chehab    Addresses scanned: I2C 0x4c
3737ebd8b66SMauro Carvalho Chehab
3747ebd8b66SMauro Carvalho Chehab    Datasheet: Publicly available at TI website
3757ebd8b66SMauro Carvalho Chehab
3766c7b66beSAlexander A. Klimov	       https://www.ti.com/litv/pdf/sbos686
3777ebd8b66SMauro Carvalho Chehab
378f8344f76SGuenter Roeck  * Texas Instruments TMP461
379f8344f76SGuenter Roeck
380f8344f76SGuenter Roeck    Prefix: 'tmp461'
381f8344f76SGuenter Roeck
382f8344f76SGuenter Roeck    Addresses scanned: I2C 0x48 through 0x4F
383f8344f76SGuenter Roeck
384f8344f76SGuenter Roeck    Datasheet: Publicly available at TI website
385f8344f76SGuenter Roeck
386f8344f76SGuenter Roeck	       https://www.ti.com/lit/gpn/tmp461
387f8344f76SGuenter Roeck
38837d1dc8dSGuenter Roeck  * Philips NE1617, NE1617A
38937d1dc8dSGuenter Roeck
39037d1dc8dSGuenter Roeck    Prefix: 'max1617' (probably detected as a max1617)
39137d1dc8dSGuenter Roeck
39237d1dc8dSGuenter Roeck    Addresses scanned: I2C 0x18 - 0x1a, 0x29 - 0x2b, 0x4c - 0x4e
39337d1dc8dSGuenter Roeck
39437d1dc8dSGuenter Roeck    Datasheets: Publicly available at the Philips website
39537d1dc8dSGuenter Roeck
39637d1dc8dSGuenter Roeck  * Genesys Logic GL523SM
39737d1dc8dSGuenter Roeck
39837d1dc8dSGuenter Roeck    Prefix: 'gl523sm'
39937d1dc8dSGuenter Roeck
40037d1dc8dSGuenter Roeck    Addresses scanned: I2C 0x18 - 0x1a, 0x29 - 0x2b, 0x4c - 0x4e
40137d1dc8dSGuenter Roeck
40237d1dc8dSGuenter Roeck    Datasheet:
40337d1dc8dSGuenter Roeck
40437d1dc8dSGuenter Roeck  * TI THMC10
40537d1dc8dSGuenter Roeck
40637d1dc8dSGuenter Roeck    Prefix: 'thmc10'
40737d1dc8dSGuenter Roeck
40837d1dc8dSGuenter Roeck    Addresses scanned: I2C 0x18 - 0x1a, 0x29 - 0x2b, 0x4c - 0x4e
40937d1dc8dSGuenter Roeck
41037d1dc8dSGuenter Roeck    Datasheet: Publicly available at the TI website
41137d1dc8dSGuenter Roeck
41237d1dc8dSGuenter Roeck  * Onsemi MC1066
41337d1dc8dSGuenter Roeck
41437d1dc8dSGuenter Roeck    Prefix: 'mc1066'
41537d1dc8dSGuenter Roeck
41637d1dc8dSGuenter Roeck    Addresses scanned: I2C 0x18 - 0x1a, 0x29 - 0x2b, 0x4c - 0x4e
41737d1dc8dSGuenter Roeck
41837d1dc8dSGuenter Roeck    Datasheet: Publicly available at the Onsemi website
41937d1dc8dSGuenter Roeck
4207ebd8b66SMauro Carvalho ChehabAuthor: Jean Delvare <jdelvare@suse.de>
4217ebd8b66SMauro Carvalho Chehab
4227ebd8b66SMauro Carvalho Chehab
4237ebd8b66SMauro Carvalho ChehabDescription
4247ebd8b66SMauro Carvalho Chehab-----------
4257ebd8b66SMauro Carvalho Chehab
4267ebd8b66SMauro Carvalho ChehabThe LM90 is a digital temperature sensor. It senses its own temperature as
4277ebd8b66SMauro Carvalho Chehabwell as the temperature of up to one external diode. It is compatible
4287ebd8b66SMauro Carvalho Chehabwith many other devices, many of which are supported by this driver.
4297ebd8b66SMauro Carvalho Chehab
430c09472fcSGuenter RoeckThe family of chips supported by this driver is derived from MAX1617.
431c09472fcSGuenter RoeckThis chip as well as various compatible chips support a local and a remote
432c09472fcSGuenter Roecktemperature sensor with 8 bit accuracy. Later chips provide improved accuracy
433c09472fcSGuenter Roeckand other additional features such as hysteresis and temperature offset
434c09472fcSGuenter Roeckregisters.
435c09472fcSGuenter Roeck
4367ebd8b66SMauro Carvalho ChehabNote that there is no easy way to differentiate between the MAX6657,
4377ebd8b66SMauro Carvalho ChehabMAX6658 and MAX6659 variants. The extra features of the MAX6659 are only
4387ebd8b66SMauro Carvalho Chehabsupported by this driver if the chip is located at address 0x4d or 0x4e,
4397ebd8b66SMauro Carvalho Chehabor if the chip type is explicitly selected as max6659.
4407ebd8b66SMauro Carvalho ChehabThe MAX6680 and MAX6681 only differ in their pinout, therefore they obviously
4417ebd8b66SMauro Carvalho Chehabcan't (and don't need to) be distinguished.
4427ebd8b66SMauro Carvalho Chehab
4437ebd8b66SMauro Carvalho ChehabThe different chipsets of the family are not strictly identical, although
4447ebd8b66SMauro Carvalho Chehabvery similar. For reference, here comes a non-exhaustive list of specific
4457ebd8b66SMauro Carvalho Chehabfeatures:
4467ebd8b66SMauro Carvalho Chehab
447c09472fcSGuenter RoeckLM84:
448c09472fcSGuenter Roeck  * 8 bit sensor resolution
449c09472fcSGuenter Roeck
45037d1dc8dSGuenter RoeckADM1021, GL523SM, MAX1617, NE1617, NE1617A, THMC10:
451c09472fcSGuenter Roeck  * 8 bit sensor resolution
452c09472fcSGuenter Roeck  * Low temperature limits
453c09472fcSGuenter Roeck
454af4540b1SGuenter RoeckNCT210:
455af4540b1SGuenter Roeck  * 11 bit sensor resolution for remote temperature sensor
456af4540b1SGuenter Roeck  * Low temperature limits
457af4540b1SGuenter Roeck
4580c6bffd4SGuenter RoeckADM1021A, ADM1023:
4590c6bffd4SGuenter Roeck  * Temperature offset register for remote temperature sensor
4600c6bffd4SGuenter Roeck  * 11 bit resolution for remote temperature sensor
4610c6bffd4SGuenter Roeck  * Low temperature limits
4620c6bffd4SGuenter Roeck
4637ebd8b66SMauro Carvalho ChehabLM90:
464c09472fcSGuenter Roeck  * 11 bit resolution for remote temperature sensor
465c09472fcSGuenter Roeck  * Temperature offset register for remote temperature sensor
466c09472fcSGuenter Roeck  * Low and critical temperature limits
467c09472fcSGuenter Roeck  * Configurable conversion rate
4687ebd8b66SMauro Carvalho Chehab  * Filter and alert configuration register at 0xBF.
4697ebd8b66SMauro Carvalho Chehab  * ALERT is triggered by temperatures over critical limits.
4707ebd8b66SMauro Carvalho Chehab
4717ebd8b66SMauro Carvalho ChehabLM86 and LM89:
4727ebd8b66SMauro Carvalho Chehab  * Same as LM90
4737ebd8b66SMauro Carvalho Chehab  * Better external channel accuracy
4747ebd8b66SMauro Carvalho Chehab
4757ebd8b66SMauro Carvalho ChehabLM99:
4767ebd8b66SMauro Carvalho Chehab  * Same as LM89
4777ebd8b66SMauro Carvalho Chehab  * External temperature shifted by 16 degrees down
4787ebd8b66SMauro Carvalho Chehab
4797ebd8b66SMauro Carvalho ChehabADM1032:
4807ebd8b66SMauro Carvalho Chehab  * Consecutive alert register at 0x22.
4817ebd8b66SMauro Carvalho Chehab  * Conversion averaging.
4827ebd8b66SMauro Carvalho Chehab  * Up to 64 conversions/s.
4837ebd8b66SMauro Carvalho Chehab  * ALERT is triggered by open remote sensor.
4847ebd8b66SMauro Carvalho Chehab  * SMBus PEC support for Write Byte and Receive Byte transactions.
4857ebd8b66SMauro Carvalho Chehab
4867ebd8b66SMauro Carvalho ChehabADT7461, ADT7461A, NCT1008:
4877ebd8b66SMauro Carvalho Chehab  * Extended temperature range (breaks compatibility)
4887ebd8b66SMauro Carvalho Chehab  * Lower resolution for remote temperature
489425f5b5dSGuenter Roeck  * SMBus PEC support for Write Byte and Receive Byte transactions.
490a9f3d3a8SGuenter Roeck  * 10 bit temperature resolution
491a9f3d3a8SGuenter Roeck
492a9f3d3a8SGuenter RoeckADT7481, ADT7482, ADT7483:
493a9f3d3a8SGuenter Roeck  * Temperature offset register
494a9f3d3a8SGuenter Roeck  * SMBus PEC support
495a9f3d3a8SGuenter Roeck  * 10 bit temperature resolution for external sensors
496a9f3d3a8SGuenter Roeck  * Two remote sensors
497a9f3d3a8SGuenter Roeck  * Selectable address (ADT7483)
4987ebd8b66SMauro Carvalho Chehab
4993c1ecccbSGuenter RoeckMAX6642:
5003c1ecccbSGuenter Roeck  * No critical limit register
5013c1ecccbSGuenter Roeck  * Conversion rate not configurable
5023c1ecccbSGuenter Roeck  * Better local resolution (10 bit)
5033c1ecccbSGuenter Roeck  * 10 bit external sensor resolution
5043c1ecccbSGuenter Roeck
505904a6fe6SGuenter RoeckMAX6646, MAX6647, MAX6649:
506904a6fe6SGuenter Roeck  * Better local resolution
507904a6fe6SGuenter Roeck  * Extended range unsigned external temperature
508904a6fe6SGuenter Roeck
509904a6fe6SGuenter RoeckMAX6648, MAX6692:
510904a6fe6SGuenter Roeck  * Better local resolution
511904a6fe6SGuenter Roeck  * Unsigned temperature
512904a6fe6SGuenter Roeck
513399a8a00SGuenter RoeckMAX6654, MAX6690:
514229d495dSJosh Lehan  * Better local resolution
515229d495dSJosh Lehan  * Selectable address
516229d495dSJosh Lehan  * Remote sensor type selection
517229d495dSJosh Lehan  * Extended temperature range
518229d495dSJosh Lehan  * Extended resolution only available when conversion rate <= 1 Hz
519229d495dSJosh Lehan
5207ebd8b66SMauro Carvalho ChehabMAX6657 and MAX6658:
5217ebd8b66SMauro Carvalho Chehab  * Better local resolution
5227ebd8b66SMauro Carvalho Chehab  * Remote sensor type selection
5237ebd8b66SMauro Carvalho Chehab
5247ebd8b66SMauro Carvalho ChehabMAX6659:
5257ebd8b66SMauro Carvalho Chehab  * Better local resolution
5267ebd8b66SMauro Carvalho Chehab  * Selectable address
5277ebd8b66SMauro Carvalho Chehab  * Second critical temperature limit
5287ebd8b66SMauro Carvalho Chehab  * Remote sensor type selection
5297ebd8b66SMauro Carvalho Chehab
5307ebd8b66SMauro Carvalho ChehabMAX6680 and MAX6681:
5317ebd8b66SMauro Carvalho Chehab  * Selectable address
5327ebd8b66SMauro Carvalho Chehab  * Remote sensor type selection
5337ebd8b66SMauro Carvalho Chehab
5347ebd8b66SMauro Carvalho ChehabMAX6695 and MAX6696:
5357ebd8b66SMauro Carvalho Chehab  * Better local resolution
5367ebd8b66SMauro Carvalho Chehab  * Selectable address (max6696)
5377ebd8b66SMauro Carvalho Chehab  * Second critical temperature limit
5387ebd8b66SMauro Carvalho Chehab  * Two remote sensors
5397ebd8b66SMauro Carvalho Chehab
5407ebd8b66SMauro Carvalho ChehabW83L771W/G
5417ebd8b66SMauro Carvalho Chehab  * The G variant is lead-free, otherwise similar to the W.
5427ebd8b66SMauro Carvalho Chehab  * Filter and alert configuration register at 0xBF
5437ebd8b66SMauro Carvalho Chehab  * Moving average (depending on conversion rate)
5447ebd8b66SMauro Carvalho Chehab
5457ebd8b66SMauro Carvalho ChehabW83L771AWG/ASG
5467ebd8b66SMauro Carvalho Chehab  * Successor of the W83L771W/G, same features.
5477ebd8b66SMauro Carvalho Chehab  * The AWG and ASG variants only differ in package format.
5487ebd8b66SMauro Carvalho Chehab  * Diode ideality factor configuration (remote sensor) at 0xE3
5497ebd8b66SMauro Carvalho Chehab
5507ebd8b66SMauro Carvalho ChehabSA56004X:
5517ebd8b66SMauro Carvalho Chehab  * Better local resolution
5527ebd8b66SMauro Carvalho Chehab
5537ebd8b66SMauro Carvalho ChehabAll temperature values are given in degrees Celsius. Resolution
5547ebd8b66SMauro Carvalho Chehabis 1.0 degree for the local temperature, 0.125 degree for the remote
555229d495dSJosh Lehantemperature, except for the MAX6654, MAX6657, MAX6658 and MAX6659 which have
556229d495dSJosh Lehana resolution of 0.125 degree for both temperatures.
5577ebd8b66SMauro Carvalho Chehab
5587ebd8b66SMauro Carvalho ChehabEach sensor has its own high and low limits, plus a critical limit.
5597ebd8b66SMauro Carvalho ChehabAdditionally, there is a relative hysteresis value common to both critical
5607ebd8b66SMauro Carvalho Chehabvalues. To make life easier to user-space applications, two absolute values
5617ebd8b66SMauro Carvalho Chehabare exported, one for each channel, but these values are of course linked.
5627ebd8b66SMauro Carvalho ChehabOnly the local hysteresis can be set from user-space, and the same delta
5637ebd8b66SMauro Carvalho Chehabapplies to the remote hysteresis.
5647ebd8b66SMauro Carvalho Chehab
5657ebd8b66SMauro Carvalho ChehabThe lm90 driver will not update its values more frequently than configured with
5667ebd8b66SMauro Carvalho Chehabthe update_interval attribute; reading them more often will do no harm, but will
5677ebd8b66SMauro Carvalho Chehabreturn 'old' values.
5687ebd8b66SMauro Carvalho Chehab
5697ebd8b66SMauro Carvalho ChehabSMBus Alert Support
5707ebd8b66SMauro Carvalho Chehab-------------------
5717ebd8b66SMauro Carvalho Chehab
5727ebd8b66SMauro Carvalho ChehabThis driver has basic support for SMBus alert. When an alert is received,
5737ebd8b66SMauro Carvalho Chehabthe status register is read and the faulty temperature channel is logged.
5747ebd8b66SMauro Carvalho Chehab
5757ebd8b66SMauro Carvalho ChehabThe Analog Devices chips (ADM1032, ADT7461 and ADT7461A) and ON
5767ebd8b66SMauro Carvalho ChehabSemiconductor chips (NCT1008) do not implement the SMBus alert protocol
5777ebd8b66SMauro Carvalho Chehabproperly so additional care is needed: the ALERT output is disabled when
5787ebd8b66SMauro Carvalho Chehaban alert is received, and is re-enabled only when the alarm is gone.
5797ebd8b66SMauro Carvalho ChehabOtherwise the chip would block alerts from other chips in the bus as long
5807ebd8b66SMauro Carvalho Chehabas the alarm is active.
5817ebd8b66SMauro Carvalho Chehab
5827ebd8b66SMauro Carvalho ChehabPEC Support
5837ebd8b66SMauro Carvalho Chehab-----------
5847ebd8b66SMauro Carvalho Chehab
5857ebd8b66SMauro Carvalho ChehabThe ADM1032 is the only chip of the family which supports PEC. It does
5867ebd8b66SMauro Carvalho Chehabnot support PEC on all transactions though, so some care must be taken.
5877ebd8b66SMauro Carvalho Chehab
5887ebd8b66SMauro Carvalho ChehabWhen reading a register value, the PEC byte is computed and sent by the
5897ebd8b66SMauro Carvalho ChehabADM1032 chip. However, in the case of a combined transaction (SMBus Read
5907ebd8b66SMauro Carvalho ChehabByte), the ADM1032 computes the CRC value over only the second half of
5917ebd8b66SMauro Carvalho Chehabthe message rather than its entirety, because it thinks the first half
5927ebd8b66SMauro Carvalho Chehabof the message belongs to a different transaction. As a result, the CRC
5937ebd8b66SMauro Carvalho Chehabvalue differs from what the SMBus master expects, and all reads fail.
5947ebd8b66SMauro Carvalho Chehab
5957ebd8b66SMauro Carvalho ChehabFor this reason, the lm90 driver will enable PEC for the ADM1032 only if
5967ebd8b66SMauro Carvalho Chehabthe bus supports the SMBus Send Byte and Receive Byte transaction types.
5977ebd8b66SMauro Carvalho ChehabThese transactions will be used to read register values, instead of
5987ebd8b66SMauro Carvalho ChehabSMBus Read Byte, and PEC will work properly.
5997ebd8b66SMauro Carvalho Chehab
6007ebd8b66SMauro Carvalho ChehabAdditionally, the ADM1032 doesn't support SMBus Send Byte with PEC.
6017ebd8b66SMauro Carvalho ChehabInstead, it will try to write the PEC value to the register (because the
6027ebd8b66SMauro Carvalho ChehabSMBus Send Byte transaction with PEC is similar to a Write Byte transaction
6037ebd8b66SMauro Carvalho Chehabwithout PEC), which is not what we want. Thus, PEC is explicitly disabled
6047ebd8b66SMauro Carvalho Chehabon SMBus Send Byte transactions in the lm90 driver.
6057ebd8b66SMauro Carvalho Chehab
6067ebd8b66SMauro Carvalho ChehabPEC on byte data transactions represents a significant increase in bandwidth
6077ebd8b66SMauro Carvalho Chehabusage (+33% for writes, +25% for reads) in normal conditions. With the need
6087ebd8b66SMauro Carvalho Chehabto use two SMBus transaction for reads, this overhead jumps to +50%. Worse,
6097ebd8b66SMauro Carvalho Chehabtwo transactions will typically mean twice as much delay waiting for
6107ebd8b66SMauro Carvalho Chehabtransaction completion, effectively doubling the register cache refresh time.
6117ebd8b66SMauro Carvalho ChehabI guess reliability comes at a price, but it's quite expensive this time.
6127ebd8b66SMauro Carvalho Chehab
6133b0982ffSGuenter RoeckSo, as not everyone might enjoy the slowdown, PEC is disabled by default and
6143b0982ffSGuenter Roeckcan be enabled through sysfs. Just write 1 to the "pec" file and PEC will be
6153b0982ffSGuenter Roeckenabled. Write 0 to that file to disable PEC again.
616