RedBoot provides three basic classes of commands:
Program loading and execution
Flash image and configuration management
Miscellaneous commands
The basic format for commands is:
RedBoot> COMMAND [-S]... [-s val]... operand |
Commands may require additional information beyond the basic command name. In most cases this additional information is optional, with suitable default values provided if they are not present.
Format | Description | Example |
---|---|---|
-S | A boolean switch; the behavior of the command will differ, depending on the presence of the switch. In this example, the -f switch indicates that a complete initialization of the FIS data should be performed. There may be many such switches available for any given command and any or all of them may be present, in any order. | RedBoot> fis init -f |
-s val | A qualified value; the letter "s" introduces the value, qualifying it's meaning. In the example, -b 0x100000 specifies where the memory dump should begin. There may be many such switches available for any given command and any or all of them may be present, in any order. | RedBoot> dump -b 0x100000 -l 0x20 |
operand | A simple value; some commands require a single parameter for which an additional -X switch would be redundant. In the example, JFFS2 is the name of a flash image. The image name is always required, thus is no need to qualify it with a switch. Note that any un-qualified operand must always appear at the end of the command. | RedBoot> fis delete JFFS2 |
The list of available commands, and their syntax, can be obtained by typing help at the command line:
RedBoot> help Manage aliases kept in FLASH memory alias name [value] Set/Query the system console baud rate baudrate [-b <rate>] Manage machine caches cache [ON | OFF] Display/switch console channel channel [-1|<channel number>] Display disk partitions disks Display (hex dump) a range of memory dump -b <location> [-l <length>] [-s] 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>] [-c] [-n] [entry] Help about help? help [<topic>] Set/change IP addresses ip_address [-l <local_ip_address>[/<mask_length>]] [-h <server_address>] Load a file load [-r] [-v] [-d] [-c <channel>] [-h <host>] [-m {TFTP | HTTP | {x|y}MODEM | disk}] [-b <base_address>] <file_name> Network connectivity test ping [-v] [-n <count>] [-t <timeout>] [-i <IP_addr] -h <host> Reset the system reset Display RedBoot version information version Display (hex dump) a range of memory x -b <location> [-l <length>] [-s] |
Commands can be abbreviated to their shortest unique string. Thus in the list above, d,du,dum and dump are all valid for the dump command. The fconfig command can be abbreviated fc, but f would be ambiguous with fis.
There is one additional, special command. When RedBoot detects '$' or '+' (unless escaped via '\') in a command, it switches to GDB protocol mode. At this point, the eCos GDB stubs take over, allowing connections from a GDB host. The only way to get back to RedBoot from GDB mode is to restart the platform.
NOTE: Multiple commands may be entered on a single line, separated by the semi-colon “;” character.
The standard RedBoot command set is structured around the bootstrap environment. These commands are designed to be simple to use and remember, while still providing sufficient power and flexibility to be useful. No attempt has been made to render RedBoot as the end-all product. As such, things such as the debug environment are left to other modules, such as GDB stubs, which are typically included in RedBoot.
The command set may be also be extended on a platform basis.