Инструмент для визуализации файла дерева устройств (dtb), используемого ядром Linux?
Я ищу инструмент, который может графически представлять дерево аппаратного устройства, используемое в ядре linux. Я пытаюсь понять ядро Linux для конкретного набора микросхем. Это был бы действительно полезный инструмент.
Ответы
Ответ 1
Вы можете попробовать инструмент Инспектор компонентов.
![enter image description here]()
Это часть QorIQ Configuration Suite, которая является плагином для Eclipse.
Загрузите здесь.
(Требуется регистрация. Бесплатно скачать.)
Лично, как я на большой части cmd-линии, и довольно зависим от vi
, я обнаружил, что его встроенные возможности сгибания кода несколько достаточны, если dts
имеет правильный отступ.
Настройка горячих клавиш для сгибания/расширения блоков кода в vi
добавив следующие строки в .vimrc
:
nnoremap <silent> <F5> zfa}<CR>
nnoremap <silent> <F6> zo<CR>
С помощью вышеуказанной настройки, чтобы свернуть блок / node, просто переместите курсор на любую из его строк (кроме названия) и нажмите F5. Чтобы развернуть сложенный блок /node, перейдите к строке со сложенным названием и нажмите F6.
Вот что выглядит сложенным dts в vi
.
![enter image description here]()
Ответ 2
dtc -O dts
sudo apt-get install device-tree-compiler
dtc -I dtb -O dts -o a.dts a.dtb
дает хорошо отступы текстовое представление дерева устройств a.dts
, которое легко понять с помощью текстового редактора.
Upstream для dtc
находится в дереве ядра scripts/dtc/
.
Протестировано на Ubuntu 16.04, с деревом устройств Raspberry Pi 2, найденным в первом разделе 2016-05-27-raspbian-jessie-qemu.img
.
Для удобства:
dtbs() ( dtc -I dtb -O dts -o - "$1"; )
dtsb() ( dtc -I dts -O dtb -o - "$1"; )
Ответ 3
В большинстве настольных сред есть какой-то инструмент или другой (KinfoCenter в KDE), чтобы "графически" отображать полную системную информацию, включая дерево устройств. Существует также несколько инструментов командной строки, которые в основном относятся к типу device-lsdev, lspci, lsusb, fdisk, lsscsi, lscpu, dmidecode и т.д. Busybox (поскольку вы упоминаете встроенный linux) поддерживает некоторые из этих команд. Вы также можете разобрать sysfs.
Однако, если все, что вы хотите знать, это устройства, присутствующие в вашем "чипсете", почему бы вам просто не взглянуть на руководство SOC?