UEFI Tips: 生成当前ACPI Table Hardware Mapfile

最近在研究 ACPICA ,发现iasl.exe 的一个有趣的功能:生成当前ACPI Table Hardware Mapfile。这个功能可以生成当前 ACPI Table 中硬件资源的列表,例如:

Intel ACPI Component Architecture
ASL Optimizing Compiler version 20140828-32 [Sep 19 2014]
Copyright (c) 2000 - 2014 Intel Corporation

Compilation of "dsdt.dsl" - Fri Sep 19 09:43:52 2014


Resource Descriptor Connectivity Map
------------------------------------

GPIO Controller:  INT33FC   \_SB.GPO0                     // Intel Baytrail GPIO Controller

Pin   Type     Direction    Polarity    Dest _HID  Destination

0000  GpioInt  -Interrupt-  ActiveBoth   INTCFD9   \_SB_.
0000  GpioInt  -Interrupt-  ActiveBoth   INTCFD9   \_SB_.TBAD
0001  GpioInt  -Interrupt-  ActiveBoth   INTCFD9   \_SB_.TBAD
0002  GpioIo   OutputOnly                -Field-   \_SB_.GPO0.CCU2
0003  GpioIo   OutputOnly                -Field-   \_SB_.GPO0.CCU3
0026  GpioIo   InputOnly                80860F14   \_SB_.SDHC
0026  GpioInt  -Interrupt-  ActiveBoth  80860F14   \_SB_.SDHC
0028  GpioIo   OutputOnly               80860F14   \_SB_.SDHC
0029  GpioIo   OutputOnly               80860F14   \_SB_.SDHC
0036  GpioIo   OutputOnly               -No HID-   \_SB_.PCI0.OTG1 
0041  GpioIo   OutputOnly               10EC5640   \_SB_.I2C2.RTEK
005F  GpioIo   OutputOnly                -Field-   \_SB_.GPO0.TCON
0060  GpioInt  -Interrupt-  ActiveBoth   INTCFD9   \_SB_.TBAD
0064  GpioIo   OutputOnly                MCD0001   \MDM_ 

I2C  Controller:  80860F41  \_SB.I2C2                     // Intel Baytrail I2C Host Controller

Type  Address   Speed      Dest _HID  Destination
I2C    0010    00061A80     INT33BE   \_SB_.I2C2.CAM1               // Camera Sensor OV5693
I2C    001C    00061A80    10EC5640   \_SB_.I2C2.RTEK               // Realtek I2S Audio Codec
I2C    0048    00061A80     INT33F0   \_SB_.I2C2.CAMB               // Camera Sensor MT9M114

SPI  Controller:  80860F0E  \_SB.SPI1                     // Intel SPI Controller

Type  Address   Speed      Dest _HID  Destination
SPI    0001    007A1200    AUTH2750   \_SB_.SPI1.FPNT               // AuthenTec AES2750

UART Controller:  80860F0A  \_SB.URT1                     // Intel Atom UART Controller

Type  Address   Speed      Dest _HID  Destination
UART   0000    0001C200     UTK0001   \_SB_.URT1.UART             
UART   0000    0001C200    OBDA8723   \_SB_.URT1.BTH1             

比如,从上面可以看到 Table中有一个名为SPI1的 SPI 控制器,ID 是 80860F0E,然后它下面有一个叫做 FPNT 的设备,HID为AUTH2750,速度是8Mhz(0x7a1200)。

使用方法是: iasl.exe -lm dsdt.asl

生成结果在同一个目录下的 dsdt.map 中。

《UEFI Tips: 生成当前ACPI Table Hardware Mapfile》有2个想法

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注