Home | History | Annotate | Download | only in acpidump
History log of /src/usr.sbin/acpitools/acpidump/acpidump.c
RevisionDateAuthorComments
 1.8  06-Dec-2020  jmcneill acpi: add character device for accessing ACPI tables

The /dev/acpi character device gives an aperture into physical memory
that allows only read access to known ACPI tables: RSDP, XSDT/RSDT, and
the root tables. Adapt acpidump(8) to use this interface by default,
falling back to the old /dev/mem method if it is not available or if
ACPIDUMP_USE_DEVMEM=1 is set in the environment. The user visible benefit
of this change is that "options INSECURE" is no longer required to
dump ACPI tables.
 1.7  04-Aug-2017  msaitoh Sync with FreeBSD's r321294:
- Dump TCG ACPI spec table (TCPA) more.
- Dump DMA Remapping Reporting table (DMAR).
- Consistently cast ACPICA 64-bit integer types when we print them.
- Display the 'Flags' field in the HPET Description Table.
- Do not crash when RSDT/XSDT contains an empty entry.
- Print 64-bit addresses clearly with leading zeros to avoid confusions.
- Create temp file safely.
- Add missing flags into FADT.
- Print some new ACPI 5.1 MADT entries.
- Use __arraycount().
- Warn and exit loop on invalid subtable length.
- Fix the type used to hold the value returned from getopt. On arm64 char is
unsigned so will never be -1.
 1.6  20-Sep-2015  wiz branches: 1.6.8;
Add -s to getopt(3)-string.

Noted missing by Henning Petersen in PR 50255.

While here, clean up usage.
 1.5  29-Aug-2011  joerg Use __dead.
 1.4  17-Feb-2011  jmcneill - when dumping table bytes, make sure to dump our header and not the next one
- also dump tables with bad checksums, unless the -s flag is specified
 1.3  17-Feb-2011  jmcneill dump bytes for tables that acpidump doesn't decode, and print them
as characters instead of hex if '-c' flag is provided
 1.2  22-Dec-2009  cegger branches: 1.2.2;
Import acpidump from FreeBSD per request from jmcneill@
Changes made in the port:
- adapt path to iasl from /usr/sbin/iasl to /usr/bin/iasl
- fix realpath() usage to accomplish NetBSD's behaviour
- use EXIT_FAILURE/EXIT_SUCCESS everywhere
- fix crash on corrupt DSDT file and print proper error message
- implemented additional ACPI table parsers for
BERT, BOOT, CPEP, DBGP, EINJ, ERST, HEST, MSCT, SBST,
SLIT, SPCR, TCPA, WAET, WDAT and WDRT
 1.1  14-Jan-2007  christos Add acpitools
 1.2.2.1  17-Feb-2011  bouyer Sync with HEAD
 1.6.8.1  22-Nov-2017  martin Pull up following revision(s) (requested by msaitoh in ticket #378):
usr.sbin/acpitools/acpidump/acpi_user.c: revision 1.4
usr.sbin/acpitools/acpidump/acpi.c: revision 1.20
usr.sbin/acpitools/acpidump/acpidump.c: revision 1.7
usr.sbin/acpitools/acpidump/acpi.c: revision 1.21
usr.sbin/acpitools/acpidump/acpidump.8: revision 1.10
usr.sbin/acpitools/acpidump/acpi.c: revision 1.22
usr.sbin/acpitools/acpidump/acpidump.h: revision 1.6
usr.sbin/acpitools/acpidump/acpi.c: revision 1.23
usr.sbin/acpitools/acpidump/acpidump.h: revision 1.7
usr.sbin/acpitools/acpidump/acpi.c: revision 1.24
usr.sbin/acpitools/acpidump/acpidump.8: revision 1.8
usr.sbin/acpitools/acpidump/acpi.c: revision 1.25
usr.sbin/acpitools/acpidump/acpidump.8: revision 1.9
usr.sbin/acpitools/acpidump/acpi.c: revision 1.26
usr.sbin/acpitools/acpidump/acpi.c: revision 1.28
usr.sbin/acpitools/acpidump/acpi.c: revision 1.16
usr.sbin/acpitools/acpidump/acpi.c: revision 1.17
usr.sbin/acpitools/acpidump/acpi.c: revision 1.18
usr.sbin/acpitools/acpidump/acpi.c: revision 1.19
Sync with FreeBSD's r321294:
- Dump TCG ACPI spec table (TCPA) more.
- Dump DMA Remapping Reporting table (DMAR).
- Consistently cast ACPICA 64-bit integer types when we print them.
- Display the 'Flags' field in the HPET Description Table.
- Do not crash when RSDT/XSDT contains an empty entry.
- Print 64-bit addresses clearly with leading zeros to avoid confusions.
- Create temp file safely.
- Add missing flags into FADT.
- Print some new ACPI 5.1 MADT entries.
- Use __arraycount().
- Warn and exit loop on invalid subtable length.
- Fix the type used to hold the value returned from getopt. On arm64 char is
unsigned so will never be -1.
Check DSDT signature in acpi_handle_fadt() for broken ACPI table.
Add new function acpi_select_address() derived from acpi_get_fadt_revision().
On some systems, 32bit address is used for (X)Dsdt even if (X)Facs uses 64bit.
Don't assume an address size from FADT revision.
- Decode ACPI_HEST_GENERIC_V2.
- Decode ACPI_MADT_GENERIC_MSI_FRAME.
- Add NMI, CMCI, MCE, GPIO-Signal, ARMv8 SEA, ARMv8 SEI and GSIV
in acpi_print_hest_notify().
- Add ACPI_EINJ_SET_ERROR_TYPE_WITH_ADDRESS and ACPI_EINJ_GET_EXECUTE_TIMINGS
in acpi_print_einj_action().
- Add ACPI_ERST_EXECUTE_TIMINGS in acpi_print_erst_action().
- Decode NFIT (NVDIMM Firmware Interface Table) from FreeBSD.
Part of FreeBSD r323045:
- Print Valid Field in ACPI_NFIT_CONTROL_REGION with 0x%02x.
- Fix Flags of ACPI_NFIT_CONTROL_REGION.
- Add "Performance Server" and "Tablet" for Preferred_PM_Profile.
- Don't print FADT_RESET_REG if FADT version is 1.
- Print FADT ArmBootFlags, MinorRevision, SleepControl, SleepStatus and
HypervisorId.
- Print "{}" even if any flags aren't set.
Decode the following entries:
- DBG2 (Debug Port Table 2)
- SPMI (Server Platform Management Interface Table)
- WDDT (Watchdog Timer Description Table)
- UEFI (UEFI, not fully decoded yet)
Fix calculation the offset of the Action Table in WDAT to print each
entries correctly.
- Calculate offset of a sub header correctly in acpi_handle_hest() to print
all of sub entries in HEST correctly.
- Print a SpaceID number for unknown ID in acpi_print_gas().
- Use PRINTFLAG() in acpi_print_hest_notify().
- Use %u instead of %d for unsigned values in acpi_print_hest_generic().
- Space, tab and newline change for consistency output.
- Print a type number for unknown HEST sub entry ID.
Don't define GAS address ID constants in acpidump.h and use actypes.h's
definitions. No functional change.
Cosmetic change (tab and newline).

RSS XML Feed