summaryrefslogtreecommitdiff
path: root/sys/dev/i2c
diff options
context:
space:
mode:
authorTheo de Raadt <deraadt@cvs.openbsd.org>2008-04-20 00:22:40 +0000
committerTheo de Raadt <deraadt@cvs.openbsd.org>2008-04-20 00:22:40 +0000
commit11a1205d37c75de7e78b7af8a8da94e15ea1f004 (patch)
tree89c63bc6e6589bd87ac059c408b340a7006ac97e /sys/dev/i2c
parent14c68379e11eb1bc132d027fb5efd42c0075d150 (diff)
two more i2c probe checks. adt has split off or been sold to ON
semi, so now even more data sheets are available at http://www.onsemi.com/PowerSolutions/parametrics.do?id=2127 so if people want to help write drivers...
Diffstat (limited to 'sys/dev/i2c')
-rw-r--r--sys/dev/i2c/i2c_scan.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/dev/i2c/i2c_scan.c b/sys/dev/i2c/i2c_scan.c
index e538434e6a2..f70f4388a2c 100644
--- a/sys/dev/i2c/i2c_scan.c
+++ b/sys/dev/i2c/i2c_scan.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: i2c_scan.c,v 1.124 2008/04/18 19:28:44 deraadt Exp $ */
+/* $OpenBSD: i2c_scan.c,v 1.125 2008/04/20 00:22:39 deraadt Exp $ */
/*
* Copyright (c) 2005 Theo de Raadt <deraadt@openbsd.org>
@@ -510,13 +510,16 @@ iic_probe_sensor(struct device *self, u_int8_t addr)
name = "adt7475";
else if (iicprobe(0x3d) == 0x27 &&
(iicprobe(0x3f) == 0x60 || iicprobe(0x3f) == 0x6a))
- name = "adm1027"; /* complete check */
+ name = "adm1027"; /* or adt7463 */
else if (iicprobe(0x3d) == 0x27 &&
(iicprobe(0x3f) == 0x62 || iicprobe(0x3f) == 0x6a))
name = "adt7460"; /* complete check */
else if ((addr == 0x2c || addr == 0x2e) &&
iicprobe(0x3d) == 0x62 && iicprobe(0x3f) == 0x04)
name = "adt7462";
+ else if (addr == 0x4c &&
+ iicprobe(0x3d) == 0x66 && iicprobe(0x3f) == 0x02)
+ name = "adt7466";
else if (addr == 0x2e &&
iicprobe(0x3d) == 0x68 && (iicprobe(0x3f) & 0xf0) == 0x70)
name = "adt7467"; /* or adt7468 */