Bonjour ceci est un projet de tutoriel pour programmer son propre firmware,
Les exemples seront donné sur embarqué intel x86 (car je travaille actuellement sur l'une de leur plateforme propriétaire).
Le but de son initialisation sur le forum est de pouvoir recevoir une aide de tous intéressé.
N'ayant trouver aucune documentation francaise sur le sujet je me suis donc trouver un bon moyen de contribution a la communauté francaise.
Le but ne sera pas de vous épargné les nombreuses spécification (nononon !!!)
mais de fournir une base de référence avec des exemples concrets !
ce sujet sera éditer toutes les semaines, je vous remercie des corrections/soutiens/insulte venant de la part d'éventuelles contributeur.
EDK2 :
https://github.com/tianocore/edk2
Documentation de référence :
http://www.tianocore.org/docs/
http://www.uefi.org/sites/default/fi...I_Spec_2_7.pdf
https://www.gitbook.com/@edk2-docs
Instruction d'installation :
https://github.com/tianocore/tianoco...n-instructions
Une introduction avec la réalisation d'un pong :
http://www.linuxembedded.fr/2017/06/...tion-dun-pong/
introduction avec le pong
Si vous n'avez pas encore lu l'introduction au Pong je vous laisse y faire un tour ^^
Tout ca c'est bien mais comment l'intégrer ?
Allez dans MdeModulePkg/Application et créez votre dossier Pong-UEFI
Insérez y vos fichier .c .h et .inf
Ouvrez le fichier MdeModulePkg/MdeModulePkg.dsc :
cherchez la ligne :
MdeModulePkg/Application/HelloWorld/HelloWorld.inf
et ajoutez en dessous :
MdeModulePkg/Application/Pong-UEFI/Pong.inf
compilons tout ca !
build -p MdeModulePkg/MdeModulePkg.dsc -a X64 -m MdeModulePkg/Application/Pong-UEFI/Pong.inf
Comment l'executer ?
Ici nous allons decouvrir OVMF (Open Virtual Machine Firmware)
pour ceci il vas falloir builder l'environement : (conseil !! compilez avec TOOL_CHAIN_TAG = gcc46)
https://github.com/tianocore/tianoco...-to-build-OVMF
et voici pour lancer le tout :
https://github.com/tianocore/tianoco...ow-to-run-OVMF
vous n'avez plus qu'a renomer et deplacer votre Pong.efi de cette maniere :
run-ovmf/hda-contents/EFI/BOOT/BOOTX64.EFI
enfin lancez la commande :
qemu-system-x86_64 -pflash bios.bin -hda fat:hda-contents -net none
Voici pour le premier jet de ce futur tutoriel.
Vous aurez comprit que je compte m'appuyer fortement sur la documentation existante.
Mon travail sera donc simplement de la structurer et d'y apporter des clarifications.
Je tiens a préciser que je ne suis pas expert ! simplement curieux et bon lecteur.
Sur ce j'attend impatiemment vos commentaires.
Partager