Logiciels Libres et Systèmes Embarqués


4.7. Charger U-Boot

Maintenant que nous avons un logiciel pour lancer le noyau Linux, on peut se demander comment exécuter à son tour U-Boot. La solution la plus simple consiste à stocker le binaire brut de U-Boot (nommé u-boot.bin) dans de la mémoire Flash à l'adresse TEXT_BASE. Il suffit alors d'écrire le programme, chargé en BRAM lors du démarrage du FPGA, qui effectue un branchement à l'adresse TEXT_BASE + 0x100 (point d'entrée de U-Boot). Si on utilise un autre type de mémoire non volatile ne permettant pas l'exécution sur place[14], comme par exemple le SystemAce, il suffit de copier tels quels les octets de u-boot.bin vers l'adresse TEXT_BASE puis d'effectuer le même branchement que précédemment.



[14] "eXcute In Place" (XIP) en Anglais.