RedBoot "hacking" page
RedBoot is default configured for an ep80219 board with a e100 nic. This redboot will crash when you try to do network stuff with it. A secondary redboot is available on flash for rammode, and this one does have e1000 support, but it uses the same bootscript and settings as the ROM mode ep80219 redboot. So I am not sure if I can discriminate the bootp flag for rom and ram mode. (rom mode crashes, and ram mode works). But redboot can discriminate between rom and ram mode in the bootscript. So if you want to do network stuff: put this in your bootscript:
{ROM}fis load rammode
{ROM}g
{RAM}ip_address -l 192.168.0.101 -h 192.168.0.148
So: Prefix everything with {RAM} and let the {ROM} part as is. The ROM mode will run the {ROM} lines, and RAM mode will run the {RAM} lines. Next part of course is the load command. Well, see elsewhere for that.
Some RedBoot ROM-mode stuff:
+No network interfaces found
EM-7210 ver.T04 2005-12-12 (For ver.AA)
== Executing boot script in 10.000 seconds - enter ^C to abort
^C
RedBoot> fis list
Name FLASH addr Mem addr Length Entry point
RedBoot 0xF0000000 0xF0000000 0x00040000 0x00000000
RedBoot config 0xF1FC0000 0xF1FC0000 0x00001000 0x00000000
FIS directory 0xF1FE0000 0xF1FE0000 0x00020000 0x00000000
rammode 0xF0060000 0x00200000 0x00040000 0x00200000
log 0xF0040000 0xF0040000 0x00020000 0x00000000
naskey 0xF00A0000 0xF00A0000 0x00020000 0x01008000
zImage 0xF00C0000 0x01008000 0x00200000 0x01008000
ramdisk.gz 0xF02C0000 0x01800000 0x00400000 0x01800000
vendor 0xF06C0000 0xF06C0000 0x01880000 0x01800000
wmdata 0xF1F40000 0xF1F40000 0x00080000 0x01800000
RedBoot> help
Manage aliases kept in FLASH memory
alias name [value]
Set/Query the system console baud rate
baudrate [-b <rate>]
Execute a BSD boot image
bexec [-w timeout] [-c "kernel command line"] [<entry_point>]
Manage machine caches
cache [ON | OFF]
Manage compact flash devices
cf {cmds}
Display/switch console channel
channel [-1|<channel number>]
Compute a 32bit checksum [POSIX algorithm] for a range of memory
cksum -b <location> -l <length>
Display (hex dump) a range of memory
dump -b <location> [-l <length>] [-s] [-1|2|4]
Execute an image - with MMU off
exec [-w timeout] [-b <load addr> [-l <length>]]
[-r <ramdisk addr> [-s <ramdisk length>]]
[-c "kernel command line"] [<entry_point>]
Manage FLASH images
fis {cmds}
Manage configuration kept in FLASH memory
fconfig [-i] [-l] [-n] [-f] [-d] | [-d] nickname [value]
Execute code at a location
go [-w <timeout>] [entry]
Run board diagnostics
diag
Help about help?
help [<topic>]
Display command history
history
Set/change IP addresses
ip_address [-l <local_ip_address>] [-h <server_address>]
Load a file
load [-r] [-v] [-d] [-h <host>] [-m <varies>] [-c <channel_number>]
[-b <base_address>] <file_name>
Compare two blocks of memory
mcmp -s <location> -d <location> -l <length> [-1|-2|-4]
Copy memory from one address to another
mcopy -s <location> -d <location> -l <length> [-1|-2|-4]
Fill a block of memory with a pattern
mfill -b <location> -l <length> -p <pattern> [-1|-2|-4]
Network connectivity test
ping [-v] [-n <count>] [-l <length>] [-t <timeout>] [-r <rate>]
[-i <IP_addr>] -h <IP_addr>
Reset the system
reset
Read RTC timer
rtc
Display RedBoot version information
version
Display (hex dump) a range of memory
x -b <location> [-l <length>] [-s] [-1|2|4]
RedBoot> fconfig -l -n
boot_script: true
boot_script_data:
.. fis load ramdisk.gz
.. fis load zImage
.. exec
boot_script_timeout: 10
bootp: false
bootp_my_gateway_ip: 10.9.9.1
bootp_my_ip: 10.9.9.1
bootp_my_ip_mask: 255.255.255.0
bootp_server_ip: 10.9.9.10
console_baud_rate: 115200
dns_ip: 0.0.0.0
gdb_port: 9000
info_console_force: false
net_debug: false
RedBoot> diag
Entering Hardware Diagnostics - Disabling Data Cache!
Lanner Hardware Tests
1 - Memory Tests
2 - Repeating Memory Tests
3 - Repeat-On-Fail Memory Test
4 - Timer Test
5 - CPU Cache Loop (No return)
6 - Basic Sanity Test
7 - GPIO0 (Shutdown) Test
8 - GPIO1 (System statu LED) Test
9 - GPIO2 (Global disk LED) Test
10 - GPIO4&5 (Reset button, Power button, loop) Test
0 - quit
Enter the menu item number (0 to quit): 6
Timer test. Dots should appear at 1 second intervals:
....................
Testing memory from 0x0002cd40 to 0x0ffd1000.
Walking 1's test: passed
32-bit address test: passed
32-bit address bar test: passed
8-bit address test: passed
Byte address bar test: passed
Walking 1's test: passed
32-bit address test: passed
32-bit address bar test: passed
8-bit address test: passed
Byte address bar test: passed
Walking 1's test: passed
32-bit address test: passed
32-bit address bar test: passed
8-bit address test: passed
Byte address bar test: passed
Walking 1's test: passed
Byte address bar test: passed... Unlock from 0xf0040000-0xf0060000: .
... Erase from 0xf0040000-0xf0060000: .
... Program from 0x0000afe6-0x0000b04a at 0xf0040000: .
Memory test done.
(GPIO1) System status LED is blinking...
(GPIO2) Global disk LED is blinking...
Lanner Hardware Tests
1 - Memory Tests
2 - Repeating Memory Tests
3 - Repeat-On-Fail Memory Test
4 - Timer Test
5 - CPU Cache Loop (No return)
6 - Basic Sanity Test
7 - GPIO0 (Shutdown) Test
8 - GPIO1 (System statu LED) Test
9 - GPIO2 (Global disk LED) Test
10 - GPIO4&5 (Reset button, Power button, loop) Test
0 - quit
Enter the menu item number (0 to quit): ^C
Exiting Hardware Diagnostics!
RedBoot> fis load rammode
RedBoot> g
+Ethernet eth0: MAC address 00:0e:0c:b0:68:36
IP: 10.9.9.1/255.255.255.0, Gateway: 10.9.9.1
Default server: 10.9.9.10, DNS server IP: 0.0.0.0
EM-7210 (RAM mode) 2005-12-22
