summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJean Delvare <jdelvare@suse.de>2020-05-12 16:22:06 +0200
committerOndřej Lysoněk <olysonek@redhat.com>2020-05-12 17:19:01 +0200
commit23c53b457407ab3ed217f963fc0329d0ae4bdeac (patch)
tree1c7a8d0af347f2bb24ecb3b0d023867c5a39a31a
parent248d4a17a59cd3366f5594a360353997571e0b68 (diff)
downloadlm-sensors-git-23c53b457407ab3ed217f963fc0329d0ae4bdeac.tar.gz
sensors-detect: Fix the driver for Nuvoton W83677HG-I
Originally, support for the Nuvoton W83677HG-I and derivatives was first added to the w83627ehf driver, so that's the driver recommended by sensors-detect. Later, support for the same device was added to the nct6775 driver. In kernel v5.6, support was removed from the w83627ehf driver to get rid of the duplicate code. So sensors-detect should now point users of this device to the nct6775 driver. We can't do that for very old kernels though, as this driver did not exist back then. I chose v3.10 for the cut-over, as this is when support for the Nuvoton W83677HG-I was finalized in the nct6775 driver, at least according to git log. Signed-off-by: Jean Delvare <jdelvare@suse.de>
-rwxr-xr-xprog/detect/sensors-detect6
1 files changed, 4 insertions, 2 deletions
diff --git a/prog/detect/sensors-detect b/prog/detect/sensors-detect
index 6fc441aa..319b1b7b 100755
--- a/prog/detect/sensors-detect
+++ b/prog/detect/sensors-detect
@@ -2273,7 +2273,7 @@ use constant FEAT_SMBUS => (1 << 7);
features => FEAT_IN | FEAT_FAN | FEAT_TEMP,
}, {
name => "Nuvoton W83677HG-I (NCT5572D/NCT6771F/NCT6772F/NCT6775F) Super IO Sensors",
- driver => "w83627ehf",
+ driver => sub { kernel_version_at_least(3, 10, 0) ? "nct6775" : "w83627ehf" },
devid => 0xB470,
devid_mask => 0xFFF0,
logdev => 0x0b,
@@ -4574,7 +4574,9 @@ sub scan_cpu
sub chip_special_cases
{
# Some chip to driver mappings depend on the environment
- foreach my $chip (@chip_ids) {
+ foreach my $chip (@chip_ids, @superio_ids_natsemi, @superio_ids_smsc,
+ @superio_ids_smsc_ns, @superio_ids_winbond,
+ @superio_ids_ite) {
if (ref($chip->{driver}) eq 'CODE') {
$chip->{driver} = $chip->{driver}->();
}