mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-06-04 02:31:27 +00:00
lmsensors: read cpu information fail on ppc
The program sensors-detect in lmsensors can't read the cpu information on ppc and arm arch, such as: fsl-t4xxx based on ppc. This is because the program sensors-detect design for the x86 and x86-64, but weak on ppc and arm. So add the support for the ppc and arm, just add the correspond field to read in sensors-detect. Signed-off-by: Dengke Du <dengke.du@windriver.com> Signed-off-by: Changqing Li <changqing.li@windriver.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
+74
@@ -0,0 +1,74 @@
|
|||||||
|
From dd9b40c54f160a44f1d78e5946d4cd00a8852802 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Dengke Du <dengke.du@windriver.com>
|
||||||
|
Date: Wed, 21 Sep 2016 03:17:32 -0400
|
||||||
|
Subject: [PATCH] lm-sensors: fix sensors-detect can't read the cpu information
|
||||||
|
on fsl-t4xxx
|
||||||
|
|
||||||
|
This is because two reasons:
|
||||||
|
|
||||||
|
1. The sensors-detect program in lm-sensors depends on the file '/proc/cpuinfo',
|
||||||
|
different arch write different infomation to it. That program supports x86
|
||||||
|
and x86-64 well, but weak on ppc and arm.
|
||||||
|
|
||||||
|
2. The sensors-detect program show the cpu information just design for intel's
|
||||||
|
cpu, when meets other arch, it can't output the correct information.
|
||||||
|
|
||||||
|
So we need to add the ppc and arm support for this program:
|
||||||
|
|
||||||
|
1. add the ppc cpu information field 'cpu' in initialize_cpu_list function.
|
||||||
|
|
||||||
|
2. add the correspond case of ppc and arm when print cpu information in
|
||||||
|
print_cpu_info function.
|
||||||
|
|
||||||
|
Upstream-Status: Pending
|
||||||
|
|
||||||
|
Signed-off-by: Dengke Du <dengke.du@windriver.com>
|
||||||
|
---
|
||||||
|
prog/detect/sensors-detect | 11 ++++++++++-
|
||||||
|
1 file changed, 10 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/prog/detect/sensors-detect b/prog/detect/sensors-detect
|
||||||
|
index 5f62405..ae4def1 100755
|
||||||
|
--- a/prog/detect/sensors-detect
|
||||||
|
+++ b/prog/detect/sensors-detect
|
||||||
|
@@ -2833,6 +2833,7 @@ sub kernel_version_at_least
|
||||||
|
# model name and stepping, directly taken from /proc/cpuinfo.
|
||||||
|
use vars qw(@cpu);
|
||||||
|
|
||||||
|
+# The added field 'cpu' is for support the ppc.
|
||||||
|
sub initialize_cpu_list
|
||||||
|
{
|
||||||
|
local $_;
|
||||||
|
@@ -2848,7 +2849,7 @@ sub initialize_cpu_list
|
||||||
|
};
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
- if (m/^(vendor_id|cpu family|model|model name|stepping|cpuid level)\s*:\s*(.+)$/) {
|
||||||
|
+ if (m/^(vendor_id|cpu family|model|model name|stepping|cpuid level|cpu|revision)\s*:\s*(.+)$/) {
|
||||||
|
my $k = $1;
|
||||||
|
my $v = $2;
|
||||||
|
$v =~ s/\s+/ /g; # Merge multiple spaces
|
||||||
|
@@ -2861,12 +2862,20 @@ sub initialize_cpu_list
|
||||||
|
push @cpu, $entry if scalar keys(%{$entry}); # Last entry
|
||||||
|
}
|
||||||
|
|
||||||
|
+# The field 'model name' is for ARM.
|
||||||
|
+# The field 'cpu' is for ppc.
|
||||||
|
sub print_cpu_info
|
||||||
|
{
|
||||||
|
my $cpu = $cpu[0];
|
||||||
|
if ( $cpu->{'model name'} && $cpu->{'cpu family'} && $cpu->{model} && $cpu->{stepping} ) {
|
||||||
|
print "# Processor: $cpu->{'model name'} ($cpu->{'cpu family'}/$cpu->{model}/$cpu->{stepping})\n";
|
||||||
|
}
|
||||||
|
+ elsif ( $cpu->{'model name'} ) {
|
||||||
|
+ print "# Processor: $cpu->{'model name'}\n";
|
||||||
|
+ }
|
||||||
|
+ elsif ( $cpu->{'cpu'} && $cpu->{'revision'} ) {
|
||||||
|
+ print "# Processor: $cpu->{'cpu'} $cpu->{'revision'}\n";
|
||||||
|
+ }
|
||||||
|
else {
|
||||||
|
print "# Processor: There isn't enough cpu info for this arch!!!\n";
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.8.1
|
||||||
|
|
||||||
@@ -12,6 +12,7 @@ SRC_URI = "https://github.com/groeck/lm-sensors/archive/V3-4-0.tar.gz \
|
|||||||
file://sensord.init \
|
file://sensord.init \
|
||||||
file://0001-lmsensors-sensors-detect-print-a-special-message-whe.patch \
|
file://0001-lmsensors-sensors-detect-print-a-special-message-whe.patch \
|
||||||
file://0001-prog-Do-not-limit-sys-io.h-header-include-to-just-gl.patch \
|
file://0001-prog-Do-not-limit-sys-io.h-header-include-to-just-gl.patch \
|
||||||
|
file://0001-lm-sensors-fix-sensors-detect-can-t-read-the-cpu-inf.patch \
|
||||||
"
|
"
|
||||||
SRC_URI[md5sum] = "1e9f117cbfa11be1955adc96df71eadb"
|
SRC_URI[md5sum] = "1e9f117cbfa11be1955adc96df71eadb"
|
||||||
SRC_URI[sha256sum] = "e334c1c2b06f7290e3e66bdae330a5d36054701ffd47a5dde7a06f9a7402cb4e"
|
SRC_URI[sha256sum] = "e334c1c2b06f7290e3e66bdae330a5d36054701ffd47a5dde7a06f9a7402cb4e"
|
||||||
|
|||||||
Reference in New Issue
Block a user