Alternatively look for DMI data in /sys/class/dmi/id, as

/sys/devices/virtual/dmi/id only exists since kernel 2.6.28.


git-svn-id: http://lm-sensors.org/svn/lm-sensors/branches/lm-sensors-3.0.0@5530 7894878c-1315-0410-8ee3-d5d059ff63e0
This commit is contained in:
Jean Delvare committed 2008-12-05 22:56:30 +00:00
1 parent 3fa3461913
commit ec87290402
1 file changed
+4 -2
+4 -2
View File
@@ -2150,11 +2150,13 @@ sub initialize_dmi_data
'System Manufacturer' => 1,
'System Name' => 1,
);
my $dmi_id_dir;
# First try reading the strings from sysfs if available
if (-d "$sysfs_root/devices/virtual/dmi/id") {
if (-d ($dmi_id_dir = "$sysfs_root/devices/virtual/dmi/id") # kernel >= 2.6.28
|| -d ($dmi_id_dir = "$sysfs_root/class/dmi/id")) {
foreach my $k (keys %items) {
$dmi{$k} = sysfs_device_attribute("$sysfs_root/devices/virtual/dmi/id", $k);
$dmi{$k} = sysfs_device_attribute($dmi_id_dir, $k);
}
} else {
# Else fallback on calling dmidecode