summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgroeck <groeck@7894878c-1315-0410-8ee3-d5d059ff63e0>2011-07-08 14:35:37 +0000
committergroeck <groeck@7894878c-1315-0410-8ee3-d5d059ff63e0>2011-07-08 14:35:37 +0000
commit436cb289ee0e2212e0b14e0ed669b49226e9264e (patch)
tree0c836f63d760aad780c165967d57911d0309c7e0
parentf9e0745dfd9accd8cd99742106cb2e5ec62bda27 (diff)
downloadlm-sensors-436cb289ee0e2212e0b14e0ed669b49226e9264e.tar.gz
Add code to detect SA56004.
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@5983 7894878c-1315-0410-8ee3-d5d059ff63e0
-rw-r--r--CHANGES1
-rwxr-xr-xprog/detect/sensors-detect16
2 files changed, 15 insertions, 2 deletions
diff --git a/CHANGES b/CHANGES
index 48a5b8ad..a3404a8a 100644
--- a/CHANGES
+++ b/CHANGES
@@ -16,6 +16,7 @@ SVN HEAD
Add detection of MAX6642
Add detection of ITE IT8772E
Don't advertise the ipmisensors driver
+ Add detection of SA56004
3.3.0 (2011-03-28)
Makefile: Check for bison and flex
diff --git a/prog/detect/sensors-detect b/prog/detect/sensors-detect
index c12546cb..b4ff3578 100755
--- a/prog/detect/sensors-detect
+++ b/prog/detect/sensors-detect
@@ -1055,6 +1055,11 @@ use vars qw(@i2c_adapter_names);
i2c_addrs => [0x4c..0x4d],
i2c_detect => sub { lm90_detect(@_, 13); },
}, {
+ name => "NXP/Philips SA56004",
+ driver => "lm90",
+ i2c_addrs => [0x48..0x4f],
+ i2c_detect => sub { lm90_detect(@_, 14); },
+ }, {
name => "Analog Devices ADT7481",
driver => "to-be-written",
i2c_addrs => [0x4c, 0x4b],
@@ -4352,11 +4357,11 @@ sub max6680_95_detect
# 6 = MAX6646/MAX6647/MAX6648/MAX6649/MAX6692,
# 8 = W83L771W/G, 9 = TMP401, 10 = TMP411,
# 11 = W83L771AWG/ASG, 12 = MAX6690,
-# 13 = ADT7461A/NCT1008
+# 13 = ADT7461A/NCT1008, 14 = SA56004
# Registers used:
# 0x03: Configuration
# 0x04: Conversion rate
-# 0xbf: Configuration 2 (National Semiconductor and Winbond only)
+# 0xbf: Configuration 2 (National Semiconductor, Winbond, and Philips only)
# 0xfe: Manufacturer ID
# 0xff: Chip ID / die revision
sub lm90_detect
@@ -4457,6 +4462,13 @@ sub lm90_detect
return if $mid != 0x41; # Analog Devices
return 8 if $cid == 0x57; # ADT7461A, NCT1008
}
+ if ($chip == 14) {
+ return if ($conf & 0x2a) != 0;
+ return if ($conf2 & 0xfe) != 0;
+ return if $rate > 0x09;
+ return if $mid != 0xa1; # NXP Semiconductor/Philips
+ return 6 if $cid == 0x00; # SA56004
+ }
return;
}