Changeset 5915 for lm-sensors/trunk/prog

Show
Ignore:
Timestamp:
02/09/11 18:12:53 (16 months ago)
Author:
groeck
Message:

Add support to detect EMC1002, EMC1033, EMC1046, EMC1047,
EMC1072, EMC1073, EMC1074, EMC1402, and EMC1424 to sensors-detect.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • lm-sensors/trunk/prog/detect/sensors-detect

    r5914 r5915  
    11961196                i2c_detect => sub { fintek_detect(@_, 7); }, 
    11971197        }, { 
     1198                name => "SMSC EMC1002", 
     1199                driver => "to-be-written", 
     1200                i2c_addrs => [0x4c, 0x4d], # 0x3c, 0x3d not probed 
     1201                i2c_detect => sub { emc1403_detect(@_, 4); }, 
     1202        }, { 
    11981203                name => "SMSC EMC1023", 
    11991204                driver => "to-be-written",      # emc1023 
     
    12011206                i2c_detect => sub { emc1023_detect(@_, 0); }, 
    12021207        }, { 
     1208                name => "SMSC EMC1033", 
     1209                driver => "to-be-written", 
     1210                i2c_addrs => [0x4c, 0x4d], # 0x3c, 0x3d not probed 
     1211                i2c_detect => sub { emc1403_detect(@_, 5); }, 
     1212        }, { 
    12031213                name => "SMSC EMC1043", 
    12041214                driver => "to-be-written",      # emc1023 
     
    12061216                i2c_detect => sub { emc1023_detect(@_, 1); }, 
    12071217        }, { 
     1218                name => "SMSC EMC1046", 
     1219                driver => "to-be-written", 
     1220                i2c_addrs => [0x4c, 0x4d], 
     1221                i2c_detect => sub { emc1403_detect(@_, 6); }, 
     1222        }, { 
     1223                name => "SMSC EMC1047", 
     1224                driver => "to-be-written", 
     1225                i2c_addrs => [0x18], # 0x10 not probed 
     1226                i2c_detect => sub { emc1403_detect(@_, 7); }, 
     1227        }, { 
    12081228                name => "SMSC EMC1053", 
    12091229                driver => "to-be-written",      # emc1023 
     
    12161236                i2c_detect => sub { emc1023_detect(@_, 3); }, 
    12171237        }, { 
     1238                name => "SMSC EMC1072", 
     1239                driver => "to-be-written", 
     1240                i2c_addrs => [0x1c, 0x4c, 0x5c], # 0x2c, 0x3c, 0x6c, 0x7c not probed 
     1241                i2c_detect => sub { emc1403_detect(@_, 8); }, 
     1242        }, { 
     1243                name => "SMSC EMC1073", 
     1244                driver => "to-be-written", 
     1245                i2c_addrs => [0x1c, 0x4c, 0x5c], # 0x2c, 0x3c, 0x6c, 0x7c not probed 
     1246                i2c_detect => sub { emc1403_detect(@_, 9); }, 
     1247        }, { 
     1248                name => "SMSC EMC1074", 
     1249                driver => "to-be-written", 
     1250                i2c_addrs => [0x1c, 0x4c, 0x5c], # 0x2c, 0x3c, 0x6c, 0x7c not probed 
     1251                i2c_detect => sub { emc1403_detect(@_, 10); }, 
     1252        }, { 
     1253                name => "SMSC EMC1402", 
     1254                driver => "to-be-written", 
     1255                i2c_addrs => [0x18, 0x29, 0x4c, 0x4d], 
     1256                i2c_detect => sub { emc1403_detect(@_, 11); }, 
     1257        }, { 
    12181258                name => "SMSC EMC1403", 
    12191259                driver => "emc1403", 
     
    12301270                i2c_addrs => [0x18, 0x2a, 0x4c, 0x4d], 
    12311271                i2c_detect => sub { emc1403_detect(@_, 3); }, 
     1272        }, { 
     1273                name => "SMSC EMC1424", 
     1274                driver => "to-be-written", 
     1275                i2c_addrs => [0x4c], 
     1276                i2c_detect => sub { emc1403_detect(@_, 12); }, 
    12321277        }, { 
    12331278                name => "ST STTS424", 
     
    54475492} 
    54485493 
    5449 # Chip to detect: 0 = EMC1403, 1 = EMC1404, 2 = EMC2103, 3 = EMC1423 
     5494# Chip to detect: 0 = EMC1403, 1 = EMC1404, 2 = EMC2103, 3 = EMC1423, 
     5495#       4 = EMC1002, 5 = EMC1033, 6 = EMC1046, 7 = EMC1047, 8 = EMC1072, 
     5496#       9 = EMC1073, 10 = EMC1074, 11 = EMC1402, 12 = EMC1424 
    54505497# Registers used: 
    54515498#   0xfd: Device ID register 
     
    54615508        return unless $man_id == 0x5d;  # SMSC 
    54625509 
    5463         if ($chip == 0) { 
     5510        if ($chip == 0) {               # EMC1403 
    54645511                return unless $dev_id == 0x21; 
    54655512                return unless $rev == 0x01; 
    5466         } elsif ($chip == 1) { 
     5513        } elsif ($chip == 1) {          # EMC1404 
    54675514                return unless $dev_id == 0x25; 
    54685515                return unless $rev == 0x01; 
    5469         } elsif ($chip == 2) { 
     5516        } elsif ($chip == 2) {          # EMC2103 
    54705517                return unless ($dev_id == 0x24) || ($dev_id == 0x26); 
    54715518                return unless $rev == 0x01; 
    5472         } elsif ($chip == 3) { 
     5519        } elsif ($chip == 3) {          # EMC1423 
    54735520                return unless $dev_id == 0x23; 
     5521                return unless $rev == 0x01; 
     5522        } elsif ($chip == 4) {          # EMC1002 
     5523                return unless ($dev_id == 0x02) || ($dev_id == 0x03); 
     5524                return unless $rev == 0x01; 
     5525        } elsif ($chip == 5) {          # EMC1033 
     5526                return unless ($dev_id == 0x0a) || ($dev_id == 0x0b); 
     5527                return unless $rev == 0x01; 
     5528        } elsif ($chip == 6) {          # EMC1046 
     5529                return unless $dev_id == 0x1a; 
     5530                return unless $rev == 0x01; 
     5531        } elsif ($chip == 7) {          # EMC1047 
     5532                return unless $dev_id == 0x1c; 
     5533                return unless $rev == 0x01; 
     5534        } elsif ($chip == 8) {          # EMC1072 
     5535                return unless $dev_id == 0x20; 
     5536                return unless $rev == 0x03; 
     5537        } elsif ($chip == 9) {          # EMC1073 
     5538                return unless $dev_id == 0x21; 
     5539                return unless $rev == 0x03; 
     5540        } elsif ($chip == 10) {         # EMC1074 
     5541                return unless $dev_id == 0x25; 
     5542                return unless $rev == 0x03; 
     5543        } elsif ($chip == 11) {         # EMC1402 
     5544                return unless $dev_id == 0x20; 
     5545                return unless $rev == 0x01; 
     5546        } elsif ($chip == 12) {         # EMC1424 
     5547                return unless $dev_id == 0x27; 
    54745548                return unless $rev == 0x01; 
    54755549        }