查看ACPI的表

本节介绍如何在Linux上查看ACPI的表。首先安装用于将ACPI的信息输出到文件的名为pmtools工具包,该包是RPM格式,用于反汇编(disassemble)AML的工具包iasl,该包为RPM格式。在Fedora 13的情况下可以使用yum命令来安装。


yum install pmtools

yum install iasl


如果是不包含pmtools和iasl的发布版,pmtools可以从http://www.lesswatts.org/projects/acpi/utilities.php下载。iasl可以从http://www.acpica.org/下载。

首先,使用pmtools中的acpidump命令输出ACPI的表。想要输出DSDT表时的操作如下。


acpidump-b-t DSDT-o dsdt.dat


然后使用iasl将这些数据反汇编。


iasl-d dsdt.dat

Intel ACPI Component Architecture

AML Disassembler version 20090123[Feb 25 2009]

Copyright(C)2000-2009 Intel Corporation

Supports ACPI Specification Revision 3.0a

Loading Acpi table from file dsdt.dat

Acpi table[DSDT]successfully installed and loaded

Pass 1 parse of[DSDT]

Pass 2 parse of[DSDT]

Parsing Deferred Opcodes(Methods/Buffers/Packages/Regions)

……

……

Parsing completed

Disassembly completed, written to"dsdt.dsl"


这样就生成了名为dsdt.dsl的文件。从其中可以看到DSDT的ACPI表头文件和使用ASL写的定义块。查看DSDT等ACPI的表,就可以看到系统支持的功能。

查看ACPI的表 - 图1


Name(_HID, EisaId("PNP0A03"))

Name(_ADR, Zero)

Name(_UID, One)

Name(_PRT, Package(0x80)

{

……