Je veux utiliser une image de noyau non compressée et démarrer le BeagleBoard. En général, j'utilise uImage pour démarrer le noyau qui est au format compressé. Comment utiliser une image de noyau non compressée?
Je veux utiliser une image de noyau non compressée et démarrer le BeagleBoard. En général, j'utilise uImage pour démarrer le noyau qui est au format compressé. Comment utiliser une image de noyau non compressée?
Réponses:
Pour autant que je sache, U-Boot ne peut pas démarrer directement une image ELF «brute» ( vmlinux). Vous devez le transformer au uImageformat, qui contient le comprimé vmlinuxplus quelques octets supplémentaires de métadonnées qui décrivent l'adresse de chargement du noyau. U-Boot FAQ 2.19 explique comment générer uImage; c'est assez simple, en utilisant l' mkimageutilitaire dans l'arborescence des sources U-Boot:
mkimage -A arm -O linux -T kernel -C gzip … -d vmlinux uImage
(Vous devrez peut-être des paramètres supplémentaires indiquant l'adresse de chargement.)
Si vous utilisez Buildroot, sélectionnez un uImagefichier de sortie du noyau ( BR2_LINUX_KERNEL_UIMAGE=y). Compilez normalement et Buildroot créera également un vmlinuxfichier dans une étape intermédiaire. Bien que le vmlinuxfichier ne soit pas copié dans le /output/imagesrépertoire, il peut être trouvé dans ./output/build/linux-custom/(ou en exécutant find . -name "vmlinux").