Hammer How to Reflash Apex and kernel
These instructions assume that APEX has been configured for a 1024k kernel region
Flashing a new kernel (zImage)
You'll find the zImage file in the linux-2.6.22/arch/arm/boot directory.
apex> xr 0x30008000 <=== This is the address that the flash base kernel is copied to by apex on powerup> < send zImage via xmodem> apex> erase nor:256k+1024k apex> copy 0x30008000+1024k nor:256k 1048576 bytes transferred apex> boot <this will boot the newly flashed kernel with the existing rootfs>
Flashing a new rootfs
You'll find the rootfs.arm.ext2.gz file in the buildroot/binaries/Hammer directory.
apex> xr 0x30800000 <=== This is the address that the flash base rootfs is copied to by apex on powerup> <send rootfs.arm.ext2.gz via xmodem> apex> erase nor:1280k+1024k apex> copy 0x30800000+1024k nor:1280k 1048576 bytes transferred apex> boot <this will boot the existing kernel with the newly flashed rootfs>
apex> xr 0x30008000 < send apex.bin via xmodem> apex> erase nor:0x00+256k <<<yes this is correct, the 256k is intended to erase the entire block! apex> copy 0x30008000+128k nor:0x00 131072 bytes transferred
then press reset to run the newly flashed apex, do not type boot
Notes on Using Minicom XMODEM
After typing the rx 0x30008000 command in the apex shell running Ctrl+A , S and using xmodem on minicom had to be done quickly. Best bet is to copy the path of the file into a clipboard and paste it. Otherwise type your path as fast as you can. I am not sure why it has this issue, may be an apex timeout on its rx command. Not Sure. But if you encounter that error just retry.