2
0
mirror of https://github.com/lm-sensors/lm-sensors synced 2025-09-05 16:55:45 +00:00

Add FSC Heimdall, Poseidon II detection, change Poseidon I label from just plain Poseidon to Poseidon I

git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@4665 7894878c-1315-0410-8ee3-d5d059ff63e0
This commit is contained in:
Hans de Goede
2007-08-13 20:11:02 +00:00
parent 6a49d8c88a
commit 69757bcc20

View File

@@ -1379,9 +1379,15 @@ use vars qw(@pci_adapters_sis5595 @pci_adapters_sis645 @pci_adapters_sis96x);
i2c_detect => sub { ddcmonitor_detect(@_); },
},
{
name => "FSC Poseidon",
name => "FSC Poseidon I",
driver => "fscpos",
i2c_addrs => [0x73],
i2c_detect => sub { fscpeg_detect(@_); },
},
{
name => "FSC Poseidon II",
driver => "to-be-written",
i2c_addrs => [0x73],
i2c_detect => sub { fscpos_detect(@_); },
},
{
@@ -1396,6 +1402,12 @@ use vars qw(@pci_adapters_sis5595 @pci_adapters_sis645 @pci_adapters_sis96x);
i2c_addrs => [0x73],
i2c_detect => sub { fscher_detect(@_); },
},
{
name => "FSC Heimdal",
driver => "to-be-written",
i2c_addrs => [0x73],
i2c_detect => sub { fschmd_detect(@_); },
},
{
name => "ALi M5879",
driver => "to-be-written",
@@ -4898,8 +4910,8 @@ sub ddcmonitor_detect
# $_[1]: Address
# Returns: undef if not detected, (8) if detected.
# Registers used:
# 0x00-0x02: Identification ('P','E','G' -> Pegasus ? :-)
sub fscpos_detect
# 0x00-0x02: Identification ('P','E','G' -> Pegasus ? :-) aka Poseidon I
sub fscpeg_detect
{
my ($file,$addr) = @_;
# check the first 3 registers
@@ -4915,6 +4927,27 @@ sub fscpos_detect
return (8);
}
# $_[0]: A reference to the file descriptor to access this chip.
# $_[1]: Address
# Returns: undef if not detected, (8) if detected.
# Registers used:
# 0x00-0x02: Identification 'P','O','S' -> Poseideon II
sub fscpos_detect
{
my ($file,$addr) = @_;
# check the first 3 registers
if (i2c_smbus_read_byte_data($file,0x00) != 0x50) {
return;
}
if (i2c_smbus_read_byte_data($file,0x01) != 0x4F) {
return;
}
if (i2c_smbus_read_byte_data($file,0x02) != 0x53) {
return;
}
return (8);
}
# $_[0]: A reference to the file descriptor to access this chip.
# $_[1]: Address
# Returns: undef if not detected, (8) if detected.
@@ -4957,6 +4990,27 @@ sub fscher_detect
return (8);
}
# $_[0]: A reference to the file descriptor to access this chip.
# $_[1]: Address
# Returns: undef if not detected, (8) if detected.
# Registers used:
# 0x00-0x02: Identification ('H','M','D')
sub fschmd_detect
{
my ($file,$addr) = @_;
# check the first 3 registers
if (i2c_smbus_read_byte_data($file,0x00) != 0x48) {
return;
}
if (i2c_smbus_read_byte_data($file,0x01) != 0x4D) {
return;
}
if (i2c_smbus_read_byte_data($file,0x02) != 0x44) {
return;
}
return (8);
}
# $_[0]: A reference to the file descriptor to access this chip.
# $_[1]: Address (unused)
# Returns: undef if not detected, 5 if detected.