Accepting request 65530 from Base:System
Accepted submit request 65530 from user coolo OBS-URL: https://build.opensuse.org/request/show/65530 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/sensors?expand=0&rev=68
This commit is contained in:
commit
a3f1b25c28
@ -1,42 +0,0 @@
|
||||
---
|
||||
lib/Module.mk | 2 +-
|
||||
lib/libsensors.map | 23 +++++++++++++++++++++++
|
||||
2 files changed, 24 insertions(+), 1 deletion(-)
|
||||
|
||||
--- /dev/null
|
||||
+++ lib/libsensors.map
|
||||
@@ -0,0 +1,23 @@
|
||||
+{
|
||||
+global:
|
||||
+ libsensors_version;
|
||||
+ sensors_cleanup;
|
||||
+ sensors_do_chip_sets;
|
||||
+ sensors_free_chip_name;
|
||||
+ sensors_get_adapter_name;
|
||||
+ sensors_get_all_subfeatures;
|
||||
+ sensors_get_detected_chips;
|
||||
+ sensors_get_features;
|
||||
+ sensors_get_label;
|
||||
+ sensors_get_subfeature;
|
||||
+ sensors_get_value;
|
||||
+ sensors_init;
|
||||
+ sensors_parse_chip_name;
|
||||
+ sensors_set_value;
|
||||
+ sensors_snprintf_chip_name;
|
||||
+ sensors_strerror;
|
||||
+ sensors_parse_error;
|
||||
+ sensors_parse_error_wfn;
|
||||
+ sensors_fatal_error;
|
||||
+local: *;
|
||||
+ };
|
||||
--- lib/Module.mk.orig
|
||||
+++ lib/Module.mk
|
||||
@@ -63,7 +63,7 @@ LIBHEADERFILES := $(MODULE_DIR)/error.h
|
||||
|
||||
# How to create the shared library
|
||||
$(MODULE_DIR)/$(LIBSHLIBNAME): $(LIBSHOBJECTS)
|
||||
- $(CC) -shared $(LDFLAGS) -Wl,-soname,$(LIBSHSONAME) -o $@ $^ -lc -lm
|
||||
+ $(CC) -shared $(LDFLAGS) -Wl,--version-script=$(LIB_DIR)/libsensors.map -Wl,-soname,$(LIBSHSONAME) -o $@ $^ -lc -lm
|
||||
|
||||
$(MODULE_DIR)/$(LIBSHSONAME): $(MODULE_DIR)/$(LIBSHLIBNAME)
|
||||
$(RM) $@
|
@ -1,6 +1,10 @@
|
||||
--- lm_sensors-3.1.1.orig/prog/detect/sensors-detect
|
||||
+++ lm_sensors-3.1.1/prog/detect/sensors-detect
|
||||
@@ -6015,6 +6015,12 @@ sub write_config
|
||||
---
|
||||
prog/detect/sensors-detect | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
--- lm_sensors-3.3.0.orig/prog/detect/sensors-detect
|
||||
+++ lm_sensors-3.3.0/prog/detect/sensors-detect
|
||||
@@ -6416,6 +6416,12 @@ sub write_config
|
||||
or die "Sorry, can't create /etc/sysconfig/lm_sensors ($!)";
|
||||
print SYSCONFIG "# Generated by sensors-detect on " . scalar localtime() . "\n";
|
||||
print SYSCONFIG <<'EOT';
|
||||
|
@ -3,12 +3,12 @@ that not all required hwmon drivers are installed on the system when
|
||||
sensors-detect is being run. Point the user to the kernel-*-extra
|
||||
package if drivers are found to be missing.
|
||||
---
|
||||
prog/detect/sensors-detect | 10 +++++++++-
|
||||
1 file changed, 9 insertions(+), 1 deletion(-)
|
||||
prog/detect/sensors-detect | 11 +++++++++--
|
||||
1 file changed, 9 insertions(+), 2 deletions(-)
|
||||
|
||||
--- lm_sensors-3.1.1.orig/prog/detect/sensors-detect
|
||||
+++ lm_sensors-3.1.1/prog/detect/sensors-detect
|
||||
@@ -2253,12 +2253,15 @@ sub initialize_conf
|
||||
--- lm_sensors-3.3.0.orig/prog/detect/sensors-detect
|
||||
+++ lm_sensors-3.3.0/prog/detect/sensors-detect
|
||||
@@ -2421,12 +2421,15 @@ sub initialize_conf
|
||||
# [2] -> SUBLEVEL
|
||||
# [3] -> EXTRAVERSION
|
||||
#
|
||||
@ -25,7 +25,7 @@ package if drivers are found to be missing.
|
||||
chomp($kernel_arch = `uname -m`);
|
||||
|
||||
# We only support kernels >= 2.6.5
|
||||
@@ -5957,7 +5960,11 @@ sub generate_modprobes
|
||||
@@ -6358,7 +6361,11 @@ sub generate_modprobes
|
||||
# isn't supported
|
||||
if ((($? >> 8) == 0) && ! $modulefound) {
|
||||
print "Warning: the required module $driver is not currently installed\n".
|
||||
|
@ -5,9 +5,13 @@ References: bnc#558756
|
||||
We do not ship the out-of-tree ipmisensors driver, so do not point
|
||||
the user to that driver.
|
||||
|
||||
--- lm_sensors-3.1.1.orig/prog/detect/sensors-detect
|
||||
+++ lm_sensors-3.1.1/prog/detect/sensors-detect
|
||||
@@ -1256,12 +1256,12 @@ use vars qw(@i2c_adapter_names);
|
||||
---
|
||||
prog/detect/sensors-detect | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
--- lm_sensors-3.3.0.orig/prog/detect/sensors-detect
|
||||
+++ lm_sensors-3.3.0/prog/detect/sensors-detect
|
||||
@@ -1351,12 +1351,12 @@ use vars qw(@i2c_adapter_names);
|
||||
@ipmi_ifs = (
|
||||
{
|
||||
name => "IPMI BMC KCS",
|
||||
@ -22,7 +26,7 @@ the user to that driver.
|
||||
isa_addrs => [0x0ca8],
|
||||
isa_detect => sub { ipmi_detect(@_); },
|
||||
}
|
||||
@@ -5639,13 +5639,13 @@ sub ipmi_from_smbios
|
||||
@@ -6023,13 +6023,13 @@ sub ipmi_from_smbios
|
||||
$if->{type}));
|
||||
}
|
||||
print "Success!\n".
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:bde7e1d8b473bca6528694b696668c4cd0a28515aef36b961e4f7d8a6b47e581
|
||||
size 165008
|
3
lm_sensors-3.3.0.tar.bz2
Normal file
3
lm_sensors-3.3.0.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:145c222e4611cedb2d16efb2700164f599297b2124c4dc30af4fc89c417cc20f
|
||||
size 169020
|
@ -1,18 +0,0 @@
|
||||
Upstream changeset: r5870
|
||||
Fix error seen in sensors-detect if i2c bus numbering is not
|
||||
sequential.
|
||||
|
||||
---
|
||||
prog/detect/sensors-detect | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
--- lm_sensors-3.2.0.orig/prog/detect/sensors-detect
|
||||
+++ lm_sensors-3.2.0/prog/detect/sensors-detect
|
||||
@@ -5933,6 +5933,7 @@ sub generate_modprobes
|
||||
# the adapter drivers so that the numbers will be the same. If not, then
|
||||
# we only load the adapter drivers which are useful.
|
||||
foreach $adap (@i2c_adapters) {
|
||||
+ next unless defined $adap;
|
||||
next if $adap->{autoload};
|
||||
next if $adap->{driver} eq 'UNKNOWN';
|
||||
next if not defined $configfile and not $adap->{used};
|
@ -1,19 +0,0 @@
|
||||
Upstream changeset: r5883
|
||||
The W83667HG-B is supported by the w83627ehf driver since kernel
|
||||
2.6.36.
|
||||
|
||||
---
|
||||
prog/detect/sensors-detect | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
--- lm_sensors-3.2.0.orig/prog/detect/sensors-detect
|
||||
+++ lm_sensors-3.2.0/prog/detect/sensors-detect
|
||||
@@ -1791,7 +1791,7 @@ use constant FEAT_SMBUS => (1 << 7);
|
||||
features => FEAT_IN | FEAT_FAN | FEAT_TEMP,
|
||||
}, {
|
||||
name => "Nuvoton W83667HG-B Super IO Sensors",
|
||||
- driver => "to-be-written", # Probably w83627ehf
|
||||
+ driver => "w83627ehf",
|
||||
devid => 0xB350,
|
||||
devid_mask => 0xFFF0,
|
||||
logdev => 0x0b,
|
@ -1,35 +0,0 @@
|
||||
Upstream changeset: r5886
|
||||
Add a default configuration section for the Winbond W83627THF.
|
||||
|
||||
---
|
||||
etc/sensors.conf.default | 19 +++++++++++++++++++
|
||||
1 file changed, 19 insertions(+)
|
||||
|
||||
--- lm_sensors-3.2.0.orig/etc/sensors.conf.default
|
||||
+++ lm_sensors-3.2.0/etc/sensors.conf.default
|
||||
@@ -266,6 +266,25 @@ chip "adm1030-*" "adm1031-*"
|
||||
label temp1 "M/B Temp"
|
||||
|
||||
|
||||
+chip "w83627thf-*"
|
||||
+
|
||||
+ label in3 "+5V"
|
||||
+ label in7 "5VSB"
|
||||
+ label in8 "Vbat"
|
||||
+
|
||||
+ # Internal resistors
|
||||
+ compute in3 @ * (1 + 34/51), @ / (1 + 34/51)
|
||||
+ compute in7 @ * (1 + 34/51), @ / (1 + 34/51)
|
||||
+
|
||||
+ set in3_min 5.0 * 0.90
|
||||
+ set in3_max 5.0 * 1.10
|
||||
+ set in7_min 5.0 * 0.90
|
||||
+ set in7_max 5.0 * 1.10
|
||||
+# The battery voltage may or may not be monitored.
|
||||
+# set in8_min 3.0 * 0.90
|
||||
+# set in8_max 3.0 * 1.10
|
||||
+
|
||||
+
|
||||
chip "w83627ehf-*" "w83627dhg-*" "w83667hg-*"
|
||||
|
||||
label in0 "Vcore"
|
@ -1,18 +0,0 @@
|
||||
Upstream changeset: r5887
|
||||
Fixed typo in lib/sensors.conf.5.
|
||||
|
||||
---
|
||||
lib/sensors.conf.5 | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
--- lm_sensors-3.2.0.orig/lib/sensors.conf.5
|
||||
+++ lm_sensors-3.2.0/lib/sensors.conf.5
|
||||
@@ -402,7 +402,7 @@ really cool before the fan stops, so tha
|
||||
again immediately.
|
||||
|
||||
So, in addition to tempX_max, many chips have a tempX_max_hyst
|
||||
-sub-feature. Likewise, tempX_crit often comes with tempX_max_crit.
|
||||
+sub-feature. Likewise, tempX_crit often comes with tempX_crit_hyst.
|
||||
Example:
|
||||
|
||||
.RS
|
@ -1,30 +0,0 @@
|
||||
Upstream changeset: r5889
|
||||
Add a default configuration section for the SMSC SCH5127.
|
||||
|
||||
---
|
||||
etc/sensors.conf.default | 14 ++++++++++++++
|
||||
1 file changed, 14 insertions(+)
|
||||
|
||||
--- lm_sensors-3.2.0.orig/etc/sensors.conf.default
|
||||
+++ lm_sensors-3.2.0/etc/sensors.conf.default
|
||||
@@ -402,6 +402,20 @@ chip "sch5027-*"
|
||||
set in6_max 3.0 * 1.10
|
||||
|
||||
|
||||
+chip "sch5127-*"
|
||||
+
|
||||
+ label in2 "+3.3V"
|
||||
+ label in5 "3VSB"
|
||||
+ label in6 "Vbat"
|
||||
+
|
||||
+ set in2_min 3.3 * 0.90
|
||||
+ set in2_max 3.3 * 1.10
|
||||
+ set in5_min 3.3 * 0.90
|
||||
+ set in5_max 3.3 * 1.10
|
||||
+ set in6_min 3.0 * 0.90
|
||||
+ set in6_max 3.0 * 1.10
|
||||
+
|
||||
+
|
||||
chip "f71882fg-*"
|
||||
|
||||
label in0 "+3.3V"
|
@ -1,137 +0,0 @@
|
||||
Upstream changeset: r5905
|
||||
Implement universal detection for Intel digital thermal sensors. This
|
||||
relies on a flag returned by the cpuid instruction, as the coretemp
|
||||
driver itself does since kernel 2.6.35.
|
||||
|
||||
---
|
||||
prog/detect/sensors-detect | 68 +++++++++++++++++++++++++++------------------
|
||||
1 file changed, 42 insertions(+), 26 deletions(-)
|
||||
|
||||
--- lm_sensors-3.2.0.orig/prog/detect/sensors-detect
|
||||
+++ lm_sensors-3.2.0/prog/detect/sensors-detect
|
||||
@@ -23,7 +23,7 @@
|
||||
require 5.004;
|
||||
|
||||
use strict;
|
||||
-use Fcntl;
|
||||
+use Fcntl qw(:DEFAULT :seek);
|
||||
use File::Basename;
|
||||
|
||||
# We will call modprobe, which typically lives in either /sbin,
|
||||
@@ -2025,13 +2025,9 @@ use vars qw(@cpu_ids);
|
||||
driver => "k10temp",
|
||||
detect => \&fam11h_pci_detect,
|
||||
}, {
|
||||
- name => "Intel Core family thermal sensor",
|
||||
+ name => "Intel digital thermal sensor",
|
||||
driver => "coretemp",
|
||||
- detect => sub { coretemp_detect(0); },
|
||||
- }, {
|
||||
- name => "Intel Atom thermal sensor",
|
||||
- driver => "coretemp",
|
||||
- detect => sub { coretemp_detect(1); },
|
||||
+ detect => \&coretemp_detect,
|
||||
}, {
|
||||
name => "Intel AMB FB-DIMM thermal sensor",
|
||||
driver => "i5k_amb",
|
||||
@@ -2296,10 +2292,10 @@ sub initialize_cpu_list
|
||||
while (<INPUTFILE>) {
|
||||
if (m/^processor\s*:\s*(\d+)/) {
|
||||
push @cpu, $entry if scalar keys(%{$entry}); # Previous entry
|
||||
- $entry = {}; # New entry
|
||||
+ $entry = { nr => $1 }; # New entry
|
||||
next;
|
||||
}
|
||||
- if (m/^(vendor_id|cpu family|model|model name|stepping)\s*:\s*(.+)$/) {
|
||||
+ if (m/^(vendor_id|cpu family|model|model name|stepping|cpuid level)\s*:\s*(.+)$/) {
|
||||
my $k = $1;
|
||||
my $v = $2;
|
||||
$v =~ s/\s+/ /g; # Merge multiple spaces
|
||||
@@ -2468,6 +2464,15 @@ sub load_module
|
||||
$modules_list{$normalized} = 1;
|
||||
}
|
||||
|
||||
+# udev may take some time to create device nodes when loading modules
|
||||
+sub udev_settle
|
||||
+{
|
||||
+ if (!(-x "/sbin/udevadm" && system("/sbin/udevadm settle") == 0)
|
||||
+ && !(-x "/sbin/udevsettle" && system("/sbin/udevsettle") == 0)) {
|
||||
+ sleep(1);
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
sub initialize_modules_supported
|
||||
{
|
||||
foreach my $chip (@chip_ids) {
|
||||
@@ -5757,23 +5762,33 @@ sub intel_amb_detect
|
||||
return;
|
||||
}
|
||||
|
||||
+sub cpuid
|
||||
+{
|
||||
+ my ($cpu_nr, $eax) = @_;
|
||||
+
|
||||
+ sysopen(CPUID, "/dev/cpu/$cpu_nr/cpuid", O_RDONLY) or return;
|
||||
+ binmode CPUID;
|
||||
+ sysseek(CPUID, $eax, SEEK_SET)
|
||||
+ or die "Cannot seek /dev/cpu/$cpu_nr/cpuid";
|
||||
+ sysread(CPUID, my $data, 16)
|
||||
+ or die "Cannot read /dev/cpu/$cpu_nr/cpuid";
|
||||
+ close CPUID;
|
||||
+
|
||||
+ return unpack("L4", $data);
|
||||
+}
|
||||
+
|
||||
sub coretemp_detect
|
||||
{
|
||||
- my $chip = shift;
|
||||
my $probecpu;
|
||||
|
||||
foreach $probecpu (@cpu) {
|
||||
next unless $probecpu->{vendor_id} eq 'GenuineIntel' &&
|
||||
- $probecpu->{'cpu family'} == 6;
|
||||
- return 9 if $chip == 0 &&
|
||||
- ($probecpu->{model} == 14 || # Pentium M DC
|
||||
- $probecpu->{model} == 15 || # Core 2 DC 65nm
|
||||
- $probecpu->{model} == 0x16 || # Core 2 SC 65nm
|
||||
- $probecpu->{model} == 0x17 || # Penryn 45nm
|
||||
- $probecpu->{model} == 0x1a || # Nehalem
|
||||
- $probecpu->{model} == 0x1e); # Lynnfield
|
||||
- return 9 if $chip == 1 &&
|
||||
- ($probecpu->{model} == 0x1c); # Atom
|
||||
+ $probecpu->{'cpuid level'} >= 6;
|
||||
+
|
||||
+ # Now we check for the DTS flag
|
||||
+ my @regs = cpuid($probecpu->{nr}, 6);
|
||||
+ return unless @regs == 4;
|
||||
+ return 9 if ($regs[0] & (1 << 0)); # eax, bit 0
|
||||
}
|
||||
return;
|
||||
}
|
||||
@@ -6137,6 +6152,12 @@ sub main
|
||||
print "Some south bridges, CPUs or memory controllers contain embedded sensors.\n".
|
||||
"Do you want to scan for them? This is totally safe. (YES/no): ";
|
||||
unless (<STDIN> =~ /^\s*n/i) {
|
||||
+ # Load the cpuid driver if needed
|
||||
+ unless (-e "/dev/cpu/$cpu[0]->{nr}/cpuid") {
|
||||
+ load_module("cpuid");
|
||||
+ udev_settle();
|
||||
+ }
|
||||
+
|
||||
$| = 1;
|
||||
foreach my $entry (@cpu_ids) {
|
||||
scan_cpu($entry);
|
||||
@@ -6212,12 +6233,7 @@ sub main
|
||||
$by_default = 1 if dmi_match('board_vendor', 'asustek', 'tyan',
|
||||
'supermicro');
|
||||
|
||||
- # udev may take some time to create the device node
|
||||
- if (!(-x "/sbin/udevadm" && system("/sbin/udevadm settle") == 0)
|
||||
- && !(-x "/sbin/udevsettle" && system("/sbin/udevsettle") == 0)) {
|
||||
- sleep(1);
|
||||
- }
|
||||
-
|
||||
+ udev_settle();
|
||||
for (my $dev_nr = 0; $dev_nr < @i2c_adapters; $dev_nr++) {
|
||||
next unless exists $i2c_adapters[$dev_nr];
|
||||
scan_i2c_adapter($dev_nr, $by_default);
|
@ -1,36 +0,0 @@
|
||||
Add detection of Nuvoton NCT5571D, NCT5577D and NCT6776F.
|
||||
|
||||
---
|
||||
prog/detect/sensors-detect | 14 +++++++++++++-
|
||||
1 file changed, 13 insertions(+), 1 deletion(-)
|
||||
|
||||
--- lm_sensors-3.2.0.orig/prog/detect/sensors-detect
|
||||
+++ lm_sensors-3.2.0/prog/detect/sensors-detect
|
||||
@@ -1790,7 +1790,7 @@ use constant FEAT_SMBUS => (1 << 7);
|
||||
logdev => 0x0b,
|
||||
features => FEAT_IN | FEAT_FAN | FEAT_TEMP,
|
||||
}, {
|
||||
- name => "Nuvoton W83667HG-B Super IO Sensors",
|
||||
+ name => "Nuvoton W83667HG-B (NCT5571D) Super IO Sensors",
|
||||
driver => "w83627ehf",
|
||||
devid => 0xB350,
|
||||
devid_mask => 0xFFF0,
|
||||
@@ -1808,6 +1808,18 @@ use constant FEAT_SMBUS => (1 << 7);
|
||||
driver => "not-a-sensor",
|
||||
devid => 0x61,
|
||||
}, {
|
||||
+ name => "Nuvoton NCT5577D Super IO Sensors",
|
||||
+ driver => "to-be-written",
|
||||
+ devid => 0xC331,
|
||||
+ logdev => 0x0b,
|
||||
+ features => FEAT_IN | FEAT_FAN | FEAT_TEMP,
|
||||
+ }, {
|
||||
+ name => "Nuvoton NCT6776F Super IO Sensors",
|
||||
+ driver => "to-be-written",
|
||||
+ devid => 0xC333,
|
||||
+ logdev => 0x0b,
|
||||
+ features => FEAT_IN | FEAT_FAN | FEAT_TEMP,
|
||||
+ }, {
|
||||
name => "Fintek F71805F/FG Super IO Sensors",
|
||||
driver => "f71805f",
|
||||
devid => 0x0406,
|
@ -1,14 +0,0 @@
|
||||
Default config for NCT6775F and NCT6776F. We don't support these
|
||||
yet, but users may install a standalone driver for them later.
|
||||
|
||||
--- lm-sensors/etc/sensors.conf.default (revision 5902)
|
||||
+++ lm-sensors/etc/sensors.conf.default (revision 5913)
|
||||
@@ -285,7 +285,7 @@
|
||||
# set in8_max 3.0 * 1.10
|
||||
|
||||
|
||||
-chip "w83627ehf-*" "w83627dhg-*" "w83667hg-*"
|
||||
+chip "w83627ehf-*" "w83627dhg-*" "w83667hg-*" "nct6775-*" "nct6776-*"
|
||||
|
||||
label in0 "Vcore"
|
||||
label in2 "AVCC"
|
@ -1,18 +0,0 @@
|
||||
We probe addresses 0x1c-0x1f for other chips now, so we might as well
|
||||
look for TMP421 devices there.
|
||||
|
||||
---
|
||||
prog/detect/sensors-detect | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
--- lm_sensors-3.2.0.orig/prog/detect/sensors-detect
|
||||
+++ lm_sensors-3.2.0/prog/detect/sensors-detect
|
||||
@@ -950,7 +950,7 @@ use vars qw(@i2c_adapter_names);
|
||||
}, {
|
||||
name => "Texas Instruments TMP421",
|
||||
driver => "tmp421",
|
||||
- i2c_addrs => [0x2a, 0x4c..0x4f], # 0x1c-0x1f not probed.
|
||||
+ i2c_addrs => [0x1c..0x1f, 0x2a, 0x4c..0x4f],
|
||||
i2c_detect => sub { tmp42x_detect(@_, 0); },
|
||||
}, {
|
||||
name => "Texas Instruments TMP422",
|
@ -1,23 +0,0 @@
|
||||
Fix addresses checked for SMSC EMC1403 and EMC1404.
|
||||
|
||||
---
|
||||
prog/detect/sensors-detect | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
--- lm_sensors-3.2.0.orig/prog/detect/sensors-detect
|
||||
+++ lm_sensors-3.2.0/prog/detect/sensors-detect
|
||||
@@ -1182,12 +1182,12 @@ use vars qw(@i2c_adapter_names);
|
||||
}, {
|
||||
name => "SMSC EMC1403",
|
||||
driver => "emc1403",
|
||||
- i2c_addrs => [0x18, 0x2a, 0x4c, 0x4d],
|
||||
+ i2c_addrs => [0x18, 0x29, 0x4c, 0x4d],
|
||||
i2c_detect => sub { emc1403_detect(@_, 0); },
|
||||
}, {
|
||||
name => "SMSC EMC1404",
|
||||
driver => "to-be-written", # emc1403
|
||||
- i2c_addrs => [0x18, 0x2a, 0x4c, 0x4d],
|
||||
+ i2c_addrs => [0x18, 0x29, 0x4c, 0x4d],
|
||||
i2c_detect => sub { emc1403_detect(@_, 1); },
|
||||
}, {
|
||||
name => "ST STTS424",
|
@ -1,61 +0,0 @@
|
||||
Fix detection of SPD EEPROM on DDR3 memory modules. DDR3 uses CRC16 over
|
||||
128 bytes instead of basic checksum over 64 bytes. Contributed by
|
||||
Clemens Ladisch.
|
||||
|
||||
---
|
||||
prog/detect/sensors-detect | 37 +++++++++++++++++++++++++++++++------
|
||||
1 file changed, 31 insertions(+), 6 deletions(-)
|
||||
|
||||
--- lm_sensors-3.2.0.orig/prog/detect/sensors-detect
|
||||
+++ lm_sensors-3.2.0/prog/detect/sensors-detect
|
||||
@@ -5134,19 +5134,44 @@ sub it8712_i2c_detect
|
||||
}
|
||||
|
||||
# Registers used:
|
||||
-# 0-63: SPD Data and Checksum
|
||||
+# 0-63: SPD Data and Checksum (up to DDR2)
|
||||
+# 0-127: SPD data and CRC (DDR3)
|
||||
sub eeprom_detect
|
||||
{
|
||||
my ($file, $addr) = @_;
|
||||
+ my $device_type = i2c_smbus_read_byte_data($file, 2);
|
||||
my $checksum = 0;
|
||||
|
||||
- # Check the checksum for validity (works for most DIMMs and RIMMs)
|
||||
- for (my $i = 0; $i <= 62; $i++) {
|
||||
- $checksum += i2c_smbus_read_byte_data($file, $i);
|
||||
+ # Check the checksum or CRC16 for validity
|
||||
+ if ($device_type >= 1 and $device_type <= 8) {
|
||||
+ for (my $i = 0; $i < 63; $i++) {
|
||||
+ $checksum += i2c_smbus_read_byte_data($file, $i);
|
||||
+ }
|
||||
+ $checksum &= 0xff;
|
||||
+
|
||||
+ return 8 if $checksum == i2c_smbus_read_byte_data($file, 63);
|
||||
+ } elsif ($device_type >= 9 && $device_type <= 11) {
|
||||
+ # see JEDEC 21-C 4.1.2.11 2.4
|
||||
+ my $crc_coverage = i2c_smbus_read_byte_data($file, 0);
|
||||
+ $crc_coverage = ($crc_coverage & 0x80) ? 117 : 126;
|
||||
+ for (my $i = 0; $i < $crc_coverage; $i++) {
|
||||
+ $checksum ^= i2c_smbus_read_byte_data($file, $i) << 8;
|
||||
+ for (my $bit = 0; $bit < 8; $bit++) {
|
||||
+ if ($checksum & 0x8000) {
|
||||
+ $checksum = ($checksum << 1) ^ 0x1021;
|
||||
+ } else {
|
||||
+ $checksum <<= 1;
|
||||
+ }
|
||||
+ }
|
||||
+ }
|
||||
+ $checksum &= 0xffff;
|
||||
+
|
||||
+ return 8 if ($checksum & 0xff) == i2c_smbus_read_byte_data($file, 126) and
|
||||
+ ($checksum >> 8) == i2c_smbus_read_byte_data($file, 127);
|
||||
+
|
||||
+ # note: if bit 7 of byte 32 is set, a jc42 sensor is at $addr-0x38
|
||||
}
|
||||
- $checksum &= 255;
|
||||
|
||||
- return 8 if $checksum == i2c_smbus_read_byte_data($file, 63);
|
||||
return;
|
||||
}
|
||||
|
25
lm_sensors-r5952-new-fintek-chips.patch
Normal file
25
lm_sensors-r5952-new-fintek-chips.patch
Normal file
@ -0,0 +1,25 @@
|
||||
We have support for the Fintek F71889A and F81865F now.
|
||||
---
|
||||
prog/detect/sensors-detect | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
--- lm_sensors-3.3.0.orig/prog/detect/sensors-detect
|
||||
+++ lm_sensors-3.3.0/prog/detect/sensors-detect
|
||||
@@ -1993,7 +1993,7 @@ use constant FEAT_SMBUS => (1 << 7);
|
||||
features => FEAT_IN | FEAT_FAN | FEAT_TEMP,
|
||||
}, {
|
||||
name => "Fintek F71889A Super IO Sensors",
|
||||
- driver => "to-be-written",
|
||||
+ driver => "f71882fg",
|
||||
devid => 0x1005,
|
||||
logdev => 0x04,
|
||||
features => FEAT_IN | FEAT_FAN | FEAT_TEMP,
|
||||
@@ -2007,7 +2007,7 @@ use constant FEAT_SMBUS => (1 << 7);
|
||||
devid => 0x0206,
|
||||
}, {
|
||||
name => "Fintek F81865F Super IO Sensors",
|
||||
- driver => "to-be-written",
|
||||
+ driver => "f71882fg",
|
||||
devid => 0x0704,
|
||||
logdev => 0x04,
|
||||
features => FEAT_IN | FEAT_FAN | FEAT_TEMP,
|
@ -1,3 +1,13 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Mar 29 19:09:05 CEST 2011 - jdelvare@suse.de
|
||||
|
||||
- Update to lm_sensors 3.3.0
|
||||
* Support for chassis intrusion and humidity sensors
|
||||
* Support for many new attributes
|
||||
* Detection of new devices
|
||||
- lm_sensors-r5952-new-fintek-chips.patch: Fix driver mapping of
|
||||
two new Fintek chips.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Feb 17 21:07:45 CET 2011 - jdelvare@suse.de
|
||||
|
||||
|
32
sensors.spec
32
sensors.spec
@ -21,10 +21,10 @@
|
||||
Name: sensors
|
||||
BuildRequires: bison flex rrdtool-devel
|
||||
Url: http://www.lm-sensors.org/
|
||||
Version: 3.2.0
|
||||
Release: 11
|
||||
Version: 3.3.0
|
||||
Release: 1
|
||||
Summary: Hardware health monitoring for Linux
|
||||
License: GPLv2+
|
||||
License: GPLv2+/LGPL
|
||||
Group: System/Monitoring
|
||||
Requires: modules
|
||||
AutoReqProv: on
|
||||
@ -36,18 +36,7 @@ Patch2: lm_sensors-3.0.0-sensord-separate.patch
|
||||
Patch3: lm_sensors-3.0.0-sysconfig_metadata.patch
|
||||
Patch4: lm_sensors-3.0.3-hint-at-kernel-extra-package.patch
|
||||
Patch5: lm_sensors-3.1.1-no-ipmisensors-driver.patch
|
||||
Patch6: libsensors-visibility.patch
|
||||
Patch7: lm_sensors-r5870-i2c-non-sequential.patch
|
||||
Patch8: lm_sensors-r5883-W83667HG-B-is-supported.patch
|
||||
Patch9: lm_sensors-r5886-default-config-W83627THF.patch
|
||||
Patch10: lm_sensors-r5887-typo-in-sensors-conf-5.patch
|
||||
Patch11: lm_sensors-r5889-default-config-SCH5127.patch
|
||||
Patch12: lm_sensors-r5905-fix-coretemp-detection.patch
|
||||
Patch13: lm_sensors-r5910-detect-new-Nuvoton-superio.patch
|
||||
Patch14: lm_sensors-r5913-default-config-NCT677xF.patch
|
||||
Patch15: lm_sensors-r5914-fix-TMP421-detection.patch
|
||||
Patch16: lm_sensors-r5916-fix-EMC140x-detection.patch
|
||||
Patch17: lm_sensors-r5930-fix-DDR3-SPD-detection.patch
|
||||
Patch6: lm_sensors-r5952-new-fintek-chips.patch
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
ExcludeArch: s390 s390x
|
||||
|
||||
@ -150,18 +139,7 @@ Authors:
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
%patch5 -p1
|
||||
%patch6
|
||||
%patch7 -p1
|
||||
%patch8 -p1
|
||||
%patch9 -p1
|
||||
%patch10 -p1
|
||||
%patch11 -p1
|
||||
%patch12 -p1
|
||||
%patch13 -p1
|
||||
%patch14 -p1
|
||||
%patch15 -p1
|
||||
%patch16 -p1
|
||||
%patch17 -p1
|
||||
%patch6 -p1
|
||||
|
||||
%build
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS"
|
||||
|
Loading…
x
Reference in New Issue
Block a user