summaryrefslogtreecommitdiff
path: root/README
diff options
context:
space:
mode:
authorJean Delvare <jdelvare@suse.de>2003-08-08 08:38:51 +0000
committerJean Delvare <jdelvare@suse.de>2003-08-08 08:38:51 +0000
commit669782831dc7e570b1c8f87cc940f371ed811d7f (patch)
tree9e83bd62412584c7f1465c3bb8d6978a53c1f9a2 /README
parent519cb591faafa494eaa63d438f563325cb96fa75 (diff)
downloaddmidecode-git-669782831dc7e570b1c8f87cc940f371ed811d7f.tar.gz
Solved laptop and IA-64 issues. New section for biosdecode and
ownership. General update before the new release.
Diffstat (limited to 'README')
-rw-r--r--README83
1 files changed, 61 insertions, 22 deletions
diff --git a/README b/README
index ab62607..da8aa2f 100644
--- a/README
+++ b/README
@@ -28,13 +28,15 @@ you can change this behavior by editing the Makefile file and setting PREFIX
to wherever you want. You may change the C compiler and the compilation
flags as well.
-Three parameters can be set in the Makefile to make dmidecode work on
-non-i386 systems. The first two (BIGENDIAN and TABLE_LITTLEENDIAN) should be
-used if your system uses the big endian byte ordering (Motorola) or doesn't
-support unaligned memory accesses respectively. For example, compiling for
-a SPARC processor would require both. The third parameter
+Four parameters can be set in the Makefile to make dmidecode work on
+non-i386 systems. The first two (BIGENDIAN and ALIGNMENT_WORKAROND) should
+be used if your system uses the big endian byte ordering (Motorola) or
+doesn't support unaligned memory accesses, respectively. For example,
+compiling for a SPARC processor would require both. The third parameter
(TABLE_LITTLEENDIAN) is there for debugging purposes only and shouldn't be
-set by users.
+set by users. And finally, the __IA64__ parameter should be set for
+compilation on IA-64 systems. See the COMMON PROBLEMS section below for
+more details about compilation on IA-64 systems.
** DOCUMENTATION **
@@ -42,6 +44,9 @@ set by users.
There's no man page nor info page at this time. I don't know if there ever
will be one. I don't really feel a need for it.
+This program was first written for Linux, and has since be reported to work
+on FreeBSD as well.
+
For an history of the changes made to dmidecode, see the CHANGELOG file.
If you need help, your best chances are to visit the web page (see the
@@ -58,23 +63,57 @@ below.
MODEL SPECIFIC ISSUES
-Dmidecode is known not to work on IBM T-series laptops nor on Fujitsu-
-Siemens S-series laptops. This is due to the fact that the DMI table is at a
-memory location we can't reach through /dev/mem. It's obviously to the kernel
-developpers to fix the issue, and there's almost nothing we can do on
-dmidecode's side. This problem was first reported by Werner Heuser from
-Tuxmobil for Fujitsu-Siemens S-4582, by Pamela Huntley from IBM for IBM T23
-and T30 models, and was then confirmed by Joshua Goldenhar from Cisco for
-IBM T30.
+Dmidecode used not to work on IBM T-series laptops and on Fujitsu-Siemens
+S-series laptops under Linux. This was due to the fact that the DMI table
+is at a memory location we couldn't seem to reach through /dev/mem. Although
+I believe this reveals a problem in the Linux kernel, which should be fixed,
+a workaround was found by Smith Chad. See the IA-64 subsection below for
+more details. I posted about this problem on the LKML but did not have
+any answer.
IA-64
-Dmidecode is known to have problems on IA-64 systems. The first reason for
+Dmidecode used to have problems on IA-64 systems. The first reason for
this is that dmidecode accesses the DMI table through /dev/mem, and reading
-this file on an IA-64 system sometimes leads to a crash. This is mostly a
-kernel issue and there's probably nothing we can do to fix it on dmidecode's
-side. A second reason is that the method for locating the above-mentioned
-table differs on IA-64 (compared to IA-32), so dmidecode is likely to miss
-the table entry point. This is a complex issue that was reported by Glen
-Foster and Smith Chad from HP. No solution has been found yet, but we hope to
-get one someday.
+this file on an IA-64 system sometimes leads to a crash. A second reason is
+that the method for locating the above-mentioned table differs on IA-64
+(compared to IA-32), so dmidecode was likely to miss the table entry point.
+This complex issue was reported by Glen Foster and Smith Chad from HP. We
+have since been working on a solution, and dmidecode now supports IA-64
+systems. Smith Chad noticed that, for some obscure reason, accessing the
+/dev/mem file using mmap() instead of read() would work. Then, he wrote a
+patch to export the DMI table address from the internal EFI table to /proc,
+so dmidecode doesn't have to scan /dev/mem for it anymore. This patch was
+since integrated into the main ia64 patch. Finally, I add the requied code
+to make it all work. So, in order to have dmidecode work on your IA-64
+system, you need three things:
+ - dmidecode version 2.2 or later;
+ - an ia64 patched kernel, using linux-2.4.21-ia64-030702.diff or any later
+ version;
+ - the -D__IA64__ compilation flag set in the Makefile.
+Chad Smith tested dmidecode successfully on two different IA-64 systems.
+
+MMAP
+
+Note that mmap() is now used by default on all systems, since this seems to
+solve a number of problems. If your system does not have the mmap() function,
+edit the Makefile and unset USE_MMAP.
+
+
+** MISCELLANEOUS TOOLS **
+
+Two other tools come along with dmidecode: biosdecode and ownership.
+
+BIOSDECODE
+
+This one prints all BIOS related information it can find in /dev/mem.
+It used to be part of dmidecode itself, but as dmidecode was growing,
+we felt that the non-DMI part had to be moved to a separate tool.
+
+OWNERSHIP
+
+This tool was written on a request by Luc Van de Velde for use with Novell
+tools in his company. It retrieves the "ownership tag" that can be set on
+most Compaq computers. Since it uses the same mechanisms dmidecode and
+biosdecode use, and could be of some use for other people as well, we
+decided to make it part of our project.