[英]Tool to visualize the device tree file (dtb) used by the Linux kernel?
我正在寻找一种可以以图形方式表示 linux 内核中使用的硬件设备树的工具。 我正在尝试了解特定 arm 芯片组的 linux 内核。 这将是一个非常有用的工具。
dtc -O dts
sudo apt-get install device-tree-compiler
dtc -I dtb -O dts -o a.dts a.dtb
给出了设备树a.dts
缩进文本表示,使用文本编辑器很容易理解。 或者将其转储到stdout:
dtc -I dtb -O dts -o - a.dtb
dtc
的源代码存在于scripts/dtc/dtc.c
的内核树中
在Ubuntu 16.04上测试,使用Raspberry Pi 2的设备树,在2016-05-27-raspbian-jessie-qemu.img
的第一个分区中2016-05-27-raspbian-jessie-qemu.img
。
为方便起见,我在.bashrc
:
dtbs() ( dtc -I dtb -O dts -o - "$1" )
dtsb() ( dtc -I dts -O dtb -o - "$1" )
dtc
还可以从实时内核的/proc
中提取DTS,如下所示: https : //unix.stackexchange.com/questions/265890/is-it-possible-to-get-the-information-for-a-device -树-使用-SYS--A-运行
您可以尝试“ 组件”检查器工具。
它是QorIQ Configuration Suite的一部分,它是Eclipse的插件。
在这里下载。 (需要注册。免费下载。)
就个人而言,我大部分时间都在cmd-line上,并且非常沉迷于vi
,我发现只要dts
正确缩进,它的内置代码折叠功能就足够了。
设置热键命令以折叠/扩展vi
的代码块
通过.vimrc
添加到.vimrc
:
nnoremap <silent> <F5> zfa}<CR>
nnoremap <silent> <F6> zo<CR>
通过上面的设置,要折叠一个块/节点,只需将光标移动到它的任何一行(标题除外)上,然后点击F5 。 要展开折叠的块/节点,请移动到折叠标题的行并按F6 。
这是部分折叠的dts在vi
样子。
在linux上我们可以使用fdtdump直接打开dtb文件
fdtdump dtb_file.dtb > /tmp/test.txt
正如你们许多人在阅读完这个问题后想到的那样,看来组件检查工具不再可用。
Visual Studio Code (免费)提供了一个名为DeviceTree的市场扩展,它有助于导航设备树文件。 它看起来不如组件检查器工具那么好,但它确实执行突出显示和折叠等基本功能。
有几个工具:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.