Je recherche un outil pouvant représenter graphiquement l’arborescence de périphériques utilisés dans le noyau Linux. J'essaie de comprendre le noyau Linux pour un chipset particulier. Ce serait un outil vraiment utile.
Vous pouvez essayer l'outil Inspecteur de composants .
Il fait partie de QorIQ Configuration Suite qui est un plugin pour Eclipse.
Télécharger ici. (Nécessite une inscription. Gratuit à télécharger.)
Personnellement, comme je suis la plupart du temps sur cmd-line et assez accro à vi
name__, je trouve que ses capacités de pliage de code intégrées sont assez suffisantes tant que dts
NAME _ est correctement mis en retrait.
Configurez les commandes par raccourci clavier pour plier/développer des blocs de code dans vi
name__
en ajoutant les lignes suivantes à .vimrc
:
nnoremap <silent> <F5> zfa}<CR>
nnoremap <silent> <F6> zo<CR>
Avec la configuration ci-dessus, pour plier un bloc/noeud, déplacez simplement le curseur sur l’une de ses lignes (sauf le titre) et appuyez sur F5. Pour développer un bloc/nœud plié, placez-vous sur la ligne avec le titre plié et appuyez sur F6.
Voici à quoi ressemble un fichier dts partiellement plié dans vi
name__.
dtc -O dts
Sudo apt-get install device-tree-compiler
dtc -I dtb -O dts -o a.dts a.dtb
donne une représentation textuelle bien en retrait de l’arbre de périphériques a.dts
, qui est facile à comprendre avec un éditeur de texte. Ou jetez-le sur stdout avec:
dtc -I dtb -O dts -o - a.dtb
Le code source de dtc
est présent dans l’arborescence du noyau lui-même sous scripts/dtc/dtc.c
Testé sur Ubuntu 16.04, avec l’arborescence de périphériques de Raspberry Pi 2, trouvée dans la première partition de 2016-05-27-raspbian-jessie-qemu.img
.
Pour plus de commodité, j'ai dans mon .bashrc
:
dtbs() ( dtc -I dtb -O dts -o - "$1" )
dtsb() ( dtc -I dts -O dtb -o - "$1" )
dtc
peut également extraire le DTS de /proc
d'un noyau actif, comme indiqué à: https://unix.stackexchange.com/questions/265890/is-it-possible-to-get-the- information-for-a-device-tree-using-sys-of-a-running
Sur linux, nous pouvons ouvrir directement le fichier dtb en utilisant fdtdump
fdtdump dtb_file.dtb > /tmp/test.txt
Comme beaucoup d'entre vous l'ont compris après avoir lu cette question, il apparaît que l'outil Inspecteur de composants n'est plus disponible.
Code Visual Studio (gratuit) fournit une extension sur le marché appelée DeviceTree qui facilite la navigation dans les fichiers d'arborescence de périphériques. Il ne semble pas être aussi performant que l'outil Inspecteur de composants, mais il exécute des fonctions de base telles que la mise en surbrillance et la réduction.