User Tools

Site Tools


doc:appunti:hardware:la_fonera_openwrt

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:la_fonera_openwrt [2013/10/01 20:29] niccolodoc:appunti:hardware:la_fonera_openwrt [2013/10/01 20:39] – [Flash dell'immagine OpenWrt Backfire] niccolo
Line 268: Line 268:
  
 ===== Flash dell'immagine OpenWrt Backfire ===== ===== Flash dell'immagine OpenWrt Backfire =====
 +
 +Qui le istruzioni ufficiali: [[http://wiki.openwrt.org/toh/fon/fonera]].
  
 Scaricati i file **openwrt-atheros-vmlinux.lzma** e **openwrt-atheros-root.squashfs** dal [[http://downloads.openwrt.org/backfire/10.03.1/atheros/|repository]] e resi disponibili sul server **tftp** all'indirizzo IP **169.254.255.46**. Scaricati i file **openwrt-atheros-vmlinux.lzma** e **openwrt-atheros-root.squashfs** dal [[http://downloads.openwrt.org/backfire/10.03.1/atheros/|repository]] e resi disponibili sul server **tftp** all'indirizzo IP **169.254.255.46**.
  
-Avviata La Fonera e raggiunto il prompt RedBoot dalla console seriale.+Avviata La Fonera e raggiunto il prompt RedBoot dalla console seriale, con **''fis list''** si possono vedere le immagini caricate in flash:
  
 +<code>
 +RedBoot> fis list
 +Name              FLASH addr  Mem addr    Length      Entry point
 +RedBoot           0xA8000000  0xA8000000  0x00030000  0x00000000
 +rootfs            0xA8030000  0xA8030000  0x00700000  0x00000000
 +vmlinux.bin.l7    0xA8730000  0x80041000  0x000B0000  0x80041000
 +FIS directory     0xA87E0000  0xA87E0000  0x0000F000  0x00000000
 +RedBoot config    0xA87EF000  0xA87EF000  0x00001000  0x00000000
 +</code>
 +
 +Si carica in RAM l'immagine del kernel via tftp, quindi si copia in flash memory specificando a che indirizzo dovrà essere caricata in RAM (**-r**) e specificando anche l'entry point (**-e**) a cui iniziare l'esecuzione (si mantengono gli stessi valori del kernel Fon):
  
 <code> <code>
Line 294: Line 307:
 ... Erase from 0xa87e0000-0xa87f0000: . ... Erase from 0xa87e0000-0xa87f0000: .
 ... Program from 0x80ff0000-0x81000000 at 0xa87e0000: . ... Program from 0x80ff0000-0x81000000 at 0xa87e0000: .
 +</code>
  
 +Si carica in RAM via ftp l'immagine del root filesystem (nella posizione più bassa della RAM, variabile FREEMEMLO) e si copia in flash alla prima posizione libera:
 +
 +<code>
 RedBoot> load -r -b %{FREEMEMLO} openwrt-atheros-root.squashfs RedBoot> load -r -b %{FREEMEMLO} openwrt-atheros-root.squashfs
 Using default protocol (TFTP) Using default protocol (TFTP)
Line 304: Line 321:
 ... Erase from 0xa87e0000-0xa87f0000: . ... Erase from 0xa87e0000-0xa87f0000: .
 ... Program from 0x80ff0000-0x81000000 at 0xa87e0000: . ... Program from 0x80ff0000-0x81000000 at 0xa87e0000: .
 +</code>
  
 +Si verifica la configurazione di boot, per sicurezza la si riscrive:
 +
 +<code>
 RedBoot> fconfig -l -n RedBoot> fconfig -l -n
 boot_script: true boot_script: true
Line 333: Line 354:
 ... Erase from 0xa87e0000-0xa87f0000: . ... Erase from 0xa87e0000-0xa87f0000: .
 ... Program from 0x80ff0000-0x81000000 at 0xa87e0000: . ... Program from 0x80ff0000-0x81000000 at 0xa87e0000: .
- 
-RedBoot> reset 
 </code> </code>
  
- +Infine si riavvia:
- +
-<code> +
-RedBoot> ip_address -l 169.254.255.1/24 -h 169.254.255.46 +
-IP: 169.254.255.1/255.255.255.0, Gateway: 0.0.0.0 +
-Default server: 169.254.255.46 +
-</code> +
- +
-Si carica l'immagine del kernel dal server tftp. L'immagine viene caricata in RAM allo stesso indirizzo (-b 0x80041000) a cui risultava la precedente: +
- +
-<code> +
-RedBoot> fis list +
-Name              FLASH addr  Mem addr    Length      Entry point +
-RedBoot           0xA8000000  0xA8000000  0x00030000  0x00000000 +
-rootfs            0xA8030000  0xA8030000  0x00700000  0x00000000 +
-vmlinux.bin.l7    0xA8730000  0x80041000  0x000B0000  0x80041000 +
-FIS directory     0xA87E0000  0xA87E0000  0x0000F000  0x00000000 +
-RedBoot config    0xA87EF000  0xA87EF000  0x00001000  0x00000000 +
- +
-RedBoot> load -r -b 0x80041000 openwrt-atheros-2.6-vmlinux.lzma +
-Using default protocol (TFTP) +
-Raw file loaded 0x80041000-0x800f0fff, assumed entry at 0x80041000 +
-</code> +
- +
-Si crea la nuova immagine nella memoria FLASH specificando a che indirizzo dovrà essere caricata in RAM (**-r**) e specificando anche l'entry point (**-e**) a cui iniziare l'esecuzione (si mantengono gli stessi valori del kernel Fon): +
- +
-<code> +
-RedBoot> fis create -e 0x80041000 -r 0x80041000 vmlinux.bin.l7 +
-An image named 'vmlinux.bin.l7' exists - continue (y/n)? y +
-... Erase from 0xa8730000-0xa87e0000: ........... +
-... Program from 0x80041000-0x800f1000 at 0xa8730000: ........... +
-... Erase from 0xa87e0000-0xa87f0000:+
-... Program from 0x80ff0000-0x81000000 at 0xa87e0000: . +
-</code> +
- +
-Si carica in RAM anche l'immagine del root filesystem, questa volta si usa l'indirizzo libero più basso della RAM (variabile FREEMEMLO) invece del valore memorizzato nella vecchia immagine FLASH: +
- +
-<code> +
-RedBoot> load -r -b %{FREEMEMLO} openwrt-atheros-2.6-root.squashfs +
-Using default protocol (TFTP) +
-Raw file loaded 0x80040800-0x801607ff, assumed entry at 0x80040800 +
-</code> +
- +
-Si crea la nuova immagine FLASH, tutti i valori predefiniti sono dedotti dal comando **load** dato in precedenza, si indica solo l'entry point nullo (**-e**) in quanto non si tratta di file eseguibile. +
- +
-<code> +
-RedBoot> fis create -e 0 rootfs +
-An image named 'rootfs' exists - continue (y/n)? y +
-... Erase from 0xa8030000-0xa8730000: .................................. +
-... Program from 0x80040800-0x80160800 at 0xa8030000: .................. +
-... Erase from 0xa87e0000-0xa87f0000:+
-... Program from 0x80ff0000-0x81000000 at 0xa87e0000: . +
-</code> +
- +
-Come si vede l'immagine FLASH nuova ha un indirizzo //Mem addr// diverso da quello della vecchia immagine, ma funziona bene lo stesso: +
- +
-<code> +
-RedBoot> fis list +
-Name              FLASH addr  Mem addr    Length      Entry point +
-RedBoot           0xA8000000  0xA8000000  0x00030000  0x00000000 +
-rootfs            0xA8030000  0x80040800  0x00700000  0x00000000 +
-vmlinux.bin.l7    0xA8730000  0x80041000  0x000B0000  0x80041000 +
-FIS directory     0xA87E0000  0xA87E0000  0x0000F000  0x00000000 +
-RedBoot config    0xA87EF000  0xA87EF000  0x00001000  0x00000000 +
-</code>+
  
 <code> <code>
 RedBoot> reset RedBoot> reset
 </code> </code>
- 
- 
- 
- 
- 
- 
 ====== Configurare OpenWrt ====== ====== Configurare OpenWrt ======
  
doc/appunti/hardware/la_fonera_openwrt.txt · Last modified: 2013/10/01 20:50 by niccolo