Ceci est une ancienne révision du document !
Installation d'uClinux via LTIB sur le module Freescale MCF5329 Fire Engine
Prélude
Ce document s'adresse aux personnes intéressées par la mise en œuvre, sous Ubuntu, du System-On-Module MCF5329 Fire Engine de chez Freescale/Logicpd. Sur cette carte (disponible chez Farnell), nous installerons uClinux via le générateur d'image fourni par Freescale : LTIB.
Les commandes et notions présentes dans ce tutoriel sont souvent "simples", mais on peux perdre énormément de temps à les retrouver et à les utiliser correctement. La philosophie retenue, est donc ici, de les toutes les retranscrire (y compris celles pour le TFTP, NFS, … qui disposent déjà de tutoriel respectifs).
Pré-requis
Pour mener à bien ce tutoriel, nous avons besoin de :
- Une machine de développement fonctionnant sous Ubuntu 9.04 "Jaunty Jackalope" 32 bits (100% à jour – 22 mai 2009).
- Le bundle de développement pour le System-On-Module Freescale MCF5329 Fire Engine.
- Le bootloader présent sur la carte est U-Boot 2008.10 (Dec 15 2008 – 11:03:39). Son installation est décrites dans la suite du document (Il n'est pas toujours présent d'origine sur la carte).
- Une connexion internet.
Conventions pour ce tutoriel
- IP machine développement : 192.168.0.2
- OS : Ubuntu Desktop 9.04 (100% à jour – 22 mai 2009)
- User : as
- Pass : azerty
- Pass root : azerty
- IP carte Freescale : 192.168.0.254
- Passerelle : 192.168.0.1
- Masque : 255.255.255.0
- Bootloader présent sur le System-On-Module : U-Boot 2008.10 (Dec 15 2008 – 11:03:39)
- Ce document, ainsi que l'ensemble des fichiers téléchargés, se situent dans
/home/as/tuto
Documents de références
- « BSP Targeting the Freescale Coldfire M5239EVB User's Guide » (User_Manual_MCF5329.pdf)
- « Using MCF5329EVB NAND Flash to Host μClinux Root File System » (AN3757.pdf)
- « Building a Sample CGI Application » (AN3408.pdf)
Installation LTIB
LTIB est notre générateur d'image uClinux pour la carte freescale.
- On extrait m53xxevb-20081215-ltib.iso (source : Linux BSP for Freescale M5329EVB )
- Clique-droit sur le fichier → Extraire ici
- Nous avons maintenant accès à la (très bonne !) documentation :
/home/as/tuto/m53xxevb-20081215-ltib/START_HERE.htm
- (Dans cette documentation, se trouve le tutoriel pour installer U-Boot - nécessite une machine windows
)
- Installation de LTIB
- On se place avec un terminal dans le répertoire :
/home/as/tuto/m53xxevb-20081215-ltib
- On lance la commande :
sh ./install
- On répond yes partout
- On installe les fichiers dans :
/home/as/ltib
- Installation des paquets nécessaires à LTIB
- Lancer dans un terminal :
sudo apt-get install bison libncurses5-dev build-essential rpm tcl8.5 libghc6-zlib-dev
- Mise en place des autorisations pour LTIB
- On modifie le fichier visudo via la commande :
sudo /usr/sbin/visudo
- On y ajoute la ligne :
as ALL = NOPASSWD: /usr/bin/rpm, /opt/freescale/ltib/usr/bin/rpm
- On sauvegarde via [ctrl+o], puis [enter]
- Exit via [ctrl+x]
- Premier lancement de LTIB (il décompresse ses packages → long)
- On se place avec un terminal dans le répertoire :
/home/as/ltib/ltib-cf_nommu-20081215
- On lance la commande :
./ltib
- Nous avons un bug (normal) (Exiting on error or interrupt)
- Pour le résoudre, on modifie les lignes 46, 47 et 48 du fichier
/opt/freescale/pkgs/mtd-utils-20060302-cf-byteswap_h-1.patch
+#if !defined _BYTESWAP_H && !defined _NETINET_IN_H +# error "Never use <bits/byteswap.h> directly; include <byteswap.h> instead." +#endif
qui deviennent
+//#if !defined _BYTESWAP_H && !defined _NETINET_IN_H +//# error "Never use <bits/byteswap.h> directly; include <byteswap.h> instead." +//#endif
6. Et on supprime le répertoire (et son contenu) : /opt/freescale/ltib/usr/src/rpm/BUILD/mtd
7. On re-lance la commande : ./ltib
8. Après ça, LTIB est installé ! (ouf )
Installation de Minicom
- On installe minicom. Pour ça on lance dans une console :
sudo apt-get install minicom
- Pour le configurer, on lance dans un terminal :
minicom -s
- Dans « configuration du port série », on veillera à avoir les valeurs suivantes
+--------------------------------------------------------------------------------+ | A - Port série : /dev/ttyUSB0 | | B - Emplacement du fichier de verrouillage : /var/lock | | C - Programme d'appel intérieur : | | D - Programme d'appel extérieur : | | E - Débit/Parité/Bits : 115200 8N1 | | F - Contrôle de flux matériel : Non | | G - Contrôle de flux logiciel : Non | | | | Changer quel réglage ? | +--------------------------------------------------------------------------------+
4. Le lancement de minicom se fera par la commande suivante dans le terminal : minicom