Atmel NGW100 javítása, firmware upgrade


By Proci - Posted on 04 július 2010

A panelen 3 fájlrendszer van elrejtve.

  1. U-boot bootloader: Ez felelős a rendszer beindításáért. Segítségével indíthatjuk sd kártyáról is rendszert.
  2. Root fájlrendszer ( / )
  3. A beágyazott Linux /usr partíciója.

 

Javításra, frissítésre több lehetőség is van.

  • JTAG kábellel
  • TFTP-n keresztül
  • SD kártyáról
  • Meglévő rendszerről (abban az esetben, ha be tudjuk indítani)

 

Ha a bootloader működik, akkor a legbiztosabb megoldás az SD kártyáról történő rendszerindítás, majd onnan frissítés.

Bootloadert elérjük, ha a RESET gomb megnyomása után 1 másodpercen belül megnyomjuk a space billentyűt.

U-Boot>
U-Boot> askenv bootcmd
Please enter 'bootcmd':mmcinit; ext2load mmc 0:1 0x10400000 /boot/uImage; bootm
U-Boot> askenv bootargs
Please enter 'bootargs':console=ttyS0 root=/dev/mmcblk0p1 fbmem=600k rootwait
U-Boot> boot

 

A fenti parancsokat beírva az SD kártyán lévő /boot/uImage kernellel bebootol. Ez a trükk akkor is működik, ha behalt a deszkán lévő kernel.

Letöröljük a NAND flashek tartalmát:

~# flash_eraseall /dev/mtd3 
~# flash_eraseall /dev/mtd1

 

Majd rátöltjük a root & usr image fájlokat:

~# dd if=/ngw_jffs2_root.img of=/dev/mtd1 bs=1024
~# dd if=/ngw_jffs2_usr.img of=/dev/mtd3 bs=1056

 

 Ha valami oknál fogva elállítódott volna az U-boot beállítása és nem a belső nand flashről akarna bootolni, a következő parancsokkal lehet rendesen beállítani:

U-Boot> setenv bootcmd 'fsload boot/uImage;bootm'
U-Boot> saveenv
U-Boot> boot
 

 Ha azt szeretnénk, hogy alapértelmezetten az sd kártyáról bootoljon, akkor a következő parancsok kellenek:

U-boot> askenv bootcmd
Please enter 'bootcmd': mmcinit; ext2load mmc 0:1 0x10300000 /uImage; bootm 0x10300000
U-boot> set bootargs 'console=ttyS0 root=/dev/mmcblk0p1 rootwait'
U-boot> saveenv

 

 

 Hasznos linkek a témában:

U-boot command reference

 

Címkék