diff --git a/CHANGES b/CHANGES index 8d4861eb..df4f97fe 100644 --- a/CHANGES +++ b/CHANGES @@ -28,6 +28,7 @@ SVN HEAD Fixed address ranges checked for SMSC EMC1403 and EMC1404. Fix detection of SPD EEPROM on DDR3 memory modules Add detection of AMD family 12h and 14h thermal sensors + Add detection of EMC6D103S 3.2.0 (2010-10-10) libsensors: Increase MAX_SENSORS_PER_TYPE to 24 diff --git a/prog/detect/sensors-detect b/prog/detect/sensors-detect index 6e1dc94d..b345d93b 100755 --- a/prog/detect/sensors-detect +++ b/prog/detect/sensors-detect @@ -551,6 +551,11 @@ use vars qw(@i2c_adapter_names); driver => "lm85", i2c_addrs => [0x2c..0x2e], i2c_detect => sub { lm85_detect(@_, 6); }, + }, { + name => "SMSC EMC6D103S", + driver => "to-be-written", # lm85 + i2c_addrs => [0x2c..0x2e], + i2c_detect => sub { lm85_detect(@_, 8); }, }, { name => "Winbond WPCD377I", driver => "not-a-sensor", @@ -4741,7 +4746,7 @@ sub andigilog_aSC7511_detect # Chip to detect: 0 = LM85, 1 = LM96000, 2 = ADM1027, 3 = ADT7463, # 4 = EMC6D100/101, 5 = EMC6D102, 6 = EMC6D103, -# 7 = WPCD377I (no sensors) +# 7 = WPCD377I (no sensors), 8 = EMC6D103S # Registers used: # 0x3e: Vendor register # 0x3d: Device ID register (Analog Devices only) @@ -4776,7 +4781,11 @@ sub lm85_detect return if $verstep != 0x65; # EMC6D102 } elsif ($chip == 6) { return if $vendor != 0x5c; # SMSC - return if $verstep != 0x68; # EMC6D103 + return if $verstep != 0x68 # EMC6D103 A0 + && $verstep != 0x69; # EMC6D103 A1 + } elsif ($chip == 8) { + return if $vendor != 0x5c; # SMSC + return if $verstep != 0x6a; # EMC6D103S } if ($vendor == 0x41) { # Analog Devices