mirror of
https://github.com/lm-sensors/lm-sensors
synced 2025-08-30 22:05:11 +00:00
sensors-detect: Add detection of TI ADC128D818
This commit is contained in:
3
CHANGES
3
CHANGES
@@ -1,6 +1,9 @@
|
||||
lm-sensors CHANGES file
|
||||
-----------------------
|
||||
|
||||
SVN HEAD
|
||||
sensors-detect: Add detection of ADC128D818
|
||||
|
||||
3.3.5 "Happy Birthday Beddy" (2014-01-22)
|
||||
libsensors: Improve documentation of two functions
|
||||
Increase MAX_SENSORS_PER_TYPE to 33
|
||||
|
@@ -546,6 +546,11 @@ use vars qw(@i2c_adapter_names);
|
||||
driver => "lm80",
|
||||
i2c_addrs => [0x28..0x2f],
|
||||
i2c_detect => sub { lm80_detect(@_, 1); },
|
||||
}, {
|
||||
name => "TI / National Semiconductor ADC128D818",
|
||||
driver => "adc128d818",
|
||||
i2c_addrs => [0x1d, 0x1e, 0x1f, 0x2d, 0x2e, 0x2f],
|
||||
i2c_detect => sub { adc128d818_detect(@_); },
|
||||
}, {
|
||||
name => "National Semiconductor LM85",
|
||||
driver => "lm85",
|
||||
@@ -4437,7 +4442,7 @@ sub lm92_detect
|
||||
# Registers used:
|
||||
# 0x00: Configuration register
|
||||
# 0x02: Interrupt state register
|
||||
# 0x07: Converstion rate register (LM96080 only)
|
||||
# 0x07: Conversion rate register (LM96080 only)
|
||||
# 0x2a-0x3d: Limits registers (LM80 only)
|
||||
# 0x3e: Manufacturer's ID register (LM96080 only)
|
||||
# 0x3f: Stepping/die revision ID register (LM96080 only)
|
||||
@@ -4501,6 +4506,32 @@ sub lm80_detect
|
||||
}
|
||||
}
|
||||
|
||||
# Registers used:
|
||||
# 0x00: Configuration register
|
||||
# 0x07: Conversion rate register
|
||||
# 0x09: Oneshot register
|
||||
# 0x0a: Shutdown register
|
||||
# 0x0b: Advanced Configuration register
|
||||
# 0x0c: Busy Status register
|
||||
# 0x3e: Manufacturer's ID register
|
||||
# 0x3f: Stepping/die revision ID register
|
||||
sub adc128d818_detect
|
||||
{
|
||||
my ($file, $addr) = @_;
|
||||
|
||||
return if i2c_smbus_read_byte_data($file, 0x3e) != 0x01;
|
||||
return if i2c_smbus_read_byte_data($file, 0x3f) != 0x09;
|
||||
|
||||
return if (i2c_smbus_read_byte_data($file, 0x00) & 0xf4) != 0;
|
||||
return if (i2c_smbus_read_byte_data($file, 0x07) & 0xfe) != 0;
|
||||
return if (i2c_smbus_read_byte_data($file, 0x09) & 0xfe) != 0;
|
||||
return if (i2c_smbus_read_byte_data($file, 0x0a) & 0xfe) != 0;
|
||||
return if (i2c_smbus_read_byte_data($file, 0x0b) & 0xf8) != 0;
|
||||
return if (i2c_smbus_read_byte_data($file, 0x0c) & 0xfc) != 0;
|
||||
|
||||
return 7;
|
||||
}
|
||||
|
||||
# Registers used:
|
||||
# 0x02: Status 1
|
||||
# 0x03: Configuration
|
||||
|
Reference in New Issue
Block a user