| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
function. Also documented specs for these types
|
|
|
|
|
| |
Move function is_printable to dmidecode.c so that a single implementation
can be used in both dmidecode.c and dmioem.c.
|
|
|
|
|
|
| |
Some information about OEM DMI types 212 and 219 for HP machines is
available from the hpwdt kernel driver. Include the available
information in the output of dmidecode.
|
|
|
|
|
|
|
| |
Several boards have a bug where some type 34 structures have their
length incorrectly set to 0x10 instead of 0x0B. This causes the first
5 characters of the device name to be trimmed. It's easy to check and
fix, so do it, but warn.
|
|
|
|
|
|
| |
Some information about OEM DMI type 170 for Acer machines is available
from the acer-wmi kernel driver. Include the available information in
the output of dmidecode.
|
|
|
|
|
| |
Often DMI strings have trailing spaces. Ignore these when checking for
known vendor names.
|
| |
|
| |
|
|
|
|
|
| |
The SMBIOS v3 entry point has a different identifier in the EFI systab.
Add support for it, as well as 64-bit addresses.
|
|
|
|
|
| |
When we don't decode type 40 in quiet mode, we shouldn't print the
blank line after it either.
|
| |
|
|
|
|
|
|
|
|
| |
DMI type 0 is the BIOS information, it doesn't tell us about the
system vendor. DMI type 1 does that. It made no difference so far
because the only vendor with support for OEM-type decoding was HP and
they make their own BIOS, but it will matter as soon as we add support
for more vendors.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Originally the highest regular DMI structure type was 39, and non-OEM
types greater than that (including 126/disabled and 127/end-of-table)
wouldn't show up in quiet mode. The limit was not updated when types
41 and 42 were added to the SMBIOS specification, so these types do
not show up in quiet mode. Fix that.
We could simply raise the limit from 39 to 42, but the fact that this
bug went unnoticed for years is probably a good indication that this
limit was a bad idea in the first place and it is safer to only
explicitly hide types 126 and 127 in quiet mode.
|
|
|
|
|
| |
We can let function dmi_table read the memory chunk and free the
memory for us, this avoids some code duplication.
|
|
|
|
| |
This will let us share more code between the decode and dump options.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
FLAG_NO_FILE_OFFSET must be honored also in --dump-bin mode.
As a side effect, the --dump-bin mode becomes a little more verbose by
default, but I don't think this is a problem. It can still be silenced
completely with -q if needed.
|
|
|
|
|
|
| |
The SMBIOS v3 64-bit entry points do not provide the exact size of the
DMI table, only a maximum, so we have to stop decoding at the
End-of-Table (127) type structure.
|
|
|
|
|
|
|
|
| |
We can easily support 64-bit addresses by compiling dmidecode with
-D_FILE_OFFSET_BITS=64. This looks reasonably portable.
Also add support for 32-bit long tables, as SMBIOS 3.0.0 allows it,
even though I don't expect to see such a long DMI table any time soon.
|
|
|
|
|
|
| |
Add support for 3 new fields in DMI type 4 (Processor Information):
extended core and thread counts, for systems with more than 255 of
those.
|
|
|
|
|
|
| |
Add 28 new enumerated values from the SMBIOS 3.0.0 specification (3
chassis types, 4 processor families, 4 processor upgrades, 13 slot
types and 4 memory device types.)
|
|
|
|
|
|
|
|
| |
Add preliminary support for the new _SM3_ 64-bit entry point defined
in the SMBIOS specification version 3.0.0.
64-bit addresses are not actually supported yet, nor tables with size
over 16-bit.
|
|
|
|
|
| |
Credit Anton and Roy for their work, and add myself as the current
maintainer again.
|
|
|
|
|
|
|
|
| |
This option forces any SMBIOS information in sysfs to be ignored, resulting
in dmidecode using /dev/mem for SMBIOS access. This is likely most useful
for debugging.
Contributed by Roy Franz.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add preferential reading of the SMBIOS tables from
/sys/firmware/dmi/tables. If these files are not present or
not valid, the previously supported methods of locating SMBIOS
tables are attempted.
Messages indicating which source is used for the tables
have been added. These are printed before the tables have
been validated so they can go at the top of the output. This
also shows what methods have been tried and failed due to invalid
tables.
The address of the entry point is not known when read from sysfs,
so it is not printed in that case.
A placeholder print is added where 64-bit entry point processing
will be added.
Contributed by Roy Franz.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This allows dmi_table() to print the address that the table was read from,
even when reading from a sysfs file. Previous to sysfs support, the address
of the table was always the same as the offset within the file it was read
from (usually /dev/mem.) For sysfs files that contain just the table at
offset 0, we still want to pass the address and display that as normal,
but read from offset 0 in the file. If the flag FLAG_NO_FILE_OFFSET
is passed, dmi_table() uses 'base' as the DMI table address for display,
but uses 0 as the file offset.
Contributed by Roy Franz.
|
|
|
|
|
|
|
|
|
|
|
| |
Add a function that can read a complete, unknown size file for
reading entry point files from sysfs. This function models its signature
on the mem_chunk() funtion, so it also allocates memory that the caller
needs to free. The files that we are interested in reading are very small,
and have a known upper bound on the size. The EINTR handling is based
on the myread() function.
Contributed by Roy Franz.
|
|
|
|
| |
SMBIOS specification version 3.0.0.
|
| |
|
| |
|
|
|
|
|
| |
was taken from preliminary SMBIOS specification version 3.0.0d. This closes
bug #43370.
|
| |
|
|
|
|
| |
Patch from Jens Rosenboom.
|
| |
|
| |
|
|
|
|
| |
This closes bug #41642.
|
| |
|
| |
|
|
|
|
|
| |
This fixes Savannah bug #40178:
https://savannah.nongnu.org/bugs/?40178
|
|
|
|
| |
fixes the FSF address.
|
|
|
|
| |
a warning.
|
|
|
|
| |
device type (DMI type 17.)
|
| |
|
| |
|
|
|
|
| |
Not that I really expect memory modules running above 32 V...
|
| |
|