U-boot prend désormais en charge le démarrage de Linux à partir d’un serveur HTTP

U-boot prend désormais en charge le démarrage de Linux à partir d'un serveur HTTP

Jusqu’à présent, U-boot ne prenait en charge que le protocole de datagramme utilisateur (UDP) permettant le démarrage TFTP et NFS, mais Linaro a maintenant ajouté la prise en charge de TCP et HTTP dans U-boot afin de démarrer Linux à partir de serveurs Web courants.

Le démarrage TFTP à partir de U-boot est pris en charge depuis des années, car vers 2006, je me souviens avoir implémenté le démarrage TFTP Linux pour un système de karaoké afin de réduire le coût BoM en sélectionnant un périphérique flash plus petit, et j’ai également expliqué comment démarrer Linux sur une box TV avec TFTP en 2014. Cela nécessite l’installation d’un serveur TFTP sur votre serveur, ce qui est une tâche assez triviale, mais les serveurs HTTP sont omniprésents, c’est donc un ajout bienvenu à U-boot.

U-Boot HTTP

Si vous souhaitez utiliser HTTP pour démarrer Linux, il doit être activé dans la configuration U-boot :

Les options du haut et du bas sont assez évidentes et la deuxième configuration active l’accusé de réception sélectif (SACK) pour des performances maximales du protocole TCP.

Une fois que vous avez installé un serveur HTTP sur le serveur hébergeant l’image Linux, vous pouvez démarrer Linux sur le périphérique cible exécutant U-boot comme suit :

Alternativement, il est également possible de charger Linux avec une seule ligne de commande après l’acquisition d’une adresse IP via DHCP :

Démarrage HTTP U-boot Linux

L’avantage d’utiliser HTTP sur TFTP est limité, mais ce n’est que le début du travail effectué dans le cadre du projet Arm SystemReady, car Linaro prévoit de mettre en œuvre le support HTTPS et éventuellement de l’intégrer au démarrage HTTP UEFI afin de permettre à U-boot de disposer d’un moyen standardisé et sécurisé de télécharger des images de démarrage à partir d’un serveur Web.

Via le blog Linaro