ho tolto i link precedenti perchè ho visto che la versione 3.02 non
aveva il cfe, per fortuna provando ad aggiornare dall'interfaccia web
dava errore quindi non si poteva far danni!
La buona notizia è che mi sono costruito l'interfaccia seriale (nota
per chi mantiene il wiki su skyphone: i pin 11 e 12 sono invertiti,
stavo impazzendo per cercare di capire perchè non funzionava!) e ho
visto che dal cfe è possibile avviare un kernel via tftp senza rischio
di friggere il modem.
In pratica basta mettere un kernel (il file vmlinux che si trova nella
directory del kernel alla fine della compilazione) in un server tftp e
da cfe usare il comando:
CFE> r IP_SERVER_TFTPD:vmlinux
il modem scarica il file senza modificare la flash e lo avvia, ed
infatti ho provato con il kernel del firmware 3.02 (kernel 2.6.8.1)
che avevo fatto e funziona :D
Problema: quel kernel era configurato per usare squashfs mentre sulla
flash c'è cramfs (usato nel firmware voyager/dynalink), e in ogni caso
i file che troverebbe non andrebbero bene perchè compilati per il
kernel vecchio (i moduli del kernel ad esempio).
Soluzione: nei sorgenti broadcom è previsto l'uso di NFS come
filesystem di root!
Dal Makefile broadcom dopo aver compilato usando NFS:
=== Following the below steps to start your NFS root file
system on host ===
Step 1: Copy /home/eee/bcm/bcm963xx/targets/96345R/vmlinux to your
TFTP server boot directory, such as /tftpboot
Step 2: Add "/home/eee/bcm/bcm963xx/targets/96345R/fs
*(rw,no_root_squash)" to /etc/exports
Step 3: Become root and restart your nfs server, such as "service nfs
restart"
Step 4: Reboot your board and break into CFE bootloader, choose h on
"Run from flash/host" and vmlinux on "Default host run file name"
Quindi basta seguire le istruzioni (a parte lo step 4, invece di usare
il metodo suggerito basta usare il comando r come dicevo prima) e
dovrebbe funzionare, soprattutto senza rischiare di friggere il modem!
Purtroppo questo fine settimana non sono a casa e non posso provare,
ma ho già i file pronti, vi farò sapere :D