Outils pour utilisateurs

Outils du site


nas:dockstar:jtag

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
nas:dockstar:jtag [13 /07/2012 16:36]
psolyca [Connexion]
nas:dockstar:jtag [17 /11/2016 15:03] (Version actuelle)
psolyca ↷ Liens modifiés en raison d'un déplacement.
Ligne 6: Ligne 6:
 http://​dangerousprototypes.com/​docs/​Bus_Pirate#​JTAG_and_OpenOCD\\ ​ http://​dangerousprototypes.com/​docs/​Bus_Pirate#​JTAG_and_OpenOCD\\ ​
 http://​dangerousprototypes.com/​forum/​viewtopic.php?​t=1702\\ ​ http://​dangerousprototypes.com/​forum/​viewtopic.php?​t=1702\\ ​
 +http://​www.neufbox4.org/​forum/​viewtopic.php?​pid=23551#​p23551\\ ​
 +http://​archlinuxarm.org/​forum/​viewtopic.php?​f=18&​t=195&​sid=85b9bed78edf2646339d0e38e0a7e79b\\ ​
  
 Solution ultime en cas de perte du Dockstar lors d'une mauvaise manipulation pendant le flashage.\\ ​ Solution ultime en cas de perte du Dockstar lors d'une mauvaise manipulation pendant le flashage.\\ ​
Ligne 26: Ligne 28:
 >sudo make install >sudo make install
 </​code>​ </​code>​
-Fichiers de configuration à installer dans : +Fichiers de configuration ​modifié ​à installer dans : 
-  * /usr/share/​local/​openocd/​scripts/​board/​ pour {{:​dockstar:​dockstar.cfg|}} +  * /usr/local/share/​openocd/​scripts/​board/​ pour {{:​dockstar:​dockstar.cfg|}} 
-  * /usr/share/​local/​openocd/​scripts/​interface pour {{:​dockstar:​buspirate.cfg|}} +  * /usr/local/share/​openocd/​scripts/​interface pour {{:​dockstar:​buspirate.cfg|}} 
 +**Dans buspirate.cfg modifier le device en fonction de votre configuration**
 ==== Branchement ==== ==== Branchement ====
-Voir [[Dockstar:​amelioration:​ajout_cable_serie|pour le câble série]]\\ ​+Voir [[nas:​dockstar:​amelioration:​ajout_cable_serie|pour le câble série]]\\ ​
 Le branchement se fait comme suit pour le BusPirate : Le branchement se fait comme suit pour le BusPirate :
 ^  Seeed Studio et série ​ ^^^^ou^ ​ Sparkfun et série ​ ^^^^ ^  Seeed Studio et série ​ ^^^^ou^ ​ Sparkfun et série ​ ^^^^
Ligne 45: Ligne 47:
 Démarrer le serveur OpenOCD dans un terminal (A): Démarrer le serveur OpenOCD dans un terminal (A):
 <​code>​ <​code>​
->cd /​usr/​local/​share//​openocd/​scripts/​ +A>cd /​usr/​local/​share//​openocd/​scripts/​ 
->opencd -f board/​dockstar.cfg+A>opencd -f board/​dockstar.cfg
 </​code>​ </​code>​
 Démarrer un autre terminal (B) et se connecter au serveur OpenOCD : Démarrer un autre terminal (B) et se connecter au serveur OpenOCD :
 <​code>​ <​code>​
->telnet localhost 4444+B>telnet localhost 4444
 </​code>​ </​code>​
 Démarrer un autre terminal (C) et se connecter par câble série : Démarrer un autre terminal (C) et se connecter par câble série :
 <​code>​ <​code>​
->minicom -D /​dev/​ttyUSB0+C>minicom -D /​dev/​ttyUSB0
 </​code>​ </​code>​
 Il est nécessaire d'​avoir une image U-Boot valide pour la suite.\\ ​ Il est nécessaire d'​avoir une image U-Boot valide pour la suite.\\ ​
 Dans le terminal (B) : Dans le terminal (B) :
 <​code>​ <​code>​
->init +B>init 
->halt ((taper la commande, appuyer ​sur reset, valider ​la commande et relâcher ​reset)) +</code> 
->dockstar_init +La commande ​suivante est à taper puis on appuie ​sur le bouton ​reset et on valide ​la commande et simultanément on relâche le bouton ​reset.\\  
->​load_image u-boot.kwb 0x800000 ((peut prendre plusieurs minutes)) +La commande "​halt"​ attend l'​arrêt du processeur dans les 5 millisecondes. 
->go 0x800200+<code
 +B>halt 
 +target state: halted 
 +target halted in Thumb state due to debug-request,​ current mode: Supervisor 
 +cpsr: 0x400000f3 pc: 0xffff0a42 
 +MMU: enabled, D-Cache: enabled, I-Cache: enabled 
 +B> 
 +</​code>​ 
 +Pour que le reste de la manipulation fonctionne, il faut être arrêté en mode "​ARM"​ et non "​Thumb"​ comme ci-dessus. 
 +Il faut recommencer les manipulations précédentes jusqu'​à obtenir ce qui suit : 
 +<​code>​ 
 +B>halt 
 +target state: halted 
 +target halted in ARM state due to debug-request,​ current mode: Supervisor 
 +cpsr: 0x000000d3 pc: 0xffff0000 
 +MMU: disabled, D-Cache: disabled, I-Cache: disabled 
 +</​code>​ 
 +Il existe 2 méthodes pour installer l'​image de U-Boot : 
 +  * charger l'​image en mémoire puis l'​installer à partir du nouveau U-Boot, 
 +  * installer directement l'​image sur la NAND. 
 +Pour les commandes, il y a aussi 2 possibilités : 
 +  * taper les commandes une à une, 
 +  * utiliser des macros inscrites dans le fichier "​dockstar.cfg"​. 
 +=== Charger U-Boot en mémoire === 
 +== Commandes successives == 
 +Pour la commande "load_image", il faut indiquer le chemin absolu du fichier soit par exemple "/​home/​moncompte/​Documents/​u-boot.kwb"​.\\  
 +La commande "​load_image"​ peut prendre plusieurs minutes à s'​exécuter (ici 9min). 
 +<​code>​ 
 +B>​dockstar_init 
 +B>​load_image /​tmp/​uboot.mtd0.kwb 0x800000 
 +524288 bytes written at address 0x00800000 
 +downloaded 524288 bytes in 593.427490s ​(0.863 KiB/s) 
 +B>resume 0x800200 
 +</​code>​ 
 +Dans le terminal ​(C), on arrête le processus de redémarrage en tapant sur "​Entrée",​ puis : 
 +<​code>​ 
 +U-Boot 2011.12 (Jul 11 2012 - 19:03:43) 
 +Seagate FreeAgent DockStar - SD/MMC 
 + 
 +SoC:   ​Kirkwood 88F6281_A0 ​                                                             
 +DRAM:  128 MiB                                                                          
 +WARNING: Caches not enabled ​                                                            
 +NAND:  256 MiB                                                                          
 +In:    serial ​                                                                          
 +Out:   ​serial 
 +Err:   ​serial 
 +Net:   ​egiga0 
 +88E1116 Initialized on egiga0 
 +Hit any key to stop autoboot: ​ 0 
 +Marvell>>​nand write.e 0x800000 0x0 0x80000 
 +Marvell>>​reset 
 +</​code>​ 
 +== Macros == 
 +Modifier dans le fichier "​dockstar.cfg"​ le chemin pour "​load_image"​ pour refléter son emplacement dans la macro "proc dockstar_load_uboot { } {"\\  
 +Puis dans le terminal (B) : 
 +<​code>​ 
 +B>​dockstar_reflash_uboot 
 +524288 bytes written at address 0x00800000 
 +downloaded 524288 bytes in 593.427490s (0.863 KiB/s) 
 +</​code>​ 
 +Passer sur le terminal (C), arrêter le processus avec la touche "​Entrée",​ puis : 
 +<​code>​ 
 +U-Boot 2011.12 (Jul 11 2012 - 19:03:43) 
 +Seagate FreeAgent DockStar - SD/MMC 
 + 
 +SoC:   ​Kirkwood 88F6281_A0 ​                                                             
 +DRAM:  128 MiB                                                                          
 +WARNING: Caches not enabled ​                                                            
 +NAND:  256 MiB                                                                          
 +In:    serial ​                                                                          
 +Out:   ​serial 
 +Err:   ​serial 
 +Net:   ​egiga0 
 +88E1116 Initialized on egiga0 
 +Hit any key to stop autoboot: ​ 0 
 +Marvell>>​nand write.e 0x800000 0x0 0x80000 
 +Marvell>>​reset 
 +</​code>​ 
 +=== Installer U-Boot sur NAND === 
 +== Commandes successives == 
 +Pour la commande "nand write",​ il faut indiquer le chemin absolu du fichier soit par exemple "/​home/​moncompte/​Documents/​u-boot.kwb"​.\\  
 +La commande "nand write" ​peut prendre plusieurs minutes ​à s'​exécuter (ici 9min)
 +<​code>​ 
 +dockstar_init 
 +nand probe 0 
 +NAND flash device 'NAND 256MiB 3.3V 8-bit (Micron)' found 
 +nand erase 0 0x0 0x80000 
 +erased blocks 0 to 3 on NAND flash device #0 'NAND 256MiB 3.3V 8-bit'​ 
 +nand write 0 /​tmp/​uboot.mtd0.kwb 0 oob_softecc_kw 
 +wrote file /​tmp/​uboot.mtd0.kwb to NAND flash 0 up to offset 0x00080000 in 1222.956299s (0.419 KiB/s) 
 +resume 
 +</​code>​ 
 +Sur le terminal (C) : 
 +<​code>​ 
 +U-Boot 2011.12 (Jul 11 2012 - 19:03:43) 
 +Seagate FreeAgent DockStar - SD/MMC 
 + 
 +SoC:   ​Kirkwood 88F6281_A0 ​                                                             
 +DRAM:  128 MiB                                                                          
 +WARNING: Caches not enabled ​                                                            
 +NAND:  256 MiB                                                                          
 +In:    serial ​                                                                          
 +Out:   ​serial 
 +Err:   ​serial 
 +Net:   ​egiga0 
 +88E1116 Initialized on egiga0 
 +Hit any key to stop autoboot: ​ 0 
 +Marvell>>​ 
 +</​code>​ 
 +== Macros == 
 +Modifier dans le fichier "​dockstar.cfg"​ le chemin pour "nand write" pour refléter son emplacement dans la macro "proc dockstar_reflash_uboot { } {"\\  
 +Puis dans le terminal (B) : 
 +<​code>​ 
 +B>​dockstar_reflash_uboot 
 +NAND flash device 'NAND 256MiB 3.3V 8-bit (Micron)'​ found 
 +erased blocks 0 to 3 on NAND flash device #0 'NAND 256MiB 3.3V 8-bit'​ 
 +wrote file /​tmp/​uboot.mtd0.kwb to NAND flash 0 up to offset 0x00080000 in 1222.956299s (0.419 KiB/s) 
 +</​code>​ 
 +Sur le terminal (C) : 
 +<​code>​ 
 +U-Boot 2011.12 (Jul 11 2012 - 19:03:43) 
 +Seagate FreeAgent DockStar - SD/MMC 
 + 
 +SoC:   ​Kirkwood 88F6281_A0 ​                                                             
 +DRAM:  128 MiB                                                                          
 +WARNING: Caches not enabled ​                                                            
 +NAND:  256 MiB                                                                          
 +In:    serial ​                                                                          
 +Out:   ​serial 
 +Err:   ​serial 
 +Net:   ​egiga0 
 +88E1116 Initialized on egiga0 
 +Hit any key to stop autoboot: ​ 0 
 +Marvell>>
 </​code>​ </​code>​
nas/dockstar/jtag.1342190208.txt.gz · Dernière modification: 14 /11/2016 12:57 (modification externe)