1 SNAPGEAR ESS710 Disk-On-Chip
2 ----------------------------
4 These instructions document how to use the OCdemon debugger (with
5 ARM 20pin JTAG header) to program the Disk-On-Chip of the ESS710
11 Using OCdemon package, setup with appropriate .gdbinit script.
12 (Use new-wave/tools/misc/ess710.gdb).
14 Firstly make sure you have the lp drivers loaded, and then load
22 (Ignore the ocdemonpp load warnings).
24 Now startup the process demon, and start gdb:
26 OcdLibRemote -c XSCALE-IXP &
29 This should bring you up to the gdb prompt with no errors.
30 (I had to use the xscale-elf-gdb binary from the Macraigor tool chain
31 for this to really work properly. Not sure how there is better of
32 different, but some things just don't work right if you use arm-elf-gdb).
35 1. FLASHING IPL (Initial Program Loader)
37 Inside gdb run the following command:
41 It will initialize ram and load the modified boot loader programmer
42 into RAM, and then program the IPL (~/boot/ixp425/boot.elf) into the
43 special IPL sector of the DoC.
45 It issues progress ouput on the serial console at 11500 baud, so if
46 you have that attached you will know when it is done.
48 Note: this steps erases some of the normal boot loader sectors to
49 calculate its internal CRC, so you should always do this step first.
52 2. FLASHING BOOT LOADER
54 Inside gdb run the following command:
58 It will initialize ram and load the modified boot loader programmer
59 into RAM, and then program the SnapGear Boot Loader.
61 It issues progress ouput on the serial console at 11500 baud, so if
62 you have that attached you will know when it is done.
64 The boot loader is now installed.
67 3. BOOTING FIRST LINUX
69 From now on we use Linux to do the rest of the hard work.
71 Power reset the ESS710 (you must power reset at this point) and get to
72 the SnapGear boot loader recovery prompt. Choose to do a network load.
73 This will start up the Redboot debugger. Be patient it is slow to start,
74 takes about 30 seconds to get to the command prompt.
76 Issue the following commands, loading a ESS710-Recover image:
78 load -r -v -b 0x01600000 zImage
79 load -r -v -b 0x00800000 ramdisk.gz
82 Linux will boot after this (running completely from RAM).
87 If this is an un-formated DoC then you need to NFTL format it first.
91 nftl_format -b /dev/mtd0 229376
93 (We start 229376 bytes, 224k, offset into the device to skip over the
94 reserved factory blocks [3] and leave 128k for our boot loader).
96 You will need to reboot after doing this. The Linux NFTL drivers only
97 parse the DoC contents at first init.
99 Now use netflash to program in the image:
101 netflash -i -r /dev/nftla <TFTP-SERVER> image.bin
103 When done it should reboot, and run completely from flash.
106 5. REFLASHING THE BOOT LOADER
108 Once you have a working system, you can reprogram the boot loader
109 without using the OCdemon debugger. 'make romfs' places the boot
110 loader in the /boot directory, so to flash the boot loader:
113 doc_loadbios /dev/mtd0 biosplus.bin 98304
114 doc_loadipl -e 98304 /dev/mtd0 bootplus.bin
116 Note: biosplus.bin also contains bootplus.bin, and doc_loadipl
117 relies on this to calculate the ECC for bootplus.bin. This means
118 you must always run doc_loadbios before running doc_loadipl.