Wireva

Une fuite technique laisse entrevoir les caractéristiques du Raspberry Pi Zero 3W

Un fichier DeviceTree attribué au futur Raspberry Pi Zero 3W révèle plusieurs indications sur le processeur, les interfaces et l’alimentation de la carte, tandis qu’un article de Hackaday en profite pour expliquer le fonctionnement de ces fichiers de configuration matérielle.

Un fichier DeviceTree attribué à un futur Raspberry Pi Zero 3W aurait révélé plusieurs détails sur la carte avant sa présentation officielle. Selon les informations relayées par Hackaday, ce fichier suggère que la carte embarquerait le processeur BCM2711, déjà utilisé par le Raspberry Pi 4, ainsi qu’une possible exposition du bus PCIe.

Le même fichier laisse aussi penser à la présence d’un bouton de mise sous tension intégré à la carte, ainsi que d’une LED d’alimentation supplémentaire. Une option de mémoire eMMC semble également prévue. L’auteur de l’article avance par ailleurs l’hypothèse que la carte pourrait être double face, et il espère que ce modèle adoptera enfin le port USB-C. Il s’agit toutefois de pures spéculations, aucun élément confirmé n’étant à ce stade disponible.

Au-delà de cette fuite, Hackaday profite de l’occasion pour présenter les fichiers DeviceTree, un élément souvent mal connu du grand public. Ces fichiers indiquent au noyau du système d’exploitation quel processeur est présent, quels pilotes utiliser, quelles interfaces sont disponibles et quels périphériques sont raccordés. On les retrouve dans de nombreux appareils : téléphones, routeurs, ordinateurs portables équipés de processeurs ARM et cartes monocarte de type SBC.

Les fichiers sources, portant les extensions.dts et.dtsi, sont compilés en binaires.dtb ou.dtbo. Le compilateur peut aussi effectuer l’opération inverse, la décompilation, et l’outil est installable via apt. L’article distingue trois types de fichiers : les fichiers d’inclusion, les fichiers de base et les overlays, qui ajoutent ou modifient des périphériques par-dessus le fichier de base. Chez Raspberry Pi, les overlays se configurent dans le fichier config.txt et peuvent être chargés dynamiquement avec la commande dtoverlay, ce qui n’est généralement pas le cas sur les autres cartes, où il faut modifier, redémarrer puis tester.

Cette méthode comporte cependant des risques. Un overlay défectueux peut bloquer le démarrage, et la récupération peut alors nécessiter de retirer la carte SD ou la mémoire eMMC. Des exemples d’overlays sont disponibles dans les dépôts de Raspberry Pi, de Linux, de Radxa et d’Armbian. L’auteur précise aussi que l’outil de compilation de base ne traite pas les directives #include sans préprocesseur. Il présente enfin son projet de PDA Blepis, dont la compilation des overlays est automatisée par script, et met en garde contre certains tutoriels générés par intelligence artificielle, qui inventent parfois des propriétés inexistantes.