Show
Ignore:
Timestamp:
06/02/06 22:23:21 (6 years ago)
Author:
ruik
Message:

Add W83627DHG, add the revision of W83627EHF (0xA1)

Files:
1 modified

Legend:

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

    r3289 r4036  
    11061106       isa_detect => sub { w83781d_isa_detect 9, @_ }, 
    11071107       alias_detect => sub { w83781d_alias_detect 9, @_ }, 
     1108     }, 
     1109     { 
     1110       name => "Winbond W83627DHG", 
     1111       driver => "to-be-tested", 
     1112       i2c_addrs => [0x28..0x2f],  
     1113       i2c_detect => sub { w83781d_detect 10, @_}, 
     1114       isa_addrs => [0x290], 
     1115       isa_detect => sub { w83781d_isa_detect 10, @_ }, 
     1116       alias_detect => sub { w83781d_alias_detect 10, @_ }, 
    11081117     }, 
    11091118     { 
     
    19421951        logdev => 0x0b, 
    19431952      }, 
     1953        name => "Winbond W83627DHG Super IO Sensors", 
     1954        driver => "w83627ehf", 
     1955        devid => 0xA020, 
     1956        devid_mask => 0xFFF0, 
     1957        logdev => 0x0b, 
     1958      }, 
    19441959    ] 
    19451960  } 
     
    35943609#                        3 = W83627HF, 4 = AS99127F (rev.1), 
    35953610#                        5 = AS99127F (rev.2), 6 = ASB100, 7 = W83791D, 
    3596 #                        8 = W83792D, 9 = W83627EHF) 
     3611#                        8 = W83792D, 9 = W83627EHF 10 = W83627DHG) 
    35973612# $_[1]: A reference to the file descriptor to access this chip. 
    35983613#        We may assume an i2c_set_slave_addr was already done. 
     
    36453660  return if $chip == 8 and  $reg1 != 0x7a; 
    36463661  return if $chip == 9 and  $reg1 != 0xa1; 
     3662  return if $chip == 10 and  $reg1 != 0xa2; 
    36473663  $reg1 = i2c_smbus_read_byte_data($file,0x4a); 
    36483664  # Default address is 0x2d 
     
    37523768 
    37533769# $_[0]: Chip to detect (0 = W83781D, 1 = W83782D, 3 = W83627HF, 
    3754 #                        9 = W83627EHF) 
     3770#                        9 = W83627EHF 10 = W83627DHG) 
    37553771# $_[1]: ISA address 
    37563772# $_[2]: I2C file handle 
     
    37693785 
    37703786# $_[0]: Chip to detect (0 = W83781D, 1 = W83782D, 3 = W83627HF, 
    3771 #                        9 = W83627EHF) 
     3787#                        9 = W83627EHF 10 = W83627DHG) 
    37723788# $_[1]: Address 
    37733789# Returns: undef if not detected, (8) if detected. 
     
    37933809                (($reg1 & 0x80) == 0x80 and $reg2 == 0x5c); 
    37943810  return unless ($reg1 & 0x07) == 0x00; 
    3795   $reg1 = &$read_proc(0x58) & 0xfe; 
    3796   return if $chip == 0 and  $reg1 != 0x10; 
    3797   return if $chip == 1 and  $reg1 != 0x30; 
    3798   return if $chip == 3 and  $reg1 != 0x20; 
    3799   return if $chip == 9 and  $reg1 != 0x88; # Datasheet says 0xA1 
    3800                                            # but seems to be wrong 
     3811  $reg1 = &$read_proc(0x58); 
     3812  return if $chip == 0 and  ($reg1 & 0xfe) != 0x10; 
     3813  return if $chip == 1 and  ($reg1 & 0xfe) != 0x30; 
     3814  return if $chip == 3 and  ($reg1 & 0xfe) != 0x20; 
     3815  return if $chip == 9 and  !($reg1 == 0x88 or $reg1 == 0xa1); 
     3816  return if $chip == 10 and  $reg1 != 0xa2; 
     3817 
    38013818  return 8; 
    38023819}