Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
ACPIDUMP(8)		    System Manager's Manual		   ACPIDUMP(8)

NAME
       acpidump	-- dump	ACPI tables and	ASL

SYNOPSIS
       acpidump	   [-d]	  [-f	dsdt_input]   [-h]   [-o   dsdt_output]	  [-t]
		[-T table_name]	[-v]

DESCRIPTION
       The acpidump utility analyzes ACPI tables in physical  memory  and  can
       dump  them to a file.  In addition, acpidump can	call iasl(8) to	disas-
       semble AML (ACPI	Machine	Language) found	in these tables	and dump  them
       as ASL (ACPI Source Language) to	stdout.

       ACPI tables have	an essential data block	(the DSDT, Differentiated Sys-
       tem  Description	 Table)	 that  includes	information used on the	kernel
       side such as detailed information about PnP  hardware,  procedures  for
       controlling  power management support, and so on.  The acpidump utility
       can extract the DSDT data block from physical memory and	store it  into
       an  output  file	 and optionally	also disassemble it.  If any Secondary
       System Description Table	(SSDT) entries exist, they will	 also  be  in-
       cluded in the output file and disassembly.

       When  acpidump  is invoked without the -f option, it will read ACPI ta-
       bles from physical memory via /dev/mem.	First it searches for the RSDP
       (Root System Description	Pointer), which	has the	signature "RSD	PTR ",
       and  then gets the RSDT (Root System Description	Table),	which includes
       a list of pointers to physical memory addresses for other tables.   The
       RSDT  itself  and  all  other  tables  linked from RSDT are generically
       called SDTs (System Description Tables) and their header	has  a	common
       format  which  consists	of  items such as Signature, Length, Revision,
       Checksum, OEMID,	OEM Table ID, OEM Revision, Creator ID and Creator Re-
       vision.

       When invoked with the -t	flag, the acpidump utility dumps  contents  of
       all  the	ACPI tables, except the	DSDT and SSDT.	The following SDTs are
       reported	in detail, while the remainder will  only  report  the	common
       header information:

	     BERT Boot Error Record Table
		    Reports any	previous boot errors.
	     DMAR DMA Remapping	Table
		    Contains information about the DMA remapping necessary for
		    the	system for I/O virtualization on Intel CPUS.
	     DSDT Differentiated System	Description Table
		    Contains the main AML for the system.
	     ECDT Embedded Controller Boot Resources Table
		    Contains  information  about  accessing  the embedded con-
		    troller prior to the OS decoding the DSDT for all its  de-
		    tails.
	     EINJ Error	Injection Table
		    Use	to inject hardware errors to the error reporting mech-
		    anisms.
	     ERST Error	Record Serialization Table
		    Information	 to  retrieve  and manage errors reported from
		    the	hardware.
	     FACS Firmware ACPI	Control	Structure
		    Information	for the	OS to interact with the	 firmware  for
		    things  like suspend / resume and prevent mutual access to
		    resources shared between the OS and	the firmware.
	     FACP Fixed	ACPI Description Table (FADT)
		    Information	related	to power management, and other CPU re-
		    lated data.
	     HEST Hardware Error Source	Table
		    Describes the possible sources of hardware errors  to  the
		    OS.
	     HPET High Precision Event Timer Table
		    Describes the high precision timers	in the system.
	     IVRS I/O Virtualization Reporting Structure
		    Information	for hypvervisors to use	to share I/O resources
		    on AMD processors.
	     LPIT Low Power Idle Table
		    Power  management  information for reducing	power usage of
		    the	system.
	     MADT Multiple APIC	Description Table
		    Describes all the  Advanced	 Programmable  Interrupt  Con-
		    trollers  and  Intel Streamlined Advanced Programmable In-
		    terrupt Controller present in the system.
	     MCFG PCI Express Memory-mapped Conguration
		    PCI	config space base address register.
	     NFIT NVDIMM Firmware Interface Table
		    NVDIMM information in the system.
	     RSD PTR
		    Pointer to the RSDT.
	     RSDT Root System Description Table
		    An array of	physical pointers to other system  description
		    tables, the	FACP (Fixed ACPI Description Table).
	     SLIT System Locality Distance Information Table
		    Provides  information  about the cost of communicating be-
		    tween different parts of the system	(NUMA).
	     SPCR Serial Port Console Redirection
		    Contains  informatiom  about  any  serial  port  that  the
		    firmware used as a reporting console.
	     SRAT System Resource Afnity Table
		    Defines  the domains of locality in	the system for proces-
		    sors, memory and generic initiators	 (eg  PCIe  root  com-
		    plexes).
	     TCPA Trusted Computing Platform Alliance
		    Information	about the TPM elements of the system.
	     TPM2 Trusted Platform Module 2
		    Additional information about newer TPM hardware.
	     WDDT Watchdog Timer Description Table
		    Information	 about	how  to	 manage	watchdog timers	in the
		    system.

       The FACP	defines	static system information about	power management  sup-
       port  (ACPI  Hardware  Register	Implementation)	such as	interrupt mode
       (INT_MODEL), SCI	interrupt number, SMI command port (SMI_CMD)  and  the
       location	 of ACPI registers.  The FACP also has a pointer to a physical
       memory address for the DSDT.  While the other tables are	fixed  format,
       the DSDT	consists of free-formatted AML data.

OPTIONS
       The following options are supported by acpidump:

       -d      Concatenate  the	DSDT and the SSDT's into single	image and dis-
	       assemble	the image into ASL using iasl(8) and print the results
	       to stdout.

       -t      Dump the	contents of the	various	fixed tables listed above.

       -T -ar -table_name
	       Dump the	contents of the	specific table.	 All ACPI  tables  are
	       exactly 4 characters long.

       -h      Displays	usage and exit.

       -s      Disassemble  each  of  the  DSDT	 and the SSDT's	into ASL using
	       iasl(8) and print the  results  to  stdout.   This  will	 avoid
	       iasl(8)	error on disassembling concatenated image.  If both -d
	       and -s are specified, the last option is	effective.

       -v      Enable verbose messages.

       -f dsdt_input
	       Load the	DSDT from the specified	file instead of	physical  mem-
	       ory.   Since  only  the DSDT is stored in the file, the -t flag
	       may not be used with this option.

       -o dsdt_output
	       Store the DSDT data block from physical memory into the	speci-
	       fied file.

FILES
       /dev/mem

EXAMPLES
       If  a  developer	 requests a copy of your ASL, please use the following
       command to dump all tables and compress the result.

	     # acpidump	-dt | gzip -c9 > my_computer.asl.gz

       This example dumps the DSDT from	physical memory	to foo.dsdt.  It  also
       prints  the  contents of	various	system tables and disassembles the AML
       contained in the	DSDT to	stdout,	redirecting the	output to foo.asl.

	     # acpidump	-t -d -o foo.dsdt > foo.asl

       This example reads a DSDT file and disassembles it to stdout.   Verbose
       messages	are enabled.

	     # acpidump	-v -d -f foo.dsdt

SEE ALSO
       acpi(4),	mem(4),	acpiconf(8), acpidb(8),	iasl(8)

HISTORY
       The acpidump utility first appeared in FreeBSD 5.0 and was rewritten to
       use iasl(8) for FreeBSD 5.2.

AUTHORS
       Doug Rabson <dfr@FreeBSD.org>
       Mitsuru IWASAKI <iwasaki@FreeBSD.org>
       Yasuo YOKOYAMA <yokoyama@jp.FreeBSD.org>
       Nate Lawson <njl@FreeBSD.org>

       Some	  contributions	      made	 by	  Chitoshi	Ohsawa
       <ohsawa@catv1.ccn-net.ne.jp>,		 Takayasu	      IWANASHI
       <takayasu@wendy.a.perfect-liberty.or.jp>,       Yoshihiko      SARUMARU
       <mistral@imasy.or.jp>, Hiroki  Sato  <hrs@FreeBSD.org>,	Michael	 Lucas
       <mwlucas@blackhelicopters.org> and Michael Smith	<msmith@FreeBSD.org>.

BUGS
       The  current  implementation  does not dump the BOOT structure or other
       miscellaneous tables.

FreeBSD	15.0			October	5, 2024			   ACPIDUMP(8)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=acpidump&sektion=8&manpath=FreeBSD+15.0-RELEASE+and+Ports>

home | help