最近在研究 ACPICA ,发现iasl.exe 的一个有趣的功能:生成当前ACPI Table Hardware Mapfile。这个功能可以生成当前 ACPI Table 中硬件资源的列表,例如:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | 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 中。
請問 dsdt.asl 怎麼來的?
随便找的一个项目编译生成的。