Thursday, July 29, 2010

upgrading firmware over PXE

Follow the earlier trick: use memdisk kernel to boot legacy stuff.

Grab firmware.exe

$rar x firmware.exe


1. go to freedos, get fdboot.img and customize it

http://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/distributions/1.0/

1A. Now your directory structure should look like this - after you place the fdboot.img and M610 CPLD code in the right places:



2.#mkdir -p freedos/fdimg

2A.Now your directory structure should look like this - after you place the fdboot.img and M610 CPLD code in the right places:

# tree freedos/
freedos/
|-- firmware.exe
|-- fdboot.img
`-- fdimg
3.#mount -t msdos -o loop fdboot.img fdimg/
4. #cd fdimg/; ls
command.com driver fdconfig.sys freedos kernel.sys
5. cp -a flash_bah.exe flash_bah.jed fdimg/
6. Modify the fdauto.bat so it calls the update
# vi fdimg/freedos/fdauto.bat

This is what the last 3 lines will look like

echo
a:\flash_bah -force
:END

7. Unmount the image and rename it

# umount fdimg/
# mv fdboot.img flash.img


8. pxelinux.cfg/default

Label flashupdate
kernel memdisk
append initrd=Updates/flash.img



You can do it by default, or node by node in which case, with MAC
"01-00-1e-4e-1c-a8-88"

Most of the stuff is from here and here

1 comment:

blaoism said...

Peter, I updated it with where I got it from. This is not a really blog site per se. Just my notes of sorts as it is easy to locate here than, say, from my notes, which I gonna miss once my gig is over.