User Tools

Site Tools


doc:appunti:hardware:freerunner

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
doc:appunti:hardware:freerunner [2009/10/12 22:45] niccolodoc:appunti:hardware:freerunner [2010/05/15 14:13] niccolo
Line 36: Line 36:
   * **[[attualita/liberta_digitale/20080903_freerunner_review]]**   * **[[attualita/liberta_digitale/20080903_freerunner_review]]**
   * **[[freerunner_peek_poke]]**   * **[[freerunner_peek_poke]]**
 +  * **[[doc:appunti:prog:openmoko_compile]]**
 +  * **[[freerunner_debian]]**
  
 ===== Il primo boot ===== ===== Il primo boot =====
Line 426: Line 428:
 ==== Backup con dfu-util ==== ==== Backup con dfu-util ====
  
-FIXME In teoria dovrebbe essere possibile fare il backup delle immagini contenute nella memoria flash con l'utility **''dfu-util''**. Tuttavia pare che ci sia un **[[http://docs.openmoko.org/trac/ticket/1843|grave bug]]** nell'upload dal device al PC (opzione **''%%-U%%''**), per cui **le immagini scaricate dal FreeRunner risultano corrotte** e non utilizzabili. Se ad esempio si flasha nuovamente sul FreeRunner l'immagine del kernel ottenuta con il procedimento seguente, si ottiene un checksum error durante la fase di boot e conseguente blocco.+FIXME In teoria dovrebbe essere possibile fare il backup delle immagini contenute nella memoria flash con l'utility **''dfu-util''**. Tuttavia **esiste un grave [[http://docs.openmoko.org/trac/ticket/1843|bug]]** nell'upload dal device al PC (opzione **''%%-U%%''**), per cui **le immagini scaricate dal FreeRunner risultano corrotte** e non utilizzabili. Se ad esempio si flasha nuovamente sul FreeRunner l'immagine del kernel ottenuta con il procedimento seguente, si ottiene un checksum error durante la fase di boot e conseguente blocco.
  
 Il bug è confermato con U-Boot 1.3.2-moko12 (2008-12-18) e dfu-util r4067. Il bug è confermato con U-Boot 1.3.2-moko12 (2008-12-18) e dfu-util r4067.
  
-Ad ogni modo, questa sarebbe la procedura:+Ad ogni modo, questa sarebbe la procedura (**da non usare a causa del bug!**):
  
   - Entrare nel **menu U-Boot in NOR flash** (accendere il FreeRunner tenendo premuto il tasto **AUX** e premendo il pulsante **POWER**).   - Entrare nel **menu U-Boot in NOR flash** (accendere il FreeRunner tenendo premuto il tasto **AUX** e premendo il pulsante **POWER**).
Line 437: Line 439:
  
 <code> <code>
 +# WARNING! OpenMoko bug #1843 produces bad images!
 dfu-util -a kernel     -R -U bkp_kernel.bin dfu-util -a kernel     -R -U bkp_kernel.bin
 dfu-util -a splash     -R -U bkp_splash.bin dfu-util -a splash     -R -U bkp_splash.bin
Line 443: Line 446:
 </code> </code>
  
-Per salvare l'**immagine del rootfs** (partizione //rootfs//) si potrebbe procedere in modo analogo, ma il file ottenuto avrebbe il difetto di occupare tutta la dimensione della flash (**250 Mb**), non il solo spazio effettivamente usato dai file. Inoltre il file ottenuto, una volta montato come immagine jffs2 su loop device, non mostra i file effettivamente contenuti (perché:?:).+Per salvare l'**immagine del rootfs** (partizione //rootfs//) si potrebbe procedere in modo analogo, ma il file ottenuto avrebbe il difetto di occupare tutta la dimensione della flash (**250 Mb**), non il solo spazio effettivamente usato dai file.
  
-Ecco riassunto il contenuto di ciascuna partizione:+Ecco la dimensione e il contenuto di ciascuna partizione:
  
 ^ splash.bin  |  640 Kb | Dump dello splash-screen compresso gzip (480x640x16 frame buffer, RGB bits = 5:6:5, HWSWP = 1).  | ^ splash.bin  |  640 Kb | Dump dello splash-screen compresso gzip (480x640x16 frame buffer, RGB bits = 5:6:5, HWSWP = 1).  |
Line 484: Line 487:
 Omettiamo dal dump i byte out-of-band (OOB), che contengono informazioni di servizio (bad block marks, error correction codes). Omettiamo dal dump i byte out-of-band (OOB), che contengono informazioni di servizio (bad block marks, error correction codes).
  
-Il file così ottenuto deve essere identico a quello usato durante il flashing iniziale, **a meno della dimensione**. Ecco come confrontare i due file:+Il file così ottenuto deve essere **identico** a quello usato durante il flashing iniziale, **a meno della dimensione**. Ecco come confrontare i due file solo per i primi byte:
  
 <code> <code>
Line 490: Line 493:
 </code> </code>
  
-Anche in questo caso il dump della partizione //rootfs// è sconsigliato, in favore del metodo mostrato in seguito.+Il kernel dovrebbe essere disponibile anche come file **''/boot/uImage''** sul FreeRunner, ma nel mio caso differisce di 7 byte rispetto all'originale. 
 + 
 +Il dump della partizione //rootfs// con questo metodo è sconsigliato, sia per per i motivi di dimensione visti sopra, sia perché il contenuto non è consistente: alcuni file e directory presenti sul FreeRunner non risultano quando si monta l'immagine via loop device (perché? FIXME). 
 + 
 +Per effettuare il dump del rootfs vedere il metodo che segue.
  
 ==== Backup con mkfs.jffs2 ==== ==== Backup con mkfs.jffs2 ====
Line 539: Line 546:
 <code> <code>
 dfu-util -a u-boot -R -D gta02v5_and_up-u-boot.bin dfu-util -a u-boot -R -D gta02v5_and_up-u-boot.bin
-dfu-util -a kernel -R -D Om2008.9.uImage.bin +dfu-util -a kernel -R -D Om2008.12-om-gta02.uImage.bin 
-dfu-util -a rootfs -R -D Om2008.9.rootfs.jffs2+dfu-util -a rootfs -R -D Om2008.12-om-gta02.rootfs.jffs2
 dfu-util -a splash -D Om2008.9.splash.gz dfu-util -a splash -D Om2008.9.splash.gz
 </code> </code>
 +
 +**NOTA:** L'immagine 2008.12 utilizza i repository [[http://downloads.openmoko.org/repository/Om2008.8/]], vedi ''/etc/opkg/*.conf''.
  
 ===== PyPPP: connessione internet via GPRS ===== ===== PyPPP: connessione internet via GPRS =====
doc/appunti/hardware/freerunner.txt · Last modified: 2015/03/11 09:15 by niccolo