GNU/Linux >> Tutoriels Linux >  >> Linux

Qu'est-ce qu'un fichier u-Boot dtb et comment l'utiliser (BeagleBoard xM) ?

Répondre à ma propre question, après avoir compris ce qu'il faut rechercher. Un fichier "dtb" contient un Device Tree Blob (ou Binary)(belle description ici). C'est le nouveau moyen de transmettre des informations matérielles sur la carte au noyau Linux.

Il peut être chargé en mémoire et transmis au noyau par u-Boot.

Voici les commandes u-Boot que j'ai utilisées :

setenv bootargs 'console=tty0 console=ttyO2,115200n8 root=/dev/mmcblk0p2 rootwait rootfstype=ext4 rw'
fatload mmc 0:1 0x80300000 zImage
fatload mmc 0:1 0x815f0000 beagle-xm.dtb
bootz 0x80300000 - 0x815f0000

zImage étant le noyau et beagle-xm.dtb étant le blob de l'arborescence des périphériques. J'ai automatisé le processus de démarrage en configurant une variable "uenvcmd=..." dans uEnv.txt (avec ce qui précède), mais c'est un peu moche et il y a probablement de meilleures façons.

Notez que cela démarre et indique qu'il a bien chargé l'arborescence des périphériques. Cependant, je n'ai toujours pas de périphériques USB ni de vidéo (pour autant que je sache). Cependant, je soupçonne que cela peut être un problème différent.


J'utilise Ubuntu 14.04 sur le beaglebone black, donc ma configuration peut être un peu différente, mais voici comment j'ai chargé un dtb personnalisé :

Dans uEnv.txt, ajoutez une ligne avec :dtb=name-of-desired.dtb

Les emplacements recherchés doivent être tels que spécifiés ici. Pour moi, c'était /boot/dtbs/linux-kernel/ où linux-kernel est le nom de la version chargée.


Linux
  1. Comprendre les chemins de fichiers et comment les utiliser sous Linux

  2. Qu'est-ce qu'une commande Chown sous Linux et comment l'utiliser

  3. Qu'est-ce qu'une commande cURL et comment l'utiliser ?

  4. Qu'est-ce que NFS et comment l'installer sous Linux

  5. Chroot "prison" - Qu'est-ce que c'est et comment l'utiliser ?

Qu'est-ce que Terraform et comment l'installer et l'utiliser sur AWS EC2

Fichier hôte Linux :comment le modifier et l'utiliser ?

Introduction au VPN et voici comment l'utiliser sous Linux

Comment créer et utiliser un fichier d'échange sous Linux

Qu'est-ce qu'EasyApache et comment l'utiliser ?

Comment utiliser Sed pour rechercher et remplacer une chaîne dans un fichier