ACPI名称空间中的对象目录在哪里?

时间:2010-12-01 17:57:06

标签: bios acpi asl dsdt

我正在尝试阅读并撰写一些 ACPI源语言。

我在代码中看到了我正在查看的语句,这些语句将值存储到特定的......啊,寄存器我想,在ACPI对象命名空间中。它看起来像这样:

    Store(Arg0, \_SB_.PCI0.LPC0.BCMD)

我想要的是 SB 命名空间中命名范围和对象的目录及其含义。

将值存储到_SB_.PCI0.LPC0.BCMD

时,这意味着什么?

还有其他例子:

    Store(0x80, \_SB_.PCI0.LPC0.SMIC)

所以,我不想要BCMD的答案,我想要描述所有可用对象,它们的名称,以及它们的行为或含义的引用。

我认为这个目录特定于每种特定类型的硬件。带有变速风扇的计算机会通过ACPI对象公开它的基本控制和管理;类似于生物识别指纹识别器和1394端口。我想,每个特定于make + model of computer的硬件功能都有自己独特的名称树。

感谢您的任何指示。

1 个答案:

答案 0 :(得分:2)

查找特定变量的最佳位置是ACPI规范(www.acpi.info/spec.htm)。保留名称以下划线'_'开头,所有这些都将在规范中描述。

所有其他变量都特定于特定的BIOS,尽管在给定供应商的BIOS中往往存在一些命名一致性,并且名称本身可以给出提示,尽管4字符命名限制是一个不幸的问题!

如果您从给定的BIOS中获取DSDT并对其进行反编译,您可以很好地了解ASL的结构和流程。如果您有更具体的问题,我会非常乐意回答它们!