AML 调试器

版权

© 2016, 英特尔公司

作者

Lv Zheng <lv.zheng@intel.com>

本文档描述了嵌入在 Linux 内核中的 AML 调试器的用法。

1. 构建调试器

要从 Linux 内核启用 AML 调试器接口,需要以下内核配置项:

CONFIG_ACPI_DEBUGGER=y
CONFIG_ACPI_DEBUGGER_USER=m

用户空间工具可以使用以下命令从内核源代码树构建:

$ cd tools
$ make acpi

生成的用户空间工具二进制文件位于:

tools/power/acpi/acpidbg

可以通过运行 “make install”(以具有足够权限的用户身份)将其安装到系统目录。

2. 启动用户空间调试器接口

在内核内置调试器启动后,可以使用以下命令启动调试器:

# mount -t debugfs none /sys/kernel/debug
# modprobe acpi_dbg
# tools/power/acpi/acpidbg

这将启动交互式 AML 调试器环境,您可以在其中执行调试器命令。

命令记录在“ACPICA 概述和程序员参考”中,该文档可从以下地址下载:

https://acpica.org/documentation

详细的调试器命令参考位于第 12 章“ACPICA 调试器参考”中。“help”命令可用于快速参考。

3. 停止用户空间调试器接口

可以通过按 Ctrl+C 或使用“quit”或“exit”命令关闭交互式调试器接口。完成后,使用以下命令卸载模块:

# rmmod acpi_dbg

如果存在正在运行的 acpidbg 实例,模块卸载可能会失败。

4. 在脚本中运行调试器

在测试脚本中运行 AML 调试器可能很有用。“acpidbg”以特殊的“批处理”模式支持此功能。例如,以下命令输出整个 ACPI 命名空间:

# acpidbg -b "namespace"