Asus wl-600g, firmware e GPL toolchain
giugno 3rd, 2008 di Scorp | 0 Commenti | Archiviato in HardwareEcco qua una guida per chiunque sia interessato a ricompilarsi il firmware del proprio router utilizzando gli strumenti messi a disposizione da asus.
Requisiti
Scaricare dal sito di supporto:
GPL source code for WL-600g 1.0.3.3A
Con Debian
# apt-get install alien build-essential bison
Preparazione sorgenti GPL
# cd /tmp
# tar xvfz GPL_WL600g_1.0.3.3.A.tar.gz
# ./consumer_install
Ritornerà un errore, installiamo i due rpm forniti da asus a mano, estraendoli dal pacchetto bcm963xx_uclibc_crosstools_3.4.2_0.9.27.tar.gz in una posizione che più ci aggrada e convertendoli in deb con alien:
# alien uclibc-crosstools-*.rpm
# dpkg -i *.deb
Siamo quasi pronti, ora resta da fare qualche fixino :D
Fix vari
Modifica /opt/bcm963xx/kernel/linux/scripts/kconfig/mconf.c
rimpiazzando ogni occorrenza di “current_menu” con “cur_menu”
cur_menu patch
Un po’ di symlink per non far andare in paranoia il Makefile stavolta e ogni volta che uscirà un nuovo toolchain
ln -s /opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050502 /opt/toolchains/uclibc-crosstools
ln -s /opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050502 /opt/toolchains/uclibc-crosstools_gcc-3.4.2_uclibc-20050428
Compilazione
# cd /opt/bcm963xx
# make PROFILE=96348GW
Dopo una buona quindicina di minuti avrete il vostro firmware in /opt/bcm963xx/images che si può caricare direttamente tramite l’interfaccia web.
Unbrick Debrick
Se le cose vanno male, ecco la procedura per ripristinare il firmware originale (non testata):
- Spegni il router
- Tieni premuto il bottone reset sul retro e accendi il router
- Il led power dovrebbe cominciare a lampeggiare lentamente
- Esegui tftp -m binary 192.168.1.1 -c put sonoilfirmwarefunzionante.trx
- Attendi qualche minuto, dovrebbe riavviarsi in automatico a procedura ultimata
